我遇到了paypal的问题。我只是在一个网站上设置它,它大部分时间都可以正常工作。但有时,我遇到错误 10413:
L_SHORTMESSAGE0 -> 由于参数无效,交易被拒绝。有关详细信息,请参阅其他错误消息。
L_LONGMESSAGE0 -> 购物车项目总金额与订单金额不匹配。
奇怪的是,当不遵守此逻辑时,显然会引发此错误:
ITEMAMT + SHIPPINGAMT - SHIPDISCANT+ TAXAMT = AMT
所有 L_PAYMENTREQUEST_0_AMT* = ITEMAMT 的总和
在我的例子中,这个逻辑得到了尊重(这里是一个引发错误的发送数据示例)。
:PAYMENTREQUEST_0_INVNUM => "480905"
:PAYMENTREQUEST_0_AMT => "11.96"
:PAYMENTREQUEST_0_TAXAMT => "0"
:PAYMENTREQUEST_0_SHIPPINGAMT => "0"
:PAYMENTREQUEST_0_SHIPDISCAMT => "0"
:PAYMENTREQUEST_0_CURRENCYCODE => 美元
:PAYMENTREQUEST_0_ITEMAMT => "11.96"
:PAYMENTREQUEST_0_CUSTOM => 用户#551588
:L_PAYMENTREQUEST_0_PAYMENTACTION => 销售
:L_PAYMENTREQUEST_0_NAME0 => Xhilaration 上衣,无袖 XXL
:L_PAYMENTREQUEST_0_AMT0 => "3.99"
:L_PAYMENTREQUEST_0_QTY0 => "1"
:L_PAYMENTREQUEST_0_ITEMCATEGORY0 => 数字
:L_PAYMENTREQUEST_0_NAME1 => Hillard & Hanson 上衣,短袖 XL
:L_PAYMENTREQUEST_0_AMT1 => "3.99"
:L_PAYMENTREQUEST_0_QTY1 => "1"
:L_PAYMENTREQUEST_0_ITEMCATEGORY1 => 数字
:L_PAYMENTREQUEST_0_NAME2 => 运输和处理 (USPS)
:L_PAYMENTREQUEST_0_AMT2 => "3.98"
:L_PAYMENTREQUEST_0_QTY2 => "1"
:L_PAYMENTREQUEST_0_ITEMCATEGORY2 => 数字
SHIPPINGAMT 和 SHIPDISCANT 和 TAXAMT 一直 = 0,因为我们将运费和促销视为负金额的项目。所以我们基本上只需要所有L_PAYMENTREQUEST_0_AMT* = ITEMAMT = AMT的总和,就是这样。
其他有趣的事情是,这似乎是随机发生的(比如有时它不适用于某些数据,而相同的数据会在一小时后起作用)。
我不知道这可能来自哪里,所以欢迎任何想法。
谢谢!