Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Paypal REST API错误-Paypal收取的费用未在响应中设置 更新:该问题适用于测试和实时API请求_Paypal_Paypal Sandbox - Fatal编程技术网

Paypal REST API错误-Paypal收取的费用未在响应中设置 更新:该问题适用于测试和实时API请求

Paypal REST API错误-Paypal收取的费用未在响应中设置 更新:该问题适用于测试和实时API请求,paypal,paypal-sandbox,Paypal,Paypal Sandbox,起初我认为这是一个测试环境错误,但我已经确认它也适用于生产环境。了解贝宝收取的费用非常重要 有没有办法让Paypal测试环境()响应Paypal收取的费用?无论是销售还是销售查询似乎都不会返回实时交易中看到的Paypal费用。我们是否被迫使用实时事务进行测试(不是最佳实践)?如果没有您在实时环境中看到的相同的费用值,就很难在开发中对我们的会计系统进行单元测试 申请-存储卡的信用卡费用($43) 答复-核准() 文档-贝宝收取的费用 (下图)-显示PayPal收取的(字符串)费用的详细对象-该费

起初我认为这是一个测试环境错误,但我已经确认它也适用于生产环境。了解贝宝收取的费用非常重要


有没有办法让Paypal测试环境()响应Paypal收取的费用?无论是
销售
还是
销售查询
似乎都不会返回实时交易中看到的
Paypal费用
。我们是否被迫使用实时事务进行测试(不是最佳实践)?如果没有您在实时环境中看到的相同的费用值,就很难在开发中对我们的会计系统进行单元测试

申请-存储卡的信用卡费用($43) 答复-核准() 文档-
贝宝收取的费用
(下图)-显示PayPal收取的
(字符串)费用的详细对象
-该费用似乎不会暴露在测试环境中


看起来这是一个已知的bug,将被修复。还没有日期。

使用NVP API(GetTransactionDetails请求)来返回更准确的详细信息,以代替标准REST响应或沿着标准REST响应返回。如果您感兴趣,我可以发布一个PHP示例


REST API允许您执行诸如管理信用卡保险库之类的操作。。因此,您可以存储一张卡,并将其与其他卡一起收费。。但是当我收费时,我会返回NVP API GetTransactionDetails响应,其中包括贝宝收取的
费用
,以及您需要了解的关于通过REST收取的交易的所有其他信息。这可能是一个黑客攻击,涉及到一个额外的API调用,但它工作得非常好。

这现在可以在REST API上使用

您还可以通过向下钻取从支付对象访问交易费用。下面是一个(稍加修改的)示例响应:

{
  "id": "PAY-5YK922393D847794YKER7MUI",
  "state": "approved",
  "intent": "sale",
  "payer": {...},
  "transactions": [
    {
      "related_resources": [
        {
          "sale": {
            "id": "36C38912MN9658832",
            "state": "completed",
            "amount": {
              "total": "7.47",
              "currency": "USD"
            },
            "transaction_fee": {
              "value": "1.75",
              "currency": "USD"
            }
          }
        }
      ]
    }
  ]
}
对于在家中跟随的人,您可以通过以下简单直观的代码行获得此付款的交易费价值:

payment.transactions[0].related_resources[0].sale.transaction_fee.value
看到了吗?容易的。哦,但请记住,在执行付款之前,销售对象不会存在


如果你想轻松阅读,这里有一个例子。

你能提供一个没有返回的例子吗?我会在可能的时候发布确切的请求和响应,但本质上,使用developer.paypal.com上的任何销售或查找示例都会返回已批准状态并显示已收取的金额,但不会参考paypal收取的费用。事实上,开发人员区域中的所有示例响应都没有返回Paypal收取的费用。在开发环境中查看这些费用是很重要的,因为它们在您发出实时请求时就存在了。我添加了一个示例,其中PayPal收取的
费用不会返回。当你做交易查询时,费用也不会显示。这个错误在2天前被修复了-丹尼斯,你有一个URL,我们可以在那里找到关于这个问题的错误跟踪,以便我们更多的人可以跟踪它吗?丹尼斯,刚刚做了一个1美元的实时交易测试。响应中不包含有关此交易产生的0.33美元费用的信息。我认为这是一个很大的疏忽。我想知道在哪里记录了正确的答案。我没有发现这是一个官方错误的文档。Justin,我正在检查这个错误何时会被修复。你不能只说“这是一个已知的错误”,然后不发布到问题跟踪者的链接-pIs这仍然是一个问题,并且没有办法通过RESTAPI检索费用?
{
  "id": "PAY-5YK922393D847794YKER7MUI",
  "state": "approved",
  "intent": "sale",
  "payer": {...},
  "transactions": [
    {
      "related_resources": [
        {
          "sale": {
            "id": "36C38912MN9658832",
            "state": "completed",
            "amount": {
              "total": "7.47",
              "currency": "USD"
            },
            "transaction_fee": {
              "value": "1.75",
              "currency": "USD"
            }
          }
        }
      ]
    }
  ]
}
payment.transactions[0].related_resources[0].sale.transaction_fee.value