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

如何正确格式化PayPal订单金额更新请求?关于reference_id的疑问

解决PayPal订单金额更新的JSON格式错误及reference_id问题

问题根源

你收到的MALFORMED_REQUEST_JSON错误,是因为PayPal支持提供的请求格式并非订单更新所需的JSON Patch格式,而是创建订单的格式,完全不符合PayPal Orders V2更新接口的要求。

@reference_id=='PUHF'的处理方式

这个值必须替换,PUHF只是官方文档的示例值,不是你订单的实际标识:

  • 先调用PayPal的订单详情接口GET /v2/checkout/orders/{你的订单ID},在返回的purchase_units数组中,找到对应订单单元的reference_id字段值(如果创建订单时未手动指定,PayPal会自动生成一个字符串)。
  • 将Patch请求中的@reference_id=='PUHF'替换为@reference_id=='你获取到的实际reference_id值',这是JSON Patch的扩展语法,用来精准定位要修改的订单单元。

修正后的正确Patch请求格式

注意:原示例中的PHP数组语法(=>、单引号、breakdown用数组[])必须改成标准JSON格式(:、双引号、对象{}),否则依然会报错:

[
  {
    "op": "replace",
    "path": "/purchase_units/@reference_id=='你的reference_id'/amount",
    "value": {
      "currency_code": "USD",
      "value": "120.00",
      "breakdown": {
        "tax_total": {
          "currency_code": "USD",
          "value": "15.00"
        },
        "shipping": {
          "currency_code": "USD",
          "value": "5.00"
        }
      }
    }
  }
]

操作步骤

  1. 调用订单详情接口获取目标订单的reference_id;
  2. 按照上述格式编写正确的Patch请求体;
  3. 发送PATCH请求到对应环境的订单接口地址,请求头携带正确的授权令牌。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 11:23:18