API REFERENCE
QR Code Payment
For in-store payments
Tip
Display the returned url (or a QR code generated from the url) and the icons of the available payment methods to the customer.
| Parameter | Type | Description | Required |
|---|---|---|---|
| user | String | Cashier account UID | Required |
| sign | String | Signature | Required |
| method | String | v3.QRcodePayment | Required |
| time | Long | Timestamp | Required |
- Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| pay_method | String | offline | Required |
| sub_pay_method | String | QRcode | Required |
| order_id | String | Merchant order ID | Required |
| amount | String | Amount as a numeric string. For example, enter 24.99 for € 24.99. CNY amount >=1; EUR amount >=0.1. | Required |
| tip_amount | String | Tip included in the total amount, as a numeric string; for example 1.02 | Optional |
| currency | String | ISO 4217 currency code, for example EUR or CHF | Required |
| description | String | Order description | Required |
| demo | String | Custom field | Optional |
| timeout | String | Expiration time in minutes (0-1440) | Required |
| redirect_url | String | Redirect URL after payment | Optional |
| notify_url | String | Asynchronous notification URL after payment | Required |
Signature example:
Sorted parameters concatenated into a URL-style query string
"amount=12.1¤cy=EUR&demo=test&description=YabandPay test&method=v3.QRcodePayment¬ify_url=https://www.yabandpay.com/notify&order_id=202486556498441613&pay_method=offline&redirect_url=https://www.yabandpay.com&sub_pay_method=QRcode&time=1555498137&timeout=0&tip_amount=0.5&user=YOUR_CASHIER_UID"
Sign stringA using secret_key
The resulting signature is:
"YOUR_SIGNATURE"
Request example:
{
"user": "YOUR_CASHIER_UID",
"sign": "YOUR_SIGNATURE",
"method": "v3.QRcodePayment",
"time": 1555498137,
"data": {
"amount": "12.1",
"currency": "EUR",
"tip_amount": "0.5",
"demo": "test",
"description": "YabandPay test",
"notify_url": "https://www.yabandpay.com/notify",
"order_id": "YOUR_ORDER_ID",
"pay_method": "offline",
"redirect_url": "https://www.yabandpay.com",
"sub_pay_method": "QRcode",
"timeout": "0"
}
}
Response example:
{
"status": true,
"code": "200",
"data": {
"order_id": "YOUR_ORDER_ID",
"trade_id": "4552eeea-1ae8-1e40-3b4b-802dc2f5686a",
"amount": "12",
"currency": "EUR",
"tip_amount": "0.5",
"url": "https://pay.yabandpay.com/payments/selectpay/order/ODlmYmYyMzQtN2U1Yy00ZDI5LTM5NWMtNGI4NzljYjI4MDlj",
"available_payment_methods": "Alipay+, Wechat Pay, iDEAL, UnionPay, QuickPass, Bancontact, Visa, Mastercard, ApplePay, GooglePay",
"state": "processing"
},
"message": ""}
Additional information:
Response result:
-
A successful request returns "status": true.
-
A failed request returns "status": false.
We strongly recommend using both Query Order and Asynchronous Notifications to keep payment statuses accurate and up to date.
Response codes:
| Status | Code | Message |
|---|---|---|
| true | 200 | Success |
| false | -1000 | Internal error |
| false | -3001 | Required field is missing |
| false | -403 | The signature Error |
| false | -4011 | Not support the payment method |
