Content
Podrá transferir datos entre servicios sin la ayuda de programadores.
Obtenga más información sobre la integración a través de Zapier
Puede obtener la lista de pedidos del cliente solicitando una consulta al servicio API utilizando métodos de software.
Su sistema recibirá una lista de productos en los pedidos como respuesta, dependiendo del estado especificado además de sus números. Si no se especifica el estado, recibirá todos los pedidos.
La consulta se envía mediante el método POST en formato URLencode a la dirección: https://username.soloclic.com/api/GetBills.
Donde username es el inicio de sesión del usuario en el sistema, así como su dominio de tercer nivel en el servicio SoloClic.
Parámetros transferidos en la consulta
- email es el correo electrónico del cliente, del que necesita recibir una lista de pedidos y productos (obligatorio).
- pay_status es el estado del pedido: paid – pagado, waiting – esperado, cancel – cancelado. Attention! Si no se especifica este parámetro, se muestran todos los pedidos.
El único campo obligatorio es el campo de correo electrónico.
¿Como funciona?
Transfiere el correo electrónico del cliente a la función de API GetBills.
Su sistema recibirá el resultado de la función que se realiza y la matriz de datos de pedidos con los productos adjuntos en la matriz de pedidos en la variable de resultado en respuesta.
La matriz de datos tendrá el siguiente aspecto:
$resp->result = array ( [№ 1 orden] => array ( [código de producto] => array ( [good_name] => ID del producto 1 [good_title] => Nombre del producto 1 ) ) ) [№ 2 orden] => array ( [código de producto] => array ( [good_name] => ID del producto 2 [good_title] => Nombre del producto 2 ) [código de producto] => array ( [good_name] => ID del producto 3 [good_title] => Nombre del producto 3 ) ) )
Por ejemplo, lista de compras:
array ( [258367] => array ( [12549] => array ( [good_name] => pago [good_title] => pago por entrenamiento ) ) [258368] => array ( [13011] => array ( [good_name] => ventas [good_title] => ventas en cines ) [28363] => array ( [good_name] => 222 [good_title] => 222 caminos ) ) )
Su sistema recibirá el resultado de la función en formato JSON como respuesta. Para obtener más detalles, consulte la Estados, Códigos y Descripciones de respuesta de API.
Ejemplo de obtención de la lista de pedidos y productos en PHP
En el ejemplo, estamos buscando todos los pedidos del cliente con el correo electrónico [email protected]. Su nombre de usuario en el sistema es «username».
La función GetHash forma el hash de los datos transferidos.
La función CheckHash comprueba el hash de la respuesta del servicio.
// Inicie sesión en el sistema SoloClic $user_rs['user_id'] = 'username'; // La clave para formar un hash. Consulte la sección de API (el enlace en la esquina inferior derecha de la cuenta personal) $user_rs['user_rps_key'] = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; // Formamos una matriz de datos para transferir a la API $send_data['email'] = '[email protected]'; // correo electrónico del cliente para el que recibimos una lista de compras $send_data['pay_status'] = 'paid'; // estado del orden: paid - pagado, waiting - pendiente, cancel - cancelado. // Formamos una firma para los datos transmitidos $send_data['hash'] = GetHash($send_data, $user_rs); // Llamamos a la función para recibir una lista de productos comprados por correo electrónico del cliente y decodificar los datos recibidos $resp = json_decode(Send('https://username.soloclic.com/api/GetBills', $send_data)); // check the service response if(!CheckHash($resp, $user_rs)){ echo "¡Error! ¡El hash no es correcto!"; print_r($resp); exit; } if($resp->error_code == 0){ echo "Lista de la compra:"; print_r($resp->result); } else echo "Código de error: {$resp->error_code} - descripción: {$resp->error_text}"; // =========== Funciones para enviar, recibir y procesar una respuesta ============ // Enviar una solicitud a la API del servicio function Send($url, $data) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // emitimos la respuesta a una variable $res = curl_exec($ch); curl_close($ch); return $res; } // Forma el hash function GetHash($params, $user_rs) { $params = http_build_query($params); $user_id = $user_rs['user_id']; $secret = $user_rs['user_rps_key']; $params = "$params::$user_id::$secret"; return md5($params); } // Revisa el hash function CheckHash($resp, $user_rs) { $secret = $user_rs['user_rps_key']; $code = $resp->error_code; $text = $resp->error_text; $hash = md5("$code::$text::$secret"); if($hash == $resp->hash) return true; // el hash es correcto else return false; // el hash no es correcto }