5

このエラーに関する投稿はたくさんありますが、それらはすべて私には当てはまりません。金額が一致しない理由がよくわかりません。AMT0 * QTY0 に一致する ITEMAMT があります。AMT は、ITEMAMT + SHIPPINGAMT に一致します。ドキュメントを何度も確認しましたが、実際にはこのように機能するはずです。出荷を完全に削除すると機能します...

チェックアウト URL の AMT も 73.9 です。

誰かがこの非常に紛らわしいエラーに精通しており、私が間違っていることを知っていることを本当に願っています...

前もって感謝します

Array
(
    [TIMESTAMP] => 2013-01-24T22:56:09Z
    [CORRELATIONID] =>
    [ACK] => Failure
    [VERSION] => 62.0
    [BUILD] => 4181146
    [L_ERRORCODE0] => 10413
    [L_SHORTMESSAGE0] => Transaction refused because of an invalid argument. See additional error messages for details.
    [L_LONGMESSAGE0] => The totals of the cart item amounts do not match order amounts.
    [L_SEVERITYCODE0] => Error
)
Array
(
    [PAYMENTREQUEST_0_PAYMENTACTION] => Sale
    [L_PAYMENTREQUEST_0_NAME0] => XXXX
    [L_PAYMENTREQUEST_0_NUMBER0] => 30533
    [L_PAYMENTREQUEST_0_DESC0] => XXXX
    [L_PAYMENTREQUEST_0_AMT0] => 30.95
    [L_PAYMENTREQUEST_0_QTY0] => 2
    [PAYMENTREQUEST_0_ITEMAMT] => 61.9
    [PAYMENTREQUEST_0_TAXAMT] => 0
    [PAYMENTREQUEST_0_SHIPPINGAMT] => 12
    [PAYMENTREQUEST_0_INSURANCEAMT] => 0
    [PAYMENTREQUEST_0_AMT] => 73.9
    [PAYMENTREQUEST_0_CURRENCYCODE] => USD
    [REQCONFIRMSHIPPING] => 1
    [PAYMENTREQUEST_0_SHIPTOSTREET] => XXXX
    [PAYMENTREQUEST_0_SHIPTOCITY] => XXXX
    [PAYMENTREQUEST_0_SHIPTOSTATE] => XX
    [PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE] => XX
    [PAYMENTREQUEST_0_SHIPTOZIP] => XXXXXX
    [PAYMENTREQUEST_0_SHIPTOPHONENUM] => XXXXXXXX
)
4

3 に答える 3

4

小数点以下 2 桁の通貨を送信することが必須です。1 のみを提供しているようです。

$amt = 61.9;
$amt = sprintf("%.2f",$amt); // 61.90

金額が正しい形式でないため、Paypal はこのエラーを返します。

Table A.2の下を見てください:AMT

http://www.paypalobjects.com/en_US/ebook/PP_NVPAPI_DeveloperGuide/Appx_fieldreference.html

このルールは、'money' パラメータを設定するたびに適用する必要があります。

于 2013-01-24T23:23:01.347 に答える
2

私の質問への答えは、通りすがりの人のほとんどにとっておそらく役に立たないでしょう。しかし、私のアイテムの1つには、説明に&が含まれていました(L_PAYMENTREQUEST_0_DESC0)。'&'は、CURLで渡されたデータをエスケープしました。そして、それがエラーを引き起こしました(これは完全にオフです)。これは、&を含む文字を入力したときにも発生することを覚えておいてください。たとえば、éは次のようになります。é

最初の投稿からアイテムの説明を削除したことをお詫びしますが、金額に関するエラーメッセージが表示されたため、これがそれと関係があるとは思いませんでした。

于 2013-01-24T23:51:21.263 に答える
0

私も数日前に通信しようとしたときに同じ問題を抱えていましたが、これらの注文の合計が実際には一致しないことに気付きました。50 のようないくつかの整数を項目の金額と合計として (歳差なしで) 通信しようとすると、エラーは発生しません。私も頭を悩ませていましたが、ペイパルには問題があります。(しかし、実際にそうでした) ですから、計算を確認して、paypal は 2 歳差または小数点以下 2 桁までの金額を受け入れることに注意してください。私はサミュエルの言ったことに同意します。

送料でも、12 ではなく 12.00 や 61.90、73.90 などの数字で送信した方がよいでしょう。

于 2013-01-25T07:35:17.773 に答える