首页 > 解决方案 > Checkout-PHP-SDK 中的 PayPal Orders V2 收款人对象因金额错误而失败

问题描述

我正在集成 PayPal Checkout,它运行良好,除非我在订单正文中包含自定义收款人。我在https://developer.paypal.com/docs/checkout/integration-features/custom-payee/尝试了 PayPal PHP 示例,如下所示:

  return array(
    'intent' => 'AUTHORIZE',
    'purchase_units' =>
      array(
        0 =>
          array(
            'amount' =>
              array(
                'currency_code' => 'USD',
                'value' => '220.00'
              )
          ),
          array(
            'payee' =>
              array(
                'email_address' => 'payee@email.com'
              )
          )
      )
  );

尝试创建订单将导致此错误消息(这似乎是完全错误的,因为它抱怨既不存在也不需要的字段):

{"name":"INVALID_REQUEST","message":"Request is not well-formed, syntactically incorrect, or violates schema.","debug_id":"65a47f1e8defd","details":[{"field":"/purchase_units/1/amount","value":"","location":"body","issue":"MISSING_REQUIRED_PARAMETER","description":"A required field / parameter is missing."}],"links":[{"href":"https://developer.paypal.com/docs/api/orders/v2/#error-MISSING_REQUIRED_PARAMETER","rel":"information_link","encType":"application/json"}]} [/var/www/web15/htdocs/retroplace/vendor/paypal/paypalhttp/lib/PayPalHttp/HttpClient.php:215]

如果我删除与收款人的部分,一切正常。但我需要订单中的收款人...

标签: phppaypalpaypal-rest-sdk

解决方案


您是否启用了 PHP 错误/警告?看起来可能是错误的 PHP 语法

尝试放置:

        'payee' =>
          array(
            'email_address' => 'payee@email.com'
          )

在上面的数组中(第二个键,在与“金额”相同的数组中)


推荐阅读