You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PayPal沙箱Void授权失败(PERMISSION_DENIED)但Capture可正常执行

PayPal沙箱中授权订单Capture正常但Void失败的权限问题

问题描述

我正在使用PayPal v2 Orders API测试沙箱支付流程。创建intent=AUTHORIZE的订单并完成授权后,尝试执行Capture(释放)或Void(取消)授权操作。Capture可正常执行,但Void操作失败,报错信息如下:

{
  "name": "NOT_AUTHORIZED",
  "message": "Authorization failed due to insufficient permissions.",
  "debug_id": "xxxxxxxx",
  "details": [
    {
      "issue": "PERMISSION_DENIED",
      "field": "authorization_id",
      "value": "xxxxxxxx",
      "description": "You do not have permission to access or perform operations on this resource.",
      "location": "path"
    }
  ]
}

使用沙箱账户,OAuth令牌来自沙箱商家客户端ID和密钥。请问为何沙箱允许对同一授权执行Capture却拒绝Void?如何在沙箱中测试Void操作?


原因分析与解决办法

  • 权限范围不匹配:Capture和Void操作要求的OAuth权限范围不同。Capture仅需payment.capture权限,而Void授权必须拥有payment.authorization权限。检查你的沙箱应用配置,确保已在PayPal开发者后台为应用添加payment.authorization权限,重新生成OAuth令牌后再测试。
  • 授权状态限制:如果该授权已经被执行过部分Capture,沙箱环境中可能不允许Void操作——Void仅适用于未被Capture过的完整授权。若已执行部分Capture,可改为全额Capture后发起退款,而非Void。
  • 账户权限验证:确认生成OAuth令牌的沙箱商家账户是该授权订单的创建方,避免使用第三方账户的令牌。即使第三方账户有Capture权限,也可能没有Void该授权的权限。
  • API端点检查:确保Void操作调用的是正确的端点:POST /v2/payments/authorizations/{authorization_id}/void,不要误用订单或Capture相关的端点。

内容的提问来源于stack exchange,提问作者efenatuyo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 23:12:12