Paypal REST API -支付捕获响应缺少汇率



我们有一个使用欧元货币的Sandbox商店帐户,并配置为将付款转换为商店货币。如果我用美元购买,我希望在API捕获响应中至少得到汇率和转换后的金额,但是它们缺失了。

我正在调用以下API使用PHP Curl与一个新的访问令牌:https://api-m.sandbox.paypal.com/v2/payments/captures/

得到这样的响应:

{
"id":"63F99991HX835842N",
"amount":{
"currency_code":"USD",
"value":"600.00"
},
"final_capture":true,
"seller_protection":{
"status":"ELIGIBLE",
"dispute_categories":[
"ITEM_NOT_RECEIVED",
"UNAUTHORIZED_TRANSACTION"
]
},
"disbursement_mode":"INSTANT",
"seller_receivable_breakdown":{
"gross_amount":{
"currency_code":"USD",
"value":"600.00"
},
"paypal_fee":{
"currency_code":"USD",
"value":"23.70"
},
"net_amount":{
"currency_code":"USD",
"value":"576.30"
}
},
"invoice_id":"10000000006",
"status":"COMPLETED",
"supplementary_data":{
"related_ids":{
"order_id":"EC-9F92771459179154X",
"authorization_id":"8T758094XY4322813"
}
},
"create_time":"2022-12-12T11:29:38Z",
"update_time":"2022-12-12T11:29:38Z",
"links":[
{
"href":"https://api.sandbox.paypal.com/v2/payments/captures/63F99991HX835842N",
"rel":"self",
"method":"GET"
},
{
"href":"https://api.sandbox.paypal.com/v2/payments/captures/63F99991HX835842N/refund",
"rel":"refund",
"method":"POST"
},
{
"href":"https://api.sandbox.paypal.com/v2/payments/authorizations/8T758094XY4322813",
"rel":"up",
"method":"GET"
}
]
}

如Paypal API参考中所述,我应该看到以下内容,而不是缺少:

"seller_receivable_breakdown": {
"gross_amount": {
"total": "10.99",
"currency": "USD"
},
"paypal_fee": {
"value": "0.33",
"currency": "USD"
},
"net_amount": {
"value": "10.66",
"currency": "USD"
},
"receivable_amount": {
"currency_code": "CNY",
"value": "59.26"
},
"paypal_fee_in_receivable_currency": {
"currency_code": "CNY",
"value": "1.13"
},
"exchange_rate": {
"source_currency": "USD",
"target_currency": "CNY",
"value": "5.9483297432325"
}
},

我做错了什么?

谢谢!

我们尝试在Sandbox商店中使用欧元货币购买美元,并且我们期望Capture API响应中的货币转换和汇率,这些都是缺失的。

好的,我发现了问题,我们已经配置了沙箱商店接受美元和英镑的货币,这就是为什么Paypal没有进行转换:

货币、银行和信用卡->货币管理菜单必须只接受主货币

最新更新