$liqpay = new LiqPay($public_key, $private_key);
$html = $liqpay->cnb_form(array(
'action' => 'pay',
'amount' => '1',
'currency' => 'USD',
'description' => 'description text',
'order_id' => 'order_id_1',
'version' => '3'
));
Payment widget options
data | Required | String | json string with APIs parameters is encoded by the base64_encode( json_string ) function , where base64_encode – returns a string encoded by the base64 method |
signature | Required | String | Unique signature of each request base64_encode( sha1( private_key + data + private_key) ) , where sha1 is a returned hash in the form of a binary string of 20 characters . |
embedTo | Optional | String | The element on the HTML page in which the widget will be displayed |
mode | Optional | String | Widget display mode on the site . Possible values : embed – built-in window , popup – pop-up window on your site . |
language | Optional | String | Widget display language ru , uk , en . |
<div id="liqpay_checkout"></div>
<script>
window.LiqPayCheckoutCallback = function() {
LiqPayCheckout.init({
data: "eyAidmVyc2lvbiIgOiAzLCAicHVibGljX2tleSIgOiAieW91cl9wdWJsaWNfa2V5IiwgImFjdGlv" +
"biIgOiAicGF5IiwgImFtb3VudCIgOiAxLCAiY3VycmVuY3kiIDogIlVTRCIsICJkZXNjcmlwdGlv" +
"biIgOiAiZGVzY3JpcHRpb24gdGV4dCIsICJvcmRlcl9pZCIgOiAib3JkZXJfaWRfMSIgfQ==",
signature: "QvJD5u9Fg55PCx/Hdz6lzWtYwcI=",
embedTo: "#liqpay_checkout",
language: "ru",
mode: "embed" // embed || popup
}).on("liqpay.callback", function(data){
console.log(data.status);
console.log(data);
}).on("liqpay.ready", function(data){
// ready
}).on("liqpay.close", function(data){
// close
});
};
</script>
<script src="//static.liqpay.ua/libjs/checkout.js" async></script>
Parameters for forming data :
The main ones
Parameters | Required | Type | Description |
---|---|---|---|
version | Required | Number | API version. The current value is 3 |
public_key | Required | String | The public key is the store identifier. You can get the key in the store settings |
action | Required | String | Type of operation. Possible values : pay – payment , hold – blocking funds on the sender’s account , subscribe – regular payment , paydonate – donation , auth – pre- authorization of the card |
amount | Required | Number | Payment amount. For example : 5 , 7.34 |
currency | Required | String | Payment currency. Possible values : USD , EUR , UAH |
description | Required | String | Purpose of payment . |
order_id | Required | String | Unique purchase ID in your store. The maximum length is 255 characters . |
expired_date | Optional | String | The time by which the client can pay the bill in UTC . Transmitted in 2016-04-24 00:00:00 format |
language | Optional | String | Client language ru , uk , en |
paytypes | Optional | String | The parameter that transmits the payment methods that will be displayed at the checkout. Possible values apay – payment using Apple Pay , gpay – payment using Google Pay , card – payment by card , liqpay – through the liqpay account , privat24 – through the privat24 account , masterpass – through the masterpass account , moment_part – installment , cash – cash , invoice – bill to e-mail , qr – QR code scanning. If the parameter is not passed, then the store settings, Checkout tab are applied . |
result_url | Optional | String | The URL in your store to which the buyer will be redirected after completing the purchase. The maximum length is 510 characters . |
server_url | Optional | String | API URL in your store for notifications about the change of payment status ( server -> server ). The maximum length is 510 characters . More details |
verifycode | Optional | String | A possible value of Y . Dynamic verification code, generated and returned in Callback . Similarly, the generated code will be transferred in the verification transaction for display in the client’s card statement. Works for action = auth . |
Payment splitting options
split_rules | Optional | String | Payment with splitting the amount to several recipients. This parameter specifies a JSON array with payment splitting rules. When using the split_rules parameter, there is one debit from the client and several credits to the recipients. The acquiring fee is charged to each store in the split_rules array . Example JSON string : |
Payment with splitting the amount to several recipients. This parameter specifies a JSON array with payment splitting rules. When using the split_rules parameter, there is one debit from the client and several credits to the recipients. The acquiring fee is charged to each store in the split_rules array . Example JSON string
[
{
"public_key": "i000000001",
"amount": 1,
"commission_payer": "sender",
"server_url": "https://server1/callback"
},
{
"public_key": "i000000002",
"amount": 2,
"commission_payer": "receiver",
"server_url": "https://server2/callback"
}
]
Sender settings
sender_address NEW | Optional | String | Sender’s address |
sender_city | Optional | String | Sender’s city |
sender_country_code | Optional | String | Country code of the sender. Digital ISO 3166-1 code |
sender_first_name | Optional | String | Name of the sender |
sender_last_name | Optional | String | Sender’s last name |
sender_postal_code | Optional | String | Postal code of the sender |
Secure payment options
letter_of_credit | Optional | String | To enable the acceptance of payments by letter of credit, pass the parameter with the value 1 |
letter_of_credit_date | Optional | String | Letter of credit expiration date in the following format : 2015-03-31 00:00:00 UTC . |
Regular payment options
subscribe | Optional | String | Regular payment. Possible values : 1 |
subscribe_date_start | Optional | String | Date of first payment. The time must be specified in the following format : 2015-03-31 00:00:00 UTC . If an expired date is specified, the subscription will be activated from the current date of receipt of the request |
subscribe_periodicity | Optional | String | Periodicity of withdrawal of funds. Possible values : month – once a month year – once a year |
Options for payment in 1 click
customer | Optional | String | The unique identifier of the client on the merchant’s website. When transferring the parameter, LiqPay remembers the client’s payment details and his identifier – further payment can be made in 1 click. The maximum length is 100 characters . ( When using the parameter for <b>Masterpass 1 click</b>, the valid phone number of the payer is transferred in this field ) |
recurringbytoken | Optional | String | Allows you to generate the payer’s card_token , which you will receive in the callback request to server_url . card_token allows you to make payments without entering the details of the payer’s card, using the token payment API – that is, in 1 click. To receive a card_token , you must pass the following values in the request : 1 |
customer_user_id | Optional | String | User ID in the merchant system, transmitted at each user payment (must not match customer , used for payment using the <b>Masterpass 1 click</b> wallet ) |
Other parameters
dae | Optional | String | Long entry Detail Addenda . The dae parameter is a JSON string to which the base64 function has been applied . JSON can contain the following parameters : |
{
"airLine": "Avia", // абревіатура авіакомпанії, max 4 символів.
"ticketNumber": "ACSFD12354SA", // номер квитка, max 15 символів.
"passengerName": "John Doe", // ім'я пасажира, max 29 символів.
"flightNumber": "742", // номер рейсу, max 5 цифр.
"originCity": "DP", // код міста/аеропорту вильоту, max 5 символів.
"destinationCity": "NY", // код міста/аеропорту призначення, max 5 символів.
"departureDate": "100514" // дата вильоту в форматі YYMMDD, max 6 цифр.
}