我正在为一家公司工作,我们有一个工作的PayPal快速结账,其工作或多或少有些瑕疵,但我们有时会因“Express Checkout PayerID缺失”而失败。我检查了我的日志,确实没有在这些请求中发送PayerID。我进一步检查了一下,发现这是因为“GetExpressCheckoutDetails”请求首先没有返回任何PayerID,但奇怪的是它返回ACK =“Success”(这导致我的系统将其视为成功的付款尝试) 。我看了一下PayPal-API(NVP),但找不到这种情况的任何解释。有没有人知道这里会发生什么?还有其他我想念的东西吗?。
我随请求发送的数据如下:
[METHOD] => GetExpressCheckoutDetails
[VERSION] => 53.0
[PWD] => XXXXXXXXXXXXXXXXXXXX
[USER] => XXXXXXXXXXXXXXXXXXX
[SIGNATURE] => XXXXXXXXXXXXXX
[TOKEN] => XXXXXXXXXXXXXXXXXX
我在回复中收到的数据如下:
[TOKEN] => THE TOKEN I SENT
[TIMESTAMP] => XXXXXXXXXXXX
[CORRELATIONID] => XXXXXXX
[ACK] => Success
[VERSION] => 53.0
[BUILD] => 7319395
[CURRENCYCODE] => XXX
[AMT] => The value that was charged
[SHIPPINGAMT] => 0.00
[HANDLINGAMT] => 0.00
[TAXAMT] => 0.00
[INSURANCEAMT] => 0.00
[SHIPDISCAMT] => 0.00
致以最诚挚的问候,并提前致谢
学家ILLI