Paypal Refund Rest Api v2 - 由于权限不足,授权失败

sum*_*eet 6 paypal paypal-sandbox paypal-rest-sdk

我能够成功执行以下 API

/v2/checkout/orders
/v2/checkout/orders/{order_id}/authorize
/v2/checkout/orders/{order_id}/capture
Run Code Online (Sandbox Code Playgroud)

为什么在执行此处所述的 PayPal 退款时会收到“NOT_AUTHORIZED”响应?- https://developer.paypal.com/docs/api/payments/v2/#captures_refund

POST 请求

https://api.sandbox.paypal.com/v2/payments/captures/<Capture ID I got from capture request>/refund
Run Code Online (Sandbox Code Playgroud)

回复

    {
    "name": "NOT_AUTHORIZED",
    "message": "Authorization failed due to insufficient permissions.",
    "debug_id": "6c6xxxxx6c",
    "details": [
        {
            "issue": "PERMISSION_DENIED",
            "field": "capture_id",
            "value": "XXXXXXXXX",
            "description": "You do not have permission to access or perform operations on this resource.",
            "location": "path"
        }
    ],
    "links": [
        {
            "href": "https://developer.paypal.com/docs/api/v2/payments/#NOT_AUTHORIZED",
            "rel": "information_link"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

小智 7

您必须联系 PayPal 支持,为 V2 退款和取消请求添加对现有 ClientId 和客户端密钥(适用于 PayPal V1 API)的权限,并且没有其他方法可以设置相同的权限。如果您需要避免这种情况,那么只需从 PayPal 帐户创建新的 ClientId 和 Client secret,它就可以与 PayPal V2 API 一起正常工作。

  • 不幸的是这没有帮助。唯一的方法似乎是联系支持人员。 (2认同)