我已经将PayPal REST API v1用于某个客户端,该客户端已在不久前部署到该客户端,并且一直可以正常工作。
今天引起我注意的是,API集成自2019年9月16日以来一直没有起作用。
自从部署以来,代码没有更改,但是尽管API仍成功地从PayPal接收了访问令牌,但没有提交进入低谷。
以下是我通过CURL PHP(https://api.paypal.com/v1/payments/payment)发送到PayPal的POST数据
{
"intent": "sale",
"payer": {
"payment_method": "paypal"
},
"application_context": {
"brand_name": "[[REDACTED]]",
"locale": "GB",
"landing_page": "login",
"shipping_preference": "NO_SHIPPING",
"user_action": "user_action=commit"
},
"transactions": [{
"amount": {
"total": "0.01",
"currency": "GBP"
},
"payee": {
"email": "[[REDACTED]]"
},
"description": "Test donation.",
"item_list": {
"items": [{
"name": "Test donation.",
"description": "",
"quantity": "1",
"price": "0.01",
"currency": "GBP"
}]
},
"note_to_payee": "",
"payment_options": {
"allowed_payment_method": "INSTANT_FUNDING_SOURCE"
}
}],
"redirect_urls": {
"return_url": "[[REDACTED]]",
"cancel_url": "[[REDACTED]]"
}
}
PayPal的响应如下:
{
"name": "VALIDATION_ERROR",
"message": "Invalid request - see details",
"debug_id": "[[REDACTED]]",
"information_link": "https:\/\/developer.paypal.com\/docs\/api\/payments\/#errors",
"details": [{
"field": "application_context.user_action",
"location": "body",
"issue": "{InvalidUserAction}"
}]
}
查看文档,我使用的值application_context.user_action
是正确的。我知道该API已被弃用,但没有提及该API无法正常运行。
原始文档的规范奇怪地重复了
如果现在将其更改为会发生什么"user_action": "commit"
?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句