0

我正在开发 NVP API 集成,整个支付流程运行正常。完成后我从 PayPal 获得的回复并未提供所有正确信息。

这是我发送 PayPal 的代码

&PAYMENTREQUEST_0_AMT=44.48
&PAYMENTREQUEST_0_ITEMAMT=40
&PAYMENTREQUEST_0_TAXAMT=4.48
&PAYMENTREQUEST_0_SHPPINGAMT=0
&PAYMENTREQUEST_0_INVNUM=5193f0cca7e70
&PAYMENTREQUEST_0_CURRENCYCODE=USD
&PAYMENTREQUEST_0_DESC=Test payment desc
&L_PAYMENTREQUEST_0_AMT0=40
&L_PAYMENTREQUEST_0_QTY0=1
&L_PAYMENTREQUEST_0_NAME0=Test item
&L_PAYMENTREQUEST_0_NUMBER0=5191cd62462fb
&L_PAYMENTREQUEST_0_DESC0=Test item desc
&L_PAYMENTREQUEST_0_SHPPINGAMT0=0.00
&L_PAYMENTREQUEST_0_TAXAMT0=4.48
&RETURNURL=[REMOVED]
&CANCELURL=[REMOVED]
&BRANDNAME=Some Con 2014
&CUSTOMERSERVICENUMBER=000-000-0000

订单通过并处理了适当的付款,但返回的信息缺少税务信息。

[TOKEN] => EC-1KS56755YX305151R
[SUCCESSPAGEREDIRECTREQUESTED] => false
[TIMESTAMP] => 2013-05-15T20:48:42Z
[CORRELATIONID] => 553a6a47ec1
[ACK] => Success
[VERSION] => 98
[BUILD] => 5956203
[INSURANCEOPTIONSELECTED] => false
[SHIPPINGOPTIONISDEFAULT] => false
[PAYMENTINFO_0_TRANSACTIONID] => 1XV29769HY7702037
[PAYMENTINFO_0_TRANSACTIONTYPE] => expresscheckout
[PAYMENTINFO_0_PAYMENTTYPE] => instant
[PAYMENTINFO_0_ORDERTIME] => 2013-05-15T20:48:41Z
[PAYMENTINFO_0_AMT] => 44.48
[PAYMENTINFO_0_FEEAMT] => 1.59
[PAYMENTINFO_0_TAXAMT] => 0.00
[PAYMENTINFO_0_CURRENCYCODE] => USD
[PAYMENTINFO_0_PAYMENTSTATUS] => Completed
[PAYMENTINFO_0_PENDINGREASON] => None
[PAYMENTINFO_0_REASONCODE] => None
[PAYMENTINFO_0_PROTECTIONELIGIBILITY] => Eligible
[PAYMENTINFO_0_PROTECTIONELIGIBILITYTYPE] => ItemNotReceivedEligible,UnauthorizedPaymentEligible
[PAYMENTINFO_0_SECUREMERCHANTACCOUNTID] => 3JTQYBPNDRWES
[PAYMENTINFO_0_ERRORCODE] => 0
[PAYMENTINFO_0_ACK] => Success

为什么 PAYMENTINFO_0_TAXAMT 在 4.48 时返回 0?

我还遇到了一个问题,即从 PayPal 购买时发送的电子邮件没有列出所购买的物品,而只是列出了总金额。通知描述不是项目描述,而是整体订单描述。

-----------------------------------
Purchase Details
-----------------------------------

Description: Test payment desc
Unit price: $44.48 USD
Qty: 1
Amount: $44.48 USD


Subtotal: $44.48 USD
4

1 回答 1

1

未显示税款,因为它没有在您的 DoExpressCheckoutPayment API 调用中传递。我检查了日志,我只显示您在 SetExpressCheckout API 调用中传递了它,而不是在 DoExpressCheckoutPayment API 调用中传递了它。如果您希望它返回,您需要在 Do EC 调用中传递它。这也是您的描述所发生的情况。它没有在 Do EC 调用中被忽略。

于 2013-05-16T13:57:39.417 回答