API REFERENCE
Apple Pay
For payment flows supporting Apple Pay
This payment method launches Apple Pay and must be integrated into the merchant’s App or website. The customer completes payment on an iOS device.
1. How it works
Apple Pay uses device-specific tokenized credit or debit card credentials (DPAN) instead of the primary account number (PAN). When the customer confirms payment using Face ID, Touch ID, or a passcode, the tokenized card data is returned to your App or website. The token can then be sent to your payment service provider (PSP) and processed like a standard online credit or debit card payment.
All transaction types that YabandPay currently supports for standard debit and credit cards, including refunds, can also use Apple Pay. Apple Pay is available in Apps and Safari on Apple devices running iOS, watchOS, and iPadOS, and in Safari on MacOS devices.
2. Apple Pay integration
You can integrate Apple Pay into an App or website. Implement the Apple API to check whether Apple Pay is available as a payment method:
• Integrate the PassKit SDK to offer Apple Pay in an App, as described in PassKit.
• Integrate Apple Pay JS to offer Apple Pay on the web, as described in Apple pay js.
After integration, Apple creates payment.token.paymentData. Pass this paymentData to YabandPay as a base64_encode string in payment_token_object for decryption and processing.
3. Complete registration with Apple
Before you start, complete the following steps for your Apple account:
-
Register an Apple Developer account. Register as an Apple Pay developer and complete the Apple certification process as described here.
-
For Apple Pay on the web (Safari), ensure that your server meets Apple’s additional security requirements described here.
-
Obtain a CSR file from YabandPay.
-
Return the signed CSR to YabandPay.
-
Add an Apple Pay button to your App or website. Use the appropriate PassKit or JavaScript API to render the button so it remains current and localized.
For more details, see Apple’s official guidelines: https://developer.apple.com/design/human-interface-guidelines/apple-pay/overview/introduction/
| Parameter | Type | Description | Required |
|---|---|---|---|
| user | String | Cashier account UID | Required |
| sign | String | Signature | Required |
| method | String | v3.ApplePay | Required |
| time | Long | Timestamp | Required |
- Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| pay_method | String | online | Required |
| sub_pay_method | String | Apple Pay | Required |
| operation | String | 1.Sales 2.Authorisation; | Required |
| order_id | String | Merchant order ID | Required |
| amount | String | Amount as a numeric string. For example, enter 24.99 for € 24.99. | Required |
| currency | String | ISO 4217 currency code, for example EUR or CHF | Required |
| description | String | Order description | Required |
| demo | String | Custom field | Optional |
| payment_token_object | String | The "paymentTokenObject" string obtained from Apple Pay | Required |
| timeout | String | Expiration time in minutes (0-1440) | Required |
| notify_url | String | Asynchronous notification URL after payment | Required |
| request_id | String | Unique request ID; a combination of digits and letters at least 24 characters is recommended | Required |
Obtaining payment_token_object:
Example token.paymentData returned by Apple Pay:
{
"version": "EC_v1",
"data": "4yHHmKd2YKSOaVoF+TdTdk9bVjhWYrDRSeyKvrX7I+3a4fyUg2bb7XkxyDlPyddoGzzLWf2ugLSmHL6B02R6tiF1a1VIMAbBdEbfs16dGc5MqD5nmrLWaJ1MWCLdJt1rIaq9z48v6oD+PRjAH1knS3Xeno9kAjG/VloJ69NqaIVEIboq3lGADJWgvTfuahpMCOl4WZpb0Nx0WZQjN9AJ85eiqegfFtweu3Vdgi913weMx9wWaXemecca1G5FUs/Ftdp7OEr24KJCgpPZUifLsHD6tS1es0XuQAW6tHOFpcCFUQWztAKYOEPJo/0f28zZ2aAQZZ8y7q/jJA3wSrxcR9cpNC1h7QRtnyNf9leGKNOT+VlTnKbSGo5oBphfZ3NUCrfFoXinNxXp2gp7INiSrbGGtlrIZ/odtj5+qf47Yg==",
"signature": "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",
"header": {
"ephemeralPublicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDTiY5WtOPkloi/EHwf0Wv0AIh0LyhlYcqOPZczZMkE+mZN4o6tSseSg/OnoAH80HUuUFgURB97Frv/cmJceNLA==",
"publicKeyHash": "pKqL8wJe8PuVsbuYxk2O4Nke6I0lNMyUDOndIDMSGmw=",
"transactionId": "YOUR_SIGNATURE"
}
}
The payment_token_object field is the base64_encode string of payment.token.paymentData obtained from the Apple Pay integration.
Signature example:
Sorted parameters concatenated into a URL-style query string
"amount=0.1¤cy=EUR&description=test&method=v3.ApplePay¬ify_url=https://www.yabandpay.com/notify&operation=1&order_id=2546168761657651657984196878&pay_method=online&payment_token_object=eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiNHlISG1LZDJZS1NPYVZvRitUZFRkazliVmpoV1lyRFJTZXlLdnJYN0krM2E0ZnlVZzJiYjdYa3h5RGxQeWRkb0d6ekxXZjJ1Z0xTbUhMNkIwMlI2dGlGMWExVklNQWJCZEViZnMxNmRHYzVNcUQ1bm1yTFdhSjFNV0NMZEp0MXJJYXE5ejQ4djZvRCtQUmpBSDFrblMzWGVubzlrQWpHL1Zsb0o2OU5xYUlWRUlib3EzbEdBREpXZ3ZUZnVhaHBNQ09sNFdacGIwTngwV1pRak45QUo4NWVpcWVnZkZ0d2V1M1ZkZ2k5MTN3ZU14OXdXYVhlbWVjY2ExRzVGVXMvRnRkcDdPRXIyNEtKQ2dwUFpVaWZMc0hENnRTMWVzMFh1UUFXNnRIT0ZwY0NGVVFXenRBS1lPRVBKby8wZjI4eloyYUFRWlo4eTdxL2pKQTN3U3J4Y1I5Y3BOQzFoN1FSdG55TmY5bGVHS05PVCtWbFRuS2JTR281b0JwaGZaM05VQ3JmRm9YaW5OeFhwMmdwN0lOaVNyYkdHdGxySVovb2R0ajUrcWY0N1lnPT0iLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RFRBTEJnbGdoa2dCWlFNRUFnRXdnQVlKS29aSWh2Y05BUWNCQUFDZ2dEQ0NBK1F3Z2dPTG9BTUNBUUlDQ0ZuWW9ieXE5T1BOTUFvR0NDcUdTTTQ5QkFNQ01Ib3hMakFzQmdOVkJBTU1KVUZ3Y0d4bElFRndjR3hwWTJGMGFXOXVJRWx1ZEdWbmNtRjBhVzl1SUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHlNVEEwTWpBeE9UTTNNREJhRncweU5qQTBNVGt4T1RNMk5UbGFNR0l4S0RBbUJnTlZCQU1NSDJWall5MXpiWEF0WW5KdmEyVnlMWE5wWjI1ZlZVTTBMVk5CVGtSQ1QxZ3hGREFTQmdOVkJBc01DMmxQVXlCVGVYTjBaVzF6TVJNd0VRWURWUVFLREFwQmNIQnNaU0JKYm1NdU1Rc3dDUVlEVlFRR0V3SlZVekJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSUl3L2F2RG5QZGVJQ3hRMlp0RkV1WTM0cWtCM1d5ejRMSE5TMUpubVBqUFRyM29HaVdvd2g1TU05M09qaXFXd3Zhdm9aTURSY1RvZWtRbXpwVWJFcFdqZ2dJUk1JSUNEVEFNQmdOVkhSTUJBZjhFQWpBQU1COEdBMVVkSXdRWU1CYUFGQ1B5U2NSUGsrVHZKK2JFOWloc1A2SzcvUzVMTUVVR0NDc0dBUVVGQndFQkJEa3dOekExQmdnckJnRUZCUWN3QVlZcGFIUjBjRG92TDI5amMzQXVZWEJ3YkdVdVkyOXRMMjlqYzNBd05DMWhjSEJzWldGcFkyRXpNREl3Z2dFZEJnTlZIU0FFZ2dFVU1JSUJFRENDQVF3R0NTcUdTSWIzWTJRRkFUQ0IvakNCd3dZSUt3WUJCUVVIQWdJd2diWU1nYk5TWld4cFlXNWpaU0J2YmlCMGFHbHpJR05sY25ScFptbGpZWFJsSUdKNUlHRnVlU0J3WVhKMGVTQmhjM04xYldWeklHRmpZMlZ3ZEdGdVkyVWdiMllnZEdobElIUm9aVzRnWVhCd2JHbGpZV0pzWlNCemRHRnVaR0Z5WkNCMFpYSnRjeUJoYm1RZ1kyOXVaR2wwYVc5dWN5QnZaaUIxYzJVc0lHTmxjblJwWm1sallYUmxJSEJ2YkdsamVTQmhibVFnWTJWeWRHbG1hV05oZEdsdmJpQndjbUZqZEdsalpTQnpkR0YwWlcxbGJuUnpMakEyQmdnckJnRUZCUWNDQVJZcWFIUjBjRG92TDNkM2R5NWhjSEJzWlM1amIyMHZZMlZ5ZEdsbWFXTmhkR1ZoZFhSb2IzSnBkSGt2TURRR0ExVWRId1F0TUNzd0thQW5vQ1dHSTJoMGRIQTZMeTlqY213dVlYQndiR1V1WTI5dEwyRndjR3hsWVdsallUTXVZM0pzTUIwR0ExVWREZ1FXQkJRQ0pEQUxtdTd0UmpHWHBLWmFLWjVDY1lJY1JUQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0R3WUpLb1pJaHZkalpBWWRCQUlGQURBS0JnZ3Foa2pPUFFRREFnTkhBREJFQWlCMG9iTWsyMEpKUXczVEoweFFkTVNBalpvZlNBNDZoY1hCTmlWbU1sKzhvd0lnYVRhUVU2djFDMXBTK2ZZQVRjV0tyV3hRcDlZSWFEZVE0S2M2MEI1SzJZRXdnZ0x1TUlJQ2RhQURBZ0VDQWdoSmJTKy9PcGphbHpBS0JnZ3Foa2pPUFFRREFqQm5NUnN3R1FZRFZRUUREQkpCY0hCc1pTQlNiMjkwSUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHhOREExTURZeU16UTJNekJhRncweU9UQTFNRFl5TXpRMk16QmFNSG94TGpBc0JnTlZCQU1NSlVGd2NHeGxJRUZ3Y0d4cFkyRjBhVzl1SUVsdWRHVm5jbUYwYVc5dUlFTkJJQzBnUnpNeEpqQWtCZ05WQkFzTUhVRndjR3hsSUVObGNuUnBabWxqWVhScGIyNGdRWFYwYUc5eWFYUjVNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVFzd0NRWURWUVFHRXdKVlV6QlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJQQVhFWVFaMTJTRjFScGVKWUVIZHVpQW91L2VlNjVONEkzOFM1UGhNMWJWWmxzMXJpTFFsM1lOSWs1N3VnajlkaGZPaU10MnUyWnd2c2pvS1lUL1ZFV2pnZmN3Z2ZRd1JnWUlLd1lCQlFVSEFRRUVPakE0TURZR0NDc0dBUVVGQnpBQmhpcG9kSFJ3T2k4dmIyTnpjQzVoY0hCc1pTNWpiMjB2YjJOemNEQTBMV0Z3Y0d4bGNtOXZkR05oWnpNd0hRWURWUjBPQkJZRUZDUHlTY1JQaytUdkorYkU5aWhzUDZLNy9TNUxNQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdId1lEVlIwakJCZ3dGb0FVdTdEZW9WZ3ppSnFraXBuZXZyM3JyOXJMSktzd053WURWUjBmQkRBd0xqQXNvQ3FnS0lZbWFIUjBjRG92TDJOeWJDNWhjSEJzWlM1amIyMHZZWEJ3YkdWeWIyOTBZMkZuTXk1amNtd3dEZ1lEVlIwUEFRSC9CQVFEQWdFR01CQUdDaXFHU0liM1kyUUdBZzRFQWdVQU1Bb0dDQ3FHU000OUJBTUNBMmNBTUdRQ01EclBjb05SRnBteGh2czF3MWJLWXIvMEYrM1pEM1ZOb282KzhaeUJYa0szaWZpWTk1dFpuNWpWUVEyUG5lbkMvZ0l3TWkzVlJDR3dvd1YzYkYzek9EdVFaLzBYZkN3aGJaWlB4bkpwZ2hKdlZQaDZmUnVaeTVzSmlTRmhCcGtQQ1pJZEFBQXhnZ0dITUlJQmd3SUJBVENCaGpCNk1TNHdMQVlEVlFRRERDVkJjSEJzWlNCQmNIQnNhV05oZEdsdmJpQkpiblJsWjNKaGRHbHZiaUJEUVNBdElFY3pNU1l3SkFZRFZRUUxEQjFCY0hCc1pTQkRaWEowYVdacFkyRjBhVzl1SUVGMWRHaHZjbWwwZVRFVE1CRUdBMVVFQ2d3S1FYQndiR1VnU1c1akxqRUxNQWtHQTFVRUJoTUNWVk1DQ0ZuWW9ieXE5T1BOTUFzR0NXQ0dTQUZsQXdRQ0FhQ0JrekFZQmdrcWhraUc5dzBCQ1FNeEN3WUpLb1pJaHZjTkFRY0JNQndHQ1NxR1NJYjNEUUVKQlRFUEZ3MHlOVEF4TWpJd016RXlORFZhTUNnR0NTcUdTSWIzRFFFSk5ERWJNQmt3Q3dZSllJWklBV1VEQkFJQm9Rb0dDQ3FHU000OUJBTUNNQzhHQ1NxR1NJYjNEUUVKQkRFaUJDQVBFcVhzSXE2WHVmS0Z1R2FuWk5EVUdIOFBoYmdzV1hqdkdidDNyZTdUUlRBS0JnZ3Foa2pPUFFRREFnUkdNRVFDSUEyelBXR2RIVlczWHUxZ0szYnhlRVpaaTJCUFU5dFhKeEFSb1JIV2FEQU9BaUJmNjNKcjhqVHRuMWk5QWdieFVsWldJcGN0Ylh1SXplRzU2U1VtQnlDNFF3QUFBQUFBQUE9PSIsImhlYWRlciI6eyJlcGhlbWVyYWxQdWJsaWNLZXkiOiJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEVGlZNVd0T1BrbG9pL0VId2YwV3YwQUloMEx5aGxZY3FPUFpjelpNa0UrbVpONG82dFNzZVNnL09ub0FIODBIVXVVRmdVUkI5N0Zydi9jbUpjZU5MQT09IiwicHVibGljS2V5SGFzaCI6InBLcUw4d0plOFB1VnNidVl4azJPNE5rZTZJMGxOTXlVRE9uZElETVNHbXc9IiwidHJhbnNhY3Rpb25JZCI6IjU0MWRiMDc5Y2ZhOTBhMGY0MzMwYmNhNzNhNDhiZGY2MDlmZDcyZDhkNWQ0YzUxOGE3NDFjOGFlZmY4ZWM4ODMifX0=&request_id=5g71qqe2v3twvm1sr71e74al5h7q4pbq&sub_pay_method=Apple Pay&time=1721987969&timeout=0&user=YOUR_CASHIER_UID"
Sign stringA using secret_key
The resulting signature is:
"YOUR_SIGNATURE"
Request example (operation=1 Sales):
{
"user": "YOUR_CASHIER_UID",
"sign": "YOUR_SIGNATURE",
"method": "v3.ApplePay",
"time": 1721987969,
"data": {
"description": "test",
"timeout": "0",
"pay_method": "online",
"sub_pay_method": "Apple Pay",
"order_id": "YOUR_ORDER_ID",
"amount": "0.1",
"currency": "EUR",
"operation": "1",
"notify_url": "https://www.yabandpay.com/notify",
"payment_token_object": "eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiNHlISG1LZDJZS1NPYVZvRitUZFRkazliVmpoV1lyRFJTZXlLdnJYN0krM2E0ZnlVZzJiYjdYa3h5RGxQeWRkb0d6ekxXZjJ1Z0xTbUhMNkIwMlI2dGlGMWExVklNQWJCZEViZnMxNmRHYzVNcUQ1bm1yTFdhSjFNV0NMZEp0MXJJYXE5ejQ4djZvRCtQUmpBSDFrblMzWGVubzlrQWpHL1Zsb0o2OU5xYUlWRUlib3EzbEdBREpXZ3ZUZnVhaHBNQ09sNFdacGIwTngwV1pRak45QUo4NWVpcWVnZkZ0d2V1M1ZkZ2k5MTN3ZU14OXdXYVhlbWVjY2ExRzVGVXMvRnRkcDdPRXIyNEtKQ2dwUFpVaWZMc0hENnRTMWVzMFh1UUFXNnRIT0ZwY0NGVVFXenRBS1lPRVBKby8wZjI4eloyYUFRWlo4eTdxL2pKQTN3U3J4Y1I5Y3BOQzFoN1FSdG55TmY5bGVHS05PVCtWbFRuS2JTR281b0JwaGZaM05VQ3JmRm9YaW5OeFhwMmdwN0lOaVNyYkdHdGxySVovb2R0ajUrcWY0N1lnPT0iLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RFRBTEJnbGdoa2dCWlFNRUFnRXdnQVlKS29aSWh2Y05BUWNCQUFDZ2dEQ0NBK1F3Z2dPTG9BTUNBUUlDQ0ZuWW9ieXE5T1BOTUFvR0NDcUdTTTQ5QkFNQ01Ib3hMakFzQmdOVkJBTU1KVUZ3Y0d4bElFRndjR3hwWTJGMGFXOXVJRWx1ZEdWbmNtRjBhVzl1SUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHlNVEEwTWpBeE9UTTNNREJhRncweU5qQTBNVGt4T1RNMk5UbGFNR0l4S0RBbUJnTlZCQU1NSDJWall5MXpiWEF0WW5KdmEyVnlMWE5wWjI1ZlZVTTBMVk5CVGtSQ1QxZ3hGREFTQmdOVkJBc01DMmxQVXlCVGVYTjBaVzF6TVJNd0VRWURWUVFLREFwQmNIQnNaU0JKYm1NdU1Rc3dDUVlEVlFRR0V3SlZVekJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSUl3L2F2RG5QZGVJQ3hRMlp0RkV1WTM0cWtCM1d5ejRMSE5TMUpubVBqUFRyM29HaVdvd2g1TU05M09qaXFXd3Zhdm9aTURSY1RvZWtRbXpwVWJFcFdqZ2dJUk1JSUNEVEFNQmdOVkhSTUJBZjhFQWpBQU1COEdBMVVkSXdRWU1CYUFGQ1B5U2NSUGsrVHZKK2JFOWloc1A2SzcvUzVMTUVVR0NDc0dBUVVGQndFQkJEa3dOekExQmdnckJnRUZCUWN3QVlZcGFIUjBjRG92TDI5amMzQXVZWEJ3YkdVdVkyOXRMMjlqYzNBd05DMWhjSEJzWldGcFkyRXpNREl3Z2dFZEJnTlZIU0FFZ2dFVU1JSUJFRENDQVF3R0NTcUdTSWIzWTJRRkFUQ0IvakNCd3dZSUt3WUJCUVVIQWdJd2diWU1nYk5TWld4cFlXNWpaU0J2YmlCMGFHbHpJR05sY25ScFptbGpZWFJsSUdKNUlHRnVlU0J3WVhKMGVTQmhjM04xYldWeklHRmpZMlZ3ZEdGdVkyVWdiMllnZEdobElIUm9aVzRnWVhCd2JHbGpZV0pzWlNCemRHRnVaR0Z5WkNCMFpYSnRjeUJoYm1RZ1kyOXVaR2wwYVc5dWN5QnZaaUIxYzJVc0lHTmxjblJwWm1sallYUmxJSEJ2YkdsamVTQmhibVFnWTJWeWRHbG1hV05oZEdsdmJpQndjbUZqZEdsalpTQnpkR0YwWlcxbGJuUnpMakEyQmdnckJnRUZCUWNDQVJZcWFIUjBjRG92TDNkM2R5NWhjSEJzWlM1amIyMHZZMlZ5ZEdsbWFXTmhkR1ZoZFhSb2IzSnBkSGt2TURRR0ExVWRId1F0TUNzd0thQW5vQ1dHSTJoMGRIQTZMeTlqY213dVlYQndiR1V1WTI5dEwyRndjR3hsWVdsallUTXVZM0pzTUIwR0ExVWREZ1FXQkJRQ0pEQUxtdTd0UmpHWHBLWmFLWjVDY1lJY1JUQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0R3WUpLb1pJaHZkalpBWWRCQUlGQURBS0JnZ3Foa2pPUFFRREFnTkhBREJFQWlCMG9iTWsyMEpKUXczVEoweFFkTVNBalpvZlNBNDZoY1hCTmlWbU1sKzhvd0lnYVRhUVU2djFDMXBTK2ZZQVRjV0tyV3hRcDlZSWFEZVE0S2M2MEI1SzJZRXdnZ0x1TUlJQ2RhQURBZ0VDQWdoSmJTKy9PcGphbHpBS0JnZ3Foa2pPUFFRREFqQm5NUnN3R1FZRFZRUUREQkpCY0hCc1pTQlNiMjkwSUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHhOREExTURZeU16UTJNekJhRncweU9UQTFNRFl5TXpRMk16QmFNSG94TGpBc0JnTlZCQU1NSlVGd2NHeGxJRUZ3Y0d4cFkyRjBhVzl1SUVsdWRHVm5jbUYwYVc5dUlFTkJJQzBnUnpNeEpqQWtCZ05WQkFzTUhVRndjR3hsSUVObGNuUnBabWxqWVhScGIyNGdRWFYwYUc5eWFYUjVNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVFzd0NRWURWUVFHRXdKVlV6QlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJQQVhFWVFaMTJTRjFScGVKWUVIZHVpQW91L2VlNjVONEkzOFM1UGhNMWJWWmxzMXJpTFFsM1lOSWs1N3VnajlkaGZPaU10MnUyWnd2c2pvS1lUL1ZFV2pnZmN3Z2ZRd1JnWUlLd1lCQlFVSEFRRUVPakE0TURZR0NDc0dBUVVGQnpBQmhpcG9kSFJ3T2k4dmIyTnpjQzVoY0hCc1pTNWpiMjB2YjJOemNEQTBMV0Z3Y0d4bGNtOXZkR05oWnpNd0hRWURWUjBPQkJZRUZDUHlTY1JQaytUdkorYkU5aWhzUDZLNy9TNUxNQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdId1lEVlIwakJCZ3dGb0FVdTdEZW9WZ3ppSnFraXBuZXZyM3JyOXJMSktzd053WURWUjBmQkRBd0xqQXNvQ3FnS0lZbWFIUjBjRG92TDJOeWJDNWhjSEJzWlM1amIyMHZZWEJ3YkdWeWIyOTBZMkZuTXk1amNtd3dEZ1lEVlIwUEFRSC9CQVFEQWdFR01CQUdDaXFHU0liM1kyUUdBZzRFQWdVQU1Bb0dDQ3FHU000OUJBTUNBMmNBTUdRQ01EclBjb05SRnBteGh2czF3MWJLWXIvMEYrM1pEM1ZOb282KzhaeUJYa0szaWZpWTk1dFpuNWpWUVEyUG5lbkMvZ0l3TWkzVlJDR3dvd1YzYkYzek9EdVFaLzBYZkN3aGJaWlB4bkpwZ2hKdlZQaDZmUnVaeTVzSmlTRmhCcGtQQ1pJZEFBQXhnZ0dITUlJQmd3SUJBVENCaGpCNk1TNHdMQVlEVlFRRERDVkJjSEJzWlNCQmNIQnNhV05oZEdsdmJpQkpiblJsWjNKaGRHbHZiaUJEUVNBdElFY3pNU1l3SkFZRFZRUUxEQjFCY0hCc1pTQkRaWEowYVdacFkyRjBhVzl1SUVGMWRHaHZjbWwwZVRFVE1CRUdBMVVFQ2d3S1FYQndiR1VnU1c1akxqRUxNQWtHQTFVRUJoTUNWVk1DQ0ZuWW9ieXE5T1BOTUFzR0NXQ0dTQUZsQXdRQ0FhQ0JrekFZQmdrcWhraUc5dzBCQ1FNeEN3WUpLb1pJaHZjTkFRY0JNQndHQ1NxR1NJYjNEUUVKQlRFUEZ3MHlOVEF4TWpJd016RXlORFZhTUNnR0NTcUdTSWIzRFFFSk5ERWJNQmt3Q3dZSllJWklBV1VEQkFJQm9Rb0dDQ3FHU000OUJBTUNNQzhHQ1NxR1NJYjNEUUVKQkRFaUJDQVBFcVhzSXE2WHVmS0Z1R2FuWk5EVUdIOFBoYmdzV1hqdkdidDNyZTdUUlRBS0JnZ3Foa2pPUFFRREFnUkdNRVFDSUEyelBXR2RIVlczWHUxZ0szYnhlRVpaaTJCUFU5dFhKeEFSb1JIV2FEQU9BaUJmNjNKcjhqVHRuMWk5QWdieFVsWldJcGN0Ylh1SXplRzU2U1VtQnlDNFF3QUFBQUFBQUE9PSIsImhlYWRlciI6eyJlcGhlbWVyYWxQdWJsaWNLZXkiOiJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEVGlZNVd0T1BrbG9pL0VId2YwV3YwQUloMEx5aGxZY3FPUFpjelpNa0UrbVpONG82dFNzZVNnL09ub0FIODBIVXVVRmdVUkI5N0Zydi9jbUpjZU5MQT09IiwicHVibGljS2V5SGFzaCI6InBLcUw4d0plOFB1VnNidVl4azJPNE5rZTZJMGxOTXlVRE9uZElETVNHbXc9IiwidHJhbnNhY3Rpb25JZCI6IjU0MWRiMDc5Y2ZhOTBhMGY0MzMwYmNhNzNhNDhiZGY2MDlmZDcyZDhkNWQ0YzUxOGE3NDFjOGFlZmY4ZWM4ODMifX0=",
"request_id": "5g71qqe2v3twvm1sr71e74al5h7q4pbq"
}
}
Response example:
{
"status": true,
"code": "200",
"data": {
"order_id": "YOUR_ORDER_ID",
"trade_id": "8c9908cf-0df7-7e22-1724-0080246bb918",
"amount": "0.10",
"currency": "EUR",
"sub_pay_method": "Apple Pay",
"state": "paid"},
"message": "",
"response_id": "202407261759298674663100"
}
Additional information:
Response result:
-
A successful request returns "status": true.
-
A failed request returns "status": false.
The API returns the payment result synchronously. A state of paid indicates a successful payment. We strongly recommend using both Query Order and Asynchronous Notifications to keep payment statuses accurate and up to date. a) An order state of paid indicates a successful payment. b) An order state of authorized indicates a successful authorization. To capture an authorized payment, call the Capture Authorization API.
Response codes:
| Status | Code | Message |
|---|---|---|
| true | 200 | |
| false | -1000 | Internal error |
| false | -403 | The signature Error |
| false | -2001 | The user not exist |
| false | -3001 | Required field is missing |
| false | -4118 | Incorrect request ID |
