سؤال

Client's complaining he's getting:

[ACK] => Failure [VERSION] => 89.0 [BUILD] => 5551055 [L_ERRORCODE0] => 10401 [L_ERRORCODE1] => 10426 [L_ERRORCODE2] => 10413 [L_ERRORCODE3] => 10431 [L_SHORTMESSAGE0] => Transaction refused because of an invalid argument. See additional error messages for details. [L_SHORTMESSAGE1] => Transaction refused because of an invalid argument. See additional error messages for details. [L_SHORTMESSAGE2] => Transaction refused because of an invalid argument. See additional error messages for details. [L_SHORTMESSAGE3] => Transaction refused because of an invalid argument. See additional error messages for details. [L_LONGMESSAGE0] => Order total is invalid. [L_LONGMESSAGE1] => Item total is invalid. [L_LONGMESSAGE2] => The totals of the cart item amounts do not match order amounts. [L_LONGMESSAGE3] => Item amount is invalid. [L_SEVERITYCODE0] => Error [L_SEVERITYCODE1] => Error [L_SEVERITYCODE2] => Error [L_SEVERITYCODE3] => Error

But when I piece apart the string sent to the ExpressCheckout API, everything looks very nicely in order:

&L_NAME0=Socks OC11-002
&L_AMT0=10
&L_QTY0=1
&L_NAME1=Socks TC-001 X2
&L_AMT1=10
&L_QTY1=1
&L_NAME2=Tuxedo
&L_AMT2=650
&L_QTY2=1
&L_NAME3=Paypal Fee
&L_AMT3=26.13
&L_QTY3=1
&AMT=786.63
&TAXAMT=90.50
&ITEMAMT=696.13

Tax amt is 13%. Everything looks nicely matched up to me, in spite of the error. Mysterious. Any insights are very much appreciated!

هل كانت مفيدة؟

المحلول

Not sure, but those are deprecated variables. The following works:

VERSION=97.0
L_PAYMENTREQUEST_0_NAME0=Socks OC11-002
L_PAYMENTREQUEST_0_AMT0=10
L_PAYMENTREQUEST_0_QTY0=1
L_PAYMENTREQUEST_0_NAME1=Socks TC-001 X2
L_PAYMENTREQUEST_0_AMT1=10
L_PAYMENTREQUEST_0_QTY1=1
L_PAYMENTREQUEST_0_NAME2=Tuxedo
L_PAYMENTREQUEST_0_AMT2=650
L_PAYMENTREQUEST_0_QTY2=1
L_PAYMENTREQUEST_0_NAME3=Paypal Fee
L_PAYMENTREQUEST_0_AMT3=26.13
L_PAYMENTREQUEST_0_QTY3=1
PAYMENTREQUEST_0_TAXAMT=90.50
PAYMENTREQUEST_0_ITEMAMT=696.13
PAYMENTREQUEST_0_AMT=786.63
PAYMENTREQUEST_0_CURRENCYCODE=USD
PAYMENTREQUEST_0_PAYMENTACTION=Sale

As an aside, refer to the PayPal User Agreement section: "4.6 No Surcharges"

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top