【发布时间】:2023-02-02 13:50:37
【问题描述】:
我有一个与 Paypal API 集成的订阅按钮。订阅后我得到这些信息:
{ orderId: "ORDERID", subscriptionId: "SUBSCRIPTIONID" }
我需要获取 capture_id,它是用户订阅后捕获的付款的 id。
在搜索文档并与 chatGPT 进行大量聊天后,我知道要获取 capture_id 我必须执行此请求:
curl -X GET https://api.paypal.com/v2/checkout/orders/<order_id> \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access_token>"
我应该在请求返回的 purchase_units 字段中有 capture_id,但我得到的 purchase_units 字段是一个空数组。
我的订单状态为“已批准”,我需要将状态设为“已捕获”才能获得购买数量。 为此,我需要提出以下请求:
curl -X POST https://api.paypal.com/v2/checkout/orders/<order_id>/capture \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access_token>"
但是当我这样做时,我得到了错误:“INTERNAL_SERVER_ERROR”。
我也不明白为什么我收到的订单状态是“已批准”而不是直接“已捕获”,因为当我去检查用户测试帐户时,我已经完成了付款:
【问题讨论】:
标签: paypal paypal-sandbox