php - PayPal NVP API 错误 10413 - 购物车商品总金额与订单金额不匹配

标签 php paypal paypal-nvp nvp

我在使用经典 PayPal NVP API 时遇到问题。它在提示总数如何不匹配,我真的不明白为什么会这样。

The NVP name-value pairs which are sent to Paypal
array(19) {
  ["METHOD"]=>
  string(18) "SetExpressCheckout"
  ["AMT"]=>
  string(5) "48.00"
  ["MAXAMT"]=>
  string(5) "48.00"
  ["RETURNURL"]=>
  string(40) "http://vikingchallenge/site/payPalReturn"
  ["CANCELURL"]=>
  string(40) "http://vikingchallenge/site/payPalCancel"
  ["REQCONFIRMSHIPPING"]=>
  string(1) "0"
  ["NOSHIPPING"]=>
  string(1) "1"
  ["LOCALECODE"]=>
  string(2) "GB"
  ["PAYMENTREQUEST_0_AMT"]=>
  string(5) "48.00"
  ["PAYMENTREQUEST_0_CURRENCYCODE"]=>
  string(3) "GBP"
  ["PAYMENTREQUEST_0_ITEMAMT"]=>
  string(2) "40"
  ["PAYMENTREQUEST_0_TAXAMT"]=>
  string(4) "8.00"
  ["PAYMENTREQUEST_0_DESC"]=>
  string(6) "Adults"
  ["PAYMENTREQUEST_0_ALLOWEDPAYMENTMETHOD"]=>
  string(18) "InstantPaymentOnly"
  ["L_PAYMENTREQUEST_0_NAME0"]=>
  string(6) "Adults"
  ["L_PAYMENTREQUEST_0_DESC0"]=>
  string(6) "Adults"
  ["L_PAYMENTREQUEST_0_AMT0"]=>
  string(2) "20"
  ["L_PAYMENTREQUEST_0_QTY0"]=>
  string(1) "2"
  ["L_PAYMENTREQUEST_0_TAXAMT0"]=>
  string(4) "8.00"
}

The response from Paypal
array(9) {
  ["TIMESTAMP"]=>
  string(20) "2013-07-15T14:54:32Z"
  ["CORRELATIONID"]=>
  string(13) "f64e080a80db6"
  ["ACK"]=>
  string(7) "Failure"
  ["VERSION"]=>
  string(4) "92.0"
  ["BUILD"]=>
  string(7) "6868861"
  ["L_ERRORCODE0"]=>
  string(5) "10413"
  ["L_SHORTMESSAGE0"]=>
  string(94) "Transaction refused because of an invalid argument. See additional error messages for details."
  ["L_LONGMESSAGE0"]=>
  string(63) "The totals of the cart item amounts do not match order amounts."
  ["L_SEVERITYCODE0"]=>
  string(5) "Error"
}

最佳答案

将 L_PAYMENTREQUEST_0_TAXAMT0 更改为 4.00,因为您有此行项目的 qty=2。

METHOD=SetExpressCheckout
CANCELURL=http://vikingchallenge/site/payPalCancel
RETURNURL=http://vikingchallenge/site/payPalReturn
MAXAMT=48.00
REQCONFIRMSHIPPING=0
NOSHIPPING=1
LOCALECODE=GB
PAYMENTREQUEST_0_AMT=48.00
PAYMENTREQUEST_0_CURRENCYCODE=GBP
PAYMENTREQUEST_0_PAYMENTACTION=SALE
PAYMENTREQUEST_0_ITEMAMT=40
PAYMENTREQUEST_0_TAXAMT=8.00
PAYMENTREQUEST_0_DESC=Adults
PAYMENTREQUEST_0_ALLOWEDPAYMENTMETHOD=InstantPaymentOnly
L_PAYMENTREQUEST_0_NAME0=Adults
L_PAYMENTREQUEST_0_DESC0=Adults
L_PAYMENTREQUEST_0_AMT0=20
L_PAYMENTREQUEST_0_TAXAMT0=4.00
L_PAYMENTREQUEST_0_QTY0=2

关于php - PayPal NVP API 错误 10413 - 购物车商品总金额与订单金额不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17657486/

相关文章:

javascript - 通过 AJAX 向 PHP 发送多组复选框

php - PHP/MySQL-查询不采用表格中的动态选项值

paypal-nvp - 在 ASP.Net 应用程序中,与 Net SDK for PayPal 相比,NVP 是更好的开发选项吗?

php - 我正在尝试在 php 中运行邮件表单。这是带有 Bootstrap 3.0 的 HTML

PayPal 不会在真实账户上调用 IPN

ruby-on-rails - rails 3 : Paypal Adaptive Payments (ActiveMerchant? )

.net - 在 .NET 2.0+ 中针对 PayPal API 进行编码的示例?

asp.net - 从 Paypal 网站返回后,使用 Paypal 付款不起作用

php - 如何在 PHP 中获取关联数组的索引?