To integrate with other services and applications, we recommend setting up integration via Zapier.
You will be able to transfer data between services without the help of programmers.
Learn more about integration via Zapier

We recommend you to use the new getOrderDetails function instead of this one.

You can get the detailed order information by its ID by requesting a query to the API service using software methods.

The query is sent by the POST method in the URLencode format to the address: http://username.justclick.io/api/GetOrderInfo.

Where username is the login of the user in the system, as well as their domain of the third level in the JustClick service.

Your system will receive the order information in response.

Parameters Transferred in the Query

The method can contain:

bill_id - (int) invoice ID (required)

How Does It Work?

You call getOrderInfo API function. Your system will receive the result of the function performing and the data array in the result variable in response.

The data array will look as follows:

stdClass Object (
[id] => invoice number,
[first_name] => name
[last_name] => surname
[middle_name] => middle name
[email] => email
[phone] => telephone number
[city] => city
[country] => country
[address] => address
[region] => region
[postalcode] => postal code
[created] => date of creating the invoice
[pay_status] => invoice status
[paid] => date of paying the invoice
[type] => order type
[payway] => method of payment
[comment] => comment on the invoice
[domain] => order domain
[link] => link to paying for the order page
[good_count] => the number of products in the order
[price] => product price
[bill_sum_topay] => left to pay
[tag] => tag
[kupon] => used coupon
[utm] => stdClass Object
(
[medium] => channel utm-parameter (if exists)
 => source utm-parameter (if exists)
[campaign] => campaign utm-parameter (if exists)
[content] => advertisement utm-parameter (if exists)
[term] => key utm-parameter (if exists)
[price] => the product price
)
)

The response is coded in JSON format. For more details, see the API Service Responses.

If you transferred the bill_domain parameter to the CreateOrder function, the variable $resr->result[‘link’]will contain the full link for payment in the http://your-domain.com/bill/… format after the response. You can use it like that, for example :

header("Location: " . $resp->result['link']);

If you didn’t transfer the bill_domain parameter to the CreateOrder function, add the protocol and domain to the link after the response:

header("Location: http://your-domain.com" . $resp->result['link']);

Example Of Getting the Invoice Information In PHP

In the example, we get the order 102937 information.

GetHash Function forms the hash to the transferred data.

CheckHash Function checks the hash to the service response.

// Login to the JustClick system
$user_rs['user_id'] = 'username';
// The key for forming a hash. See API section (the link in the bottom right corner of the personal account)
$user_rs['user_rps_key'] = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';

// Forming the array of bought goods for transferring to the API
$send_data = array(
	'bill_id' => '102937', // order ID
);

// Forming the hash to the transmitted data
$send_data['hash'] = GetHash($send_data, $user_rs);

// Calling the getOrderInfo function and decoding the received data
$resp = json_decode(Send('http://username.justclick.io/api/GetOrderInfo', $send_data));

// Checking the service response
if(!CheckHash($resp, $user_rs)){
	echo "Error! The response hash is not true!" ; print_r($resp);
	exit;
}

if($resp->error_code == 0){
	echo “The order information”;
	print_r($resp->result);
}
else
	echo "Error code{$resp->error_code} - description: {$resp->error_text}";

// =========== Functions of sending, receiving and processing a response ============

// Sending the query to the  API service
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); // outputting the response to the variable

	$res = curl_exec($ch);

	curl_close($ch);
	return $res;
}

// Forming the transferred to the API data 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);
}

// Checking the received response 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; // the hash is correct
	else
		return false; // the hash is not correct
}

Rate article

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