Para integrarse con otros servicios y aplicaciones, recomendamos configurar la integración a través de Zapier.
Podrá transferir datos entre servicios sin la ayuda de programadores.
Obtenga más información sobre la integración a través de Zapier

Le recomendamos que utilice la nueva función getOrdersWithGoods en lugar de esta.

Puede obtener la lista de pedidos del cliente solicitando una consulta al servicio API utilizando métodos de software.

Su sistema recibirá la información del pedido en respuesta.

La consulta se envía mediante el método POST en formato URLencode a la dirección: https://username.soloclic.com/api/GetOrders.

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

Puede transferir los filtros de la siguiente manera:

date_s - Fecha "Desde" en formato de hora Unix
date_e - Fecha "Hasta" en formato de hora Unix
paid   - (bool) solo pedidos pagados
goods  - (string or array) ID de productos

¿Como funciona?

Llamas a la función de API GetOrders.

Su sistema recibirá el resultado de la función que se realiza y una matriz con datos de orden en la variable de resultado como respuesta.

La matriz de datos tendrá el siguiente aspecto:

Array (
[0] => stdClass Object(
[id] => Número de orden,
[first_name] => nombre
[last_name] => apellido
[middle_name] => segundo nombre
[email] => correo electrónico
[phone] => número de teléfono
[city] => ciudad
[country] => país
[address] => habla a
[region] => región
[postalcode] => código postal
[created] => fecha de creación de la factura
[pay_status] => Estado de la factura
[paid] => fecha de pago de la factura
[type] => tipo de orden
[payway] => método de pago
[comment] => comentar la factura
[domain] => orden de dominio
[link] => enlace para pagar la página del pedido
[utm] => stdClass Object
(
[medium] => parámetro utm del canal (si existe)
 => parámetro utm de origen (si existe)
[campaign] => parámetro utm de campaña (si existe)
[content] => anuncio utm-parámetro (si existe)
[term] => parámetro utm clave (si existe)
)
[price] => precio del producto
)
)

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 cómo obtener la lista de pedidos en PHP

En el ejemplo, obtenemos la información para el número de pedido 102937.

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 API (el enlace en la esquina inferior derecha de la cuenta personal)
$user_rs['user_rps_key'] = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';

// Formando la matriz de datos para transferir a la API
$send_data = array(
    'date_s' => strtotime('...'),
    'date_e' => strtotime('...'),
    'paid' => true, //or false
    'goods' => array(1, 2, 3)
);

// Formando el hash a los datos transmitidos
$send_data['hash'] = GetHash($send_data, $user_rs);

// Llamar a la función GetOrders y decodificar los datos recibidos
$resp = json_decode(Send('https://username.soloclic.com/api/GetOrders', $send_data));

// Verificando la respuesta del servicio
if(!CheckHash($resp, $user_rs)){
	echo "¡Error! ¡El hash de respuesta no es cierto!" ; print_r($resp);
	exit;
}

if($resp->error_code == 0){
	echo "Información del pedido";
	print_r($resp->result);
}
else
	echo "Código de error: {$resp->error_code} - descripción: {$resp->error_text}";

// ===========  Funciones de enviar, recibir y procesar una respuesta ============

// Envío de la consulta al servicio API
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); // dando salida a la respuesta a la variable

	$res = curl_exec($ch);

	curl_close($ch);
	return $res;
}

// Formando el hash de datos transferidos a la API
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);
}

// Comprobación del hash de respuesta recibido
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
}

Rate article

1 star2 stars3 stars4 stars5 stars (No votes)
Cargando...