2012-10-20 128 views
6

我目前很難理解PayPal EC集成的響應。PayPal Express Checkout積分響應

GetExpressCheckoutDetails響應

[CHECKOUTSTATUS] => PaymentActionNotInitiated 

但在DoExpressCheckout響應,

[PAYMENTINFO_0_PAYMENTSTATUS] => Completed 

我很困惑,這是否意味着買方已被起訴並付款成功與否?我無法找到在貝寶論壇解答和門戶要麼... weeeew

下面是完整的響應細節:

GetExpressCheckout響應:

 [TOKEN] => EC-76768931K5394210Y 
     [CHECKOUTSTATUS] => PaymentActionNotInitiated 
     [TIMESTAMP] => 2012-10-20T07:15:22Z 
     [CORRELATIONID] => 2b85ff556730a 
     [ACK] => Success 
     [VERSION] => 94.0 
     [BUILD] => 3926908 
     [EMAIL] => [email protected] 
     [PAYERID] => 3PCFRVX65A7Y8 
     [PAYERSTATUS] => verified 
     [FIRSTNAME] => Test 
     [LASTNAME] => Peepee 
     [COUNTRYCODE] => US 
     [CURRENCYCODE] => PHP 
     [AMT] => 895.00 
     [ITEMAMT] => 895.00 
     [SHIPPINGAMT] => 0.00 
     [HANDLINGAMT] => 0.00 
     [TAXAMT] => 0.00 
     [INVNUM] => 1231313213213 
     [INSURANCEAMT] => 0.00 
     [SHIPDISCAMT] => 0.00 
     [L_NAME0] => Test Item 
     [L_QTY0] => 1 
     [L_TAXAMT0] => 0.00 
     [L_AMT0] => 895.00 
     [L_ITEMWEIGHTVALUE0] => 0.00000 
     [L_ITEMLENGTHVALUE0] => 0.00000 
     [L_ITEMWIDTHVALUE0] => 0.00000 
     [L_ITEMHEIGHTVALUE0] => 0.00000 
     [PAYMENTREQUEST_0_CURRENCYCODE] => PHP 
     [PAYMENTREQUEST_0_AMT] => 895.00 
     [PAYMENTREQUEST_0_ITEMAMT] => 895.00 
     [PAYMENTREQUEST_0_SHIPPINGAMT] => 0.00 
     [PAYMENTREQUEST_0_HANDLINGAMT] => 0.00 
     [PAYMENTREQUEST_0_TAXAMT] => 0.00 
     [PAYMENTREQUEST_0_INVNUM] => 1231313213213 
     [PAYMENTREQUEST_0_INSURANCEAMT] => 0.00 
     [PAYMENTREQUEST_0_SHIPDISCAMT] => 0.00 
     [PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED] => false 
     [L_PAYMENTREQUEST_0_NAME0] => Test Item 
     [L_PAYMENTREQUEST_0_QTY0] => 1 
     [L_PAYMENTREQUEST_0_TAXAMT0] => 0.00 
     [L_PAYMENTREQUEST_0_AMT0] => 895.00 
     [L_PAYMENTREQUEST_0_ITEMWEIGHTVALUE0] => 0.00000 
     [L_PAYMENTREQUEST_0_ITEMLENGTHVALUE0] => 0.00000 
     [L_PAYMENTREQUEST_0_ITEMWIDTHVALUE0] => 0.00000 
     [L_PAYMENTREQUEST_0_ITEMHEIGHTVALUE0] => 0.00000 
     [PAYMENTREQUESTINFO_0_ERRORCODE] => 0 

DoExpressCheckout響應:

 [TOKEN] => EC-76768931K5394210Y 
     [SUCCESSPAGEREDIRECTREQUESTED] => false 
     [TIMESTAMP] => 2012-10-20T07:15:27Z 
     [CORRELATIONID] => ec7af38c18968 
     [ACK] => Success 
     [VERSION] => 94.0 
     [BUILD] => 3926908 
     [INSURANCEOPTIONSELECTED] => false 
     [SHIPPINGOPTIONISDEFAULT] => false 
     [PAYMENTINFO_0_TRANSACTIONID] => 02800680NT5556907 
     [PAYMENTINFO_0_TRANSACTIONTYPE] => expresscheckout 
     [PAYMENTINFO_0_PAYMENTTYPE] => instant 
     [PAYMENTINFO_0_ORDERTIME] => 2012-10-20T07:15:26Z 
     [PAYMENTINFO_0_AMT] => 895.00 
     [PAYMENTINFO_0_FEEAMT] => 49.91 
     [PAYMENTINFO_0_TAXAMT] => 0.00 
     [PAYMENTINFO_0_CURRENCYCODE] => PHP 
     [PAYMENTINFO_0_PAYMENTSTATUS] => Completed 
     [PAYMENTINFO_0_PENDINGREASON] => None 
     [PAYMENTINFO_0_REASONCODE] => None 
     [PAYMENTINFO_0_PROTECTIONELIGIBILITY] => Ineligible 
     [PAYMENTINFO_0_PROTECTIONELIGIBILITYTYPE] => None 
     [PAYMENTINFO_0_SECUREMERCHANTACCOUNTID] => K3TTNE7MKRJUN 
     [PAYMENTINFO_0_ERRORCODE] => 0 
     [PAYMENTINFO_0_ACK] => Success 

謝謝很多! :)

回答

9

付款不會發生,直到調用DoExpressCheckout。

在第一步(SetExpressCheckout +重定向到PayPal)買方給你授權給他。現在,您可以通過致電DoExpressCheckout來獲得他的錢。

如果您在 DoExpressCheckout之後致電GetExpressCheckoutDetails ,您應該收到付款完成響應。

編輯: 您可能想要在DoExpresCheckout之前調用GetExpressCheckoutDetails的一個原因是獲取買家選擇的地址,以防萬一它可能改變總數,所以它仍然是一個有效的用例。

+0

我明白了,這就是爲什麼它很混亂。我遵循了PayPal Express Checkout集成指南(最後更新日期:2012年8月7日),其中它是SetExpressCheckout - > GetExpressCheckoutDetails - > DoExpressCheckoutPayment。好的,我將忽略GetExpressCheckout checkout_status並使用DoExpressCheckoutPayment的返回數據進行處理。謝謝! :) – Woppi

+0

正確,我們在DoExpressCheckout之前執行GetExpressCheckoutDetails以獲取國家/地區,以便我們決定是否增加VAT TAX .. –

相關問題