Apple Pay
适用于:支持Apple Pay支付场景
该支付方式是由Apple Pay拉起支付,需集成在商户的App或网页中,消费者在iOS设备上完成支付。
1. 它如何工作?
Apple Pay 使用特定设备的标记化信用卡或借记卡凭证 (DPAN) 代替支付账号 (PAN)。当客户使用 Face ID、Touch ID 或密码确认支付时,标记化的卡数据会返回到您的应用程序或网站。然后,该令牌就可以传递给您的支付服务提供商(PSP),像处理一般的在线信用卡或借记卡支付一样进行处理。
YabandPay现在支持的普通借记卡和信用卡的任何交易类型都可以通过 Apple Pay 进行,包括退款。Apple Pay 可在运行 iOS、watchOS 和 iPadOS 的 Apple 设备上的应用内和 Safari 中使用,也可在 MacOS 设备的 Safari 中使用。
2. Apple Pay集成
您可以在App或网页内集成Apple Pay。您需要实施 Apple API 来验证是否可以将 Apple Pay 用作一个付款方式:
• 与 PassKit SDK 集成以从App内提供 Apple Pay,如 PassKit 中所述。
• 与 Apple Pay JS 集成以从网页提供 Apple Pay,如 Apple pay js 中所述。
与 Apple Pay 集成后,Apple会创建一个payment.token.paymentData
。您应将此 paymentData
base64_encode后的字符串传递给YabandPay,其字段为 payment_token_object
,以便解密和处理。
3. 在Apple完成注册
开始之前,您需要确保在您的 Apple 帐户上完成以下步骤:
注册 Apple 开发者帐户。您需要注册为 Apple Pay 开发者,并按照此处所述完成 Apple 认证流程。
如果您在网络上集成 Apple Pay(使用 Safari),请确保您的服务器支持此处所述的 Apple 额外安全要求。
从YabandPay 获取 CSR 文件。
将签名的 CSR 给回到 YabandPay。
在您的应用或网站中添加 Apple Pay 按钮。使用适当的 PassKit 或 JavaScript API 在您的应用或网站中呈现按钮,以便按钮始终保持最新和本地化。
更多详细信息请参考苹果官方指引:https://developer.apple.com/design/human-interface-guidelines/apple-pay/overview/introduction/
API URL:https://mapi.yabandpay.com/Payments
Method:POST
POST data type:Json
参数 | 类型 | 描述 | 是否必填 |
---|---|---|---|
user | String | 收银员账号的UID | 必填 |
sign | String | 签名 | 必填 |
method | String | v3.ApplePay | 必填 |
time | Long | 时间戳 | 必填 |
- 参数
Parameter | Type | Description | 是否必填 |
---|---|---|---|
pay_method | String | online | 必填 |
sub_pay_method | String | Apple Pay | 必填 |
operation | String | 1.Sales 2.Authorisation; | 必填 |
order_id | String | 商户的订单ID | 必填 |
amount | String | 金额数字。例如 € 24.99 应该写成24.99 | 必填 |
currency | String | 货币代码,ISO 4217,例如EUR,CHF | 必填 |
description | String | 订单描述 | 必填 |
demo | String | 自定义字段 | 选填 |
payment_token_object | String | 从Apple Pay拿到的"paymentTokenObject"的字符串 | 必填 |
timeout | String | 过期时间0-1440 分钟,如不设置默认1440分钟 | 必填 |
notify_url | String | 支付完成后异步通知地址 | 必填 |
request_id | String | 请求id需保持唯一,建议24以上位数字+字母 | 必填 |
payment_token_object获取方式:
Apple Pay 返回的token.paymentData示例:
{
"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": "541db079cfa90a0f4330bca73a48bdf609fd72d8d5d4c518a741c8aeff8ec883"
}
}
payment_token_object 字段为对接Apple pay后拿到的payment.token.paymentData数据的base64_encode后的字符串
签名示例:
拼接为URL方式并排序后的字符串
"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=016683"
得到的 stringA 使用 secret_key做签名
得到的签名如下:
"62cb5f5776b5202781c25814a907fb007b319ff1f86abcd96145d5a027700bed"
提交示例(operation=1 Sales):
{
"user": "016683",
"sign": "62cb5f5776b5202781c25814a907fb007b319ff1f86abcd96145d5a027700bed",
"method": "v3.ApplePay",
"time": 1721987969,
"data": {
"description": "test",
"timeout": "0",
"pay_method": "online",
"sub_pay_method": "Apple Pay",
"order_id": "2546168761657651657984196878",
"amount": "0.1",
"currency": "EUR",
"operation": "1",
"notify_url": "https://www.yabandpay.com/notify",
"payment_token_object": "eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiNHlISG1LZDJZS1NPYVZvRitUZFRkazliVmpoV1lyRFJTZXlLdnJYN0krM2E0ZnlVZzJiYjdYa3h5RGxQeWRkb0d6ekxXZjJ1Z0xTbUhMNkIwMlI2dGlGMWExVklNQWJCZEViZnMxNmRHYzVNcUQ1bm1yTFdhSjFNV0NMZEp0MXJJYXE5ejQ4djZvRCtQUmpBSDFrblMzWGVubzlrQWpHL1Zsb0o2OU5xYUlWRUlib3EzbEdBREpXZ3ZUZnVhaHBNQ09sNFdacGIwTngwV1pRak45QUo4NWVpcWVnZkZ0d2V1M1ZkZ2k5MTN3ZU14OXdXYVhlbWVjY2ExRzVGVXMvRnRkcDdPRXIyNEtKQ2dwUFpVaWZMc0hENnRTMWVzMFh1UUFXNnRIT0ZwY0NGVVFXenRBS1lPRVBKby8wZjI4eloyYUFRWlo4eTdxL2pKQTN3U3J4Y1I5Y3BOQzFoN1FSdG55TmY5bGVHS05PVCtWbFRuS2JTR281b0JwaGZaM05VQ3JmRm9YaW5OeFhwMmdwN0lOaVNyYkdHdGxySVovb2R0ajUrcWY0N1lnPT0iLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RFRBTEJnbGdoa2dCWlFNRUFnRXdnQVlKS29aSWh2Y05BUWNCQUFDZ2dEQ0NBK1F3Z2dPTG9BTUNBUUlDQ0ZuWW9ieXE5T1BOTUFvR0NDcUdTTTQ5QkFNQ01Ib3hMakFzQmdOVkJBTU1KVUZ3Y0d4bElFRndjR3hwWTJGMGFXOXVJRWx1ZEdWbmNtRjBhVzl1SUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHlNVEEwTWpBeE9UTTNNREJhRncweU5qQTBNVGt4T1RNMk5UbGFNR0l4S0RBbUJnTlZCQU1NSDJWall5MXpiWEF0WW5KdmEyVnlMWE5wWjI1ZlZVTTBMVk5CVGtSQ1QxZ3hGREFTQmdOVkJBc01DMmxQVXlCVGVYTjBaVzF6TVJNd0VRWURWUVFLREFwQmNIQnNaU0JKYm1NdU1Rc3dDUVlEVlFRR0V3SlZVekJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSUl3L2F2RG5QZGVJQ3hRMlp0RkV1WTM0cWtCM1d5ejRMSE5TMUpubVBqUFRyM29HaVdvd2g1TU05M09qaXFXd3Zhdm9aTURSY1RvZWtRbXpwVWJFcFdqZ2dJUk1JSUNEVEFNQmdOVkhSTUJBZjhFQWpBQU1COEdBMVVkSXdRWU1CYUFGQ1B5U2NSUGsrVHZKK2JFOWloc1A2SzcvUzVMTUVVR0NDc0dBUVVGQndFQkJEa3dOekExQmdnckJnRUZCUWN3QVlZcGFIUjBjRG92TDI5amMzQXVZWEJ3YkdVdVkyOXRMMjlqYzNBd05DMWhjSEJzWldGcFkyRXpNREl3Z2dFZEJnTlZIU0FFZ2dFVU1JSUJFRENDQVF3R0NTcUdTSWIzWTJRRkFUQ0IvakNCd3dZSUt3WUJCUVVIQWdJd2diWU1nYk5TWld4cFlXNWpaU0J2YmlCMGFHbHpJR05sY25ScFptbGpZWFJsSUdKNUlHRnVlU0J3WVhKMGVTQmhjM04xYldWeklHRmpZMlZ3ZEdGdVkyVWdiMllnZEdobElIUm9aVzRnWVhCd2JHbGpZV0pzWlNCemRHRnVaR0Z5WkNCMFpYSnRjeUJoYm1RZ1kyOXVaR2wwYVc5dWN5QnZaaUIxYzJVc0lHTmxjblJwWm1sallYUmxJSEJ2YkdsamVTQmhibVFnWTJWeWRHbG1hV05oZEdsdmJpQndjbUZqZEdsalpTQnpkR0YwWlcxbGJuUnpMakEyQmdnckJnRUZCUWNDQVJZcWFIUjBjRG92TDNkM2R5NWhjSEJzWlM1amIyMHZZMlZ5ZEdsbWFXTmhkR1ZoZFhSb2IzSnBkSGt2TURRR0ExVWRId1F0TUNzd0thQW5vQ1dHSTJoMGRIQTZMeTlqY213dVlYQndiR1V1WTI5dEwyRndjR3hsWVdsallUTXVZM0pzTUIwR0ExVWREZ1FXQkJRQ0pEQUxtdTd0UmpHWHBLWmFLWjVDY1lJY1JUQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0R3WUpLb1pJaHZkalpBWWRCQUlGQURBS0JnZ3Foa2pPUFFRREFnTkhBREJFQWlCMG9iTWsyMEpKUXczVEoweFFkTVNBalpvZlNBNDZoY1hCTmlWbU1sKzhvd0lnYVRhUVU2djFDMXBTK2ZZQVRjV0tyV3hRcDlZSWFEZVE0S2M2MEI1SzJZRXdnZ0x1TUlJQ2RhQURBZ0VDQWdoSmJTKy9PcGphbHpBS0JnZ3Foa2pPUFFRREFqQm5NUnN3R1FZRFZRUUREQkpCY0hCc1pTQlNiMjkwSUVOQklDMGdSek14SmpBa0JnTlZCQXNNSFVGd2NHeGxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1STXdFUVlEVlFRS0RBcEJjSEJzWlNCSmJtTXVNUXN3Q1FZRFZRUUdFd0pWVXpBZUZ3MHhOREExTURZeU16UTJNekJhRncweU9UQTFNRFl5TXpRMk16QmFNSG94TGpBc0JnTlZCQU1NSlVGd2NHeGxJRUZ3Y0d4cFkyRjBhVzl1SUVsdWRHVm5jbUYwYVc5dUlFTkJJQzBnUnpNeEpqQWtCZ05WQkFzTUhVRndjR3hsSUVObGNuUnBabWxqWVhScGIyNGdRWFYwYUc5eWFYUjVNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVFzd0NRWURWUVFHRXdKVlV6QlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJQQVhFWVFaMTJTRjFScGVKWUVIZHVpQW91L2VlNjVONEkzOFM1UGhNMWJWWmxzMXJpTFFsM1lOSWs1N3VnajlkaGZPaU10MnUyWnd2c2pvS1lUL1ZFV2pnZmN3Z2ZRd1JnWUlLd1lCQlFVSEFRRUVPakE0TURZR0NDc0dBUVVGQnpBQmhpcG9kSFJ3T2k4dmIyTnpjQzVoY0hCc1pTNWpiMjB2YjJOemNEQTBMV0Z3Y0d4bGNtOXZkR05oWnpNd0hRWURWUjBPQkJZRUZDUHlTY1JQaytUdkorYkU5aWhzUDZLNy9TNUxNQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdId1lEVlIwakJCZ3dGb0FVdTdEZW9WZ3ppSnFraXBuZXZyM3JyOXJMSktzd053WURWUjBmQkRBd0xqQXNvQ3FnS0lZbWFIUjBjRG92TDJOeWJDNWhjSEJzWlM1amIyMHZZWEJ3YkdWeWIyOTBZMkZuTXk1amNtd3dEZ1lEVlIwUEFRSC9CQVFEQWdFR01CQUdDaXFHU0liM1kyUUdBZzRFQWdVQU1Bb0dDQ3FHU000OUJBTUNBMmNBTUdRQ01EclBjb05SRnBteGh2czF3MWJLWXIvMEYrM1pEM1ZOb282KzhaeUJYa0szaWZpWTk1dFpuNWpWUVEyUG5lbkMvZ0l3TWkzVlJDR3dvd1YzYkYzek9EdVFaLzBYZkN3aGJaWlB4bkpwZ2hKdlZQaDZmUnVaeTVzSmlTRmhCcGtQQ1pJZEFBQXhnZ0dITUlJQmd3SUJBVENCaGpCNk1TNHdMQVlEVlFRRERDVkJjSEJzWlNCQmNIQnNhV05oZEdsdmJpQkpiblJsWjNKaGRHbHZiaUJEUVNBdElFY3pNU1l3SkFZRFZRUUxEQjFCY0hCc1pTQkRaWEowYVdacFkyRjBhVzl1SUVGMWRHaHZjbWwwZVRFVE1CRUdBMVVFQ2d3S1FYQndiR1VnU1c1akxqRUxNQWtHQTFVRUJoTUNWVk1DQ0ZuWW9ieXE5T1BOTUFzR0NXQ0dTQUZsQXdRQ0FhQ0JrekFZQmdrcWhraUc5dzBCQ1FNeEN3WUpLb1pJaHZjTkFRY0JNQndHQ1NxR1NJYjNEUUVKQlRFUEZ3MHlOVEF4TWpJd016RXlORFZhTUNnR0NTcUdTSWIzRFFFSk5ERWJNQmt3Q3dZSllJWklBV1VEQkFJQm9Rb0dDQ3FHU000OUJBTUNNQzhHQ1NxR1NJYjNEUUVKQkRFaUJDQVBFcVhzSXE2WHVmS0Z1R2FuWk5EVUdIOFBoYmdzV1hqdkdidDNyZTdUUlRBS0JnZ3Foa2pPUFFRREFnUkdNRVFDSUEyelBXR2RIVlczWHUxZ0szYnhlRVpaaTJCUFU5dFhKeEFSb1JIV2FEQU9BaUJmNjNKcjhqVHRuMWk5QWdieFVsWldJcGN0Ylh1SXplRzU2U1VtQnlDNFF3QUFBQUFBQUE9PSIsImhlYWRlciI6eyJlcGhlbWVyYWxQdWJsaWNLZXkiOiJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEVGlZNVd0T1BrbG9pL0VId2YwV3YwQUloMEx5aGxZY3FPUFpjelpNa0UrbVpONG82dFNzZVNnL09ub0FIODBIVXVVRmdVUkI5N0Zydi9jbUpjZU5MQT09IiwicHVibGljS2V5SGFzaCI6InBLcUw4d0plOFB1VnNidVl4azJPNE5rZTZJMGxOTXlVRE9uZElETVNHbXc9IiwidHJhbnNhY3Rpb25JZCI6IjU0MWRiMDc5Y2ZhOTBhMGY0MzMwYmNhNzNhNDhiZGY2MDlmZDcyZDhkNWQ0YzUxOGE3NDFjOGFlZmY4ZWM4ODMifX0=",
"request_id": "5g71qqe2v3twvm1sr71e74al5h7q4pbq"
}
}
返回示例:
{
"status": true,
"code": "200",
"data": {
"order_id": "2546168761657651657984196878",
"trade_id": "8c9908cf-0df7-7e22-1724-0080246bb918",
"amount": "0.10",
"currency": "EUR",
"sub_pay_method": "Apple Pay",
"state": "paid",
},
"message": "",
"response_id": "202407261759298674663100"
}
更多信息:
返回结果:
若调用成功,则返回
"status": true
若调用失败,则返回
"status": fales
我们会在调用接口后同步返回支付结果,状态state
为paid
,即支付成功。我们强烈建议同时使用订单查询和异步通知来同步和更新支付状态,以确保支付信息的实时准确性。 a) 如果订单状态state
为paid
,即支付成功; b) 如果订单状态state
为authorized
,即预授权成功。 预授权成功后如需要请款调用预授权请款接口。
返回代码:
Status | Code | Message |
---|---|---|
true | 200 | |
fales | -1000 | Internal error |
fales | -403 | The signature Error |
fales | -2001 | The user not exist |
fales | -3001 | Required field is missing |
fales | -4118 | Incorrect request ID |