【问题标题】:Sandbox Error: Total沙盒错误:总计
【发布时间】:2014-11-13 14:46:47
【问题描述】:

我在尼日利亚有一个开发人员,我在美国工作。他在我的网站上设置了沙箱用于测试目的。当他处理一笔交易时,他会收到一条成功的交易消息。我得到一个

Error : Order total is missing.
Array
(
[TIMESTAMP] => 2014%2d10%2d27T16%3a18%3a05Z
[CORRELATIONID] => 868f7f8239a35
[ACK] => Failure
[VERSION] => 109%2e0
[BUILD] => 13517841
[L_ERRORCODE0] => 10400
[L_SHORTMESSAGE0] => Transaction%20refused%20because%20of%20an%20invalid%20argument%2e%20See%20additional%20error%20messages%20for%20details%2e
[L_LONGMESSAGE0] => Order%20total%20is%20missing%2e
[L_SEVERITYCODE0] => Error
)

我们正在使用同一个沙盒贝宝帐户进行相同的交易,但他没有收到任何错误并且付款得到处理。在过去的 2 周里,我已经给 paypal 打了 5 次电话,但他们都非常无益,只是要求我继续检查我的电子邮件以获得他们应该 24-72 小时的回复。同样,已经 2 周了。

任何帮助将不胜感激。

【问题讨论】:

    标签: paypal paypal-sandbox paypal-adaptive-payments


    【解决方案1】:

    您遇到的错误非常直截了当。发送到 PayPal 的 API 请求的 AMT 参数必须为空值,否则 AMT 参数将完全被排除在请求之外。

    您需要让您的开发人员保存日志(他应该已经保存了),以便您可以看到生成的原始 API 请求和响应。您在此处显示的基本上是响应,因此您也只需要能够看到请求即可。

    然后,您可以与您的开发人员确认该请求确实是错误的,他可以帮助您解决为什么会发生这种情况。这种事情经常发生,因为会话数据由于某种原因而被丢弃。很难说不查看请求,然后查看您的请求是如何构建的,以跟踪该值丢失的确切位置。

    不过,这绝对不是 PayPal 方面发生的任何事情,而且他们可能无法为您提供太多帮助,只是可能会提供一份请求副本,表明您确实遗漏了订单金额。不过,由您和您的开发人员来解决这个问题。

    【讨论】:

    • 感谢您的建议。但是,这些参数对我的开发人员来说工作正常。我在自己的设备上遇到了这些问题。他能够毫无问题地完成所有交易。我在 Chrome 和 Safari 上遇到了这个问题,但在 Firefox 上没有。我已经清除了我的缓存和 cookie,但它仍然会发生。
    • 再说一次,这就是您需要日志的原因,这样您就可以看到您执行此操作时出了什么问题,以及他执行此操作时发生了什么。
    【解决方案2】:

    问题是您没有在 DoExpressCheckoutPayment API 调用中传递 PAYMENTREQUEST_0_AMT 参数。您在 SetExpressCheckout 中正确传递,但您还需要在 DoExpressCheckout API 中传递。

    【讨论】:

      猜你喜欢
      • 2017-07-11
      • 1970-01-01
      • 2023-04-10
      • 2015-07-17
      • 2016-04-17
      • 2012-11-07
      • 2011-10-08
      • 2011-04-23
      • 1970-01-01
      相关资源
      最近更新 更多