2014-02-07 46 views
3

我玩沙盒将快速结帐到我的网站。 Eveyrthing进展良好:用户点击付款按钮,重定向到PayPal,使用沙箱买方的凭据登录到他的沙盒页面,点击继续按钮,最后重定向到我的网站,只需点击确认按钮。但是,Sandbox Seller和Byer测试账户中没有任何反应。 我发现GetExpressCheckoutDetails和DoExpressCheckoutPayment都包含CHECKOUTSTATUS = PaymentActionNotInitiated。根据Paypal integration - GetExpressCheckout “在买方登录到PayPal账户或登录账户之前提交GetExpressCheckoutDetails API调用时,发生PaymentActionNotInitiated值,返回到您的网站,但尚未完成付款。”PaymentActionNotInitiated何时快速结帐

那么什么意思是“......但尚未完成付款”?我假设payear批准他的付款时点击继续按钮在贝宝页之前,返回到我的网站。因此,重定向后,我只需拨打GetExpressCheckoutDetails即可获取付款人ID,然后致电DoExpressCheckoutPayment。付款人只需点击确认按钮即可继续。

由于CHECKOUTSTATUS = PaymentActionNotInitiated从GetExpressCheckoutDetails发生第一次发生在重定向到站点后,我可以预料到某些事情必须由付款人在Paypal页面之间完成继续点击并重定向到该站点。但没有更多。有人可以评论吗?

下面是一个列表或NVP excange:

-- SetExpressCheckout Request -- 
https://api-3t.sandbox.paypal.com/nvp?Method=SetExpressCheckout& 
VERSION=93.0& 
USER=<facilitator's id>& 
PWD=<facilitator's pwd>& 
SIGNATURE=<facilitator's signature>& 
PAYMENTREQUEST_0_PAYMENTACTION=SALE& 
PAYMENTREQUEST_0_AMT=25.00& 
PAYMENTREQUEST_0_CURRENCYCODE=USD& 
RETURNURL=http%3a%2f%2flocalhost%3a3655%2faccount%2fconfirmpayment.aspx?im=11402062107& 
CANCELURL=http%3a%2f%2flocalhost%3a3655%2f%3fr%3d1 

-- SetExpressCheckout Response -- 
TOKEN=EC-6BF53699XL820525R& 
TIMESTAMP=2014-02-06T10:07:08Z& 
CORRELATIONID=b1c1c6199de7e& 
ACK=Success& 
VERSION=93.0& 
BUILD=9605603 

-- Redirect to PayPal -- 
https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout& 
token=EC-6BF53699XL820525R 

-- GetExpressCheckoutDetails Request -- 
https://api-3t.sandbox.paypal.com/nvp?Method=GetExpressCheckoutDetails& 
VERSION=93.0& 
USER=<facilitator's id>& 
PWD=<facilitator's pwd>& 
SIGNATURE=<facilitator's signature>& 
TOKEN=EC-6BF53699XL820525R 

-- GetExpressCheckoutDetails Response -- 
TOKEN=EC-6BF53699XL820525R& 
CHECKOUTSTATUS=PaymentActionNotInitiated& 
TIMESTAMP=2014-02-06T10:08:17Z& 
CORRELATIONID=dcbb85815cdc4& 
ACK=Success& 
VERSION=93.0& 
BUILD=9605603& 
EMAIL=<payer's e-mail>& 
PAYERID=ZXPJ82TPPFGQ6& 
PAYERSTATUS=verified& 
FIRSTNAME=Jonh& 
LASTNAME=Doe& 
COUNTRYCODE=US& 
SHIPTONAME=Jonh Doe& 
SHIPTOSTREET=1 Main St& 
SHIPTOCITY=San Jose& 
SHIPTOSTATE=CA& 
SHIPTOZIP=95131& 
SHIPTOCOUNTRYCODE=US& 
SHIPTOCOUNTRYNAME=United States& 
ADDRESSSTATUS=Confirmed& 
CURRENCYCODE=USD& 
AMT=25.00& 
SHIPPINGAMT=0.00& 
HANDLINGAMT=0.00& 
TAXAMT=0.00& 
INSURANCEAMT=0.00& 
SHIPDISCAMT=0.00& 
PAYMENTREQUEST_0_CURRENCYCODE=USD& 
PAYMENTREQUEST_0_AMT=25.00& 
PAYMENTREQUEST_0_SHIPPINGAMT=0.00& 
PAYMENTREQUEST_0_HANDLINGAMT=0.00& 
PAYMENTREQUEST_0_TAXAMT=0.00& 
PAYMENTREQUEST_0_INSURANCEAMT=0.00& 
PAYMENTREQUEST_0_SHIPDISCAMT=0.00& 
PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED=false& 
PAYMENTREQUEST_0_SHIPTONAME=Jonh Doe& 
PAYMENTREQUEST_0_SHIPTOSTREET=1 Main St& 
PAYMENTREQUEST_0_SHIPTOCITY=San Jose& 
PAYMENTREQUEST_0_SHIPTOSTATE=CA& 
PAYMENTREQUEST_0_SHIPTOZIP=95131& 
PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE=US& 
PAYMENTREQUEST_0_SHIPTOCOUNTRYNAME=United States& 
PAYMENTREQUEST_0_ADDRESSSTATUS=Confirmed& 
PAYMENTREQUESTINFO_0_ERRORCODE=0 

-- DoExpressCheckoutPayment Request -- 
https://api-3t.sandbox.paypal.com/nvp?Method=DoExpressCheckoutPayment& 
VERSION=93.0& 
USER=<facilitator's id>& 
PWD=<facilitator's pwd>& 
SIGNATURE=<facilitator's signature>& 
TOKEN=EC-6BF53699XL820525R& 
PAYERID=ZXPJ82TPPFGQ6& 
PAYMENTREQUEST_0_PAYMENTACTION=SALE& 
PAYMENTREQUEST_0_AMT=25.00& 
PAYMENTREQUEST_0_CURRENCYCODE=USD 

-- DoExpressCheckoutPayment Response -- 
TOKEN=EC-6BF53699XL820525R& 
CHECKOUTSTATUS=PaymentActionNotInitiated& 
TIMESTAMP=2014-02-06T10:08:48Z& 
CORRELATIONID=b8fc094441d51& 
ACK=Success& 
VERSION=93.0& 
BUILD=9605603& 
EMAIL=<payer's e-mail>& 
PAYERID=ZXPJ82TPPFGQ6& 
PAYERSTATUS=verified& 
FIRSTNAME=Jonh& 
LASTNAME=Doe& 
COUNTRYCODE=US& 
SHIPTONAME=Jonh Doe& 
SHIPTOSTREET=1 Main St& 
SHIPTOCITY=San Jose& 
SHIPTOSTATE=CA& 
SHIPTOZIP=95131& 
SHIPTOCOUNTRYCODE=US& 
SHIPTOCOUNTRYNAME=United States& 
ADDRESSSTATUS=Confirmed& 
CURRENCYCODE=USD& 
AMT=25.00& 
SHIPPINGAMT=0.00& 
HANDLINGAMT=0.00& 
TAXAMT=0.00& 
INSURANCEAMT=0.00& 
SHIPDISCAMT=0.00& 
PAYMENTREQUEST_0_CURRENCYCODE=USD& 
PAYMENTREQUEST_0_AMT=25.00& 
PAYMENTREQUEST_0_SHIPPINGAMT=0.00& 
PAYMENTREQUEST_0_HANDLINGAMT=0.00& 
PAYMENTREQUEST_0_TAXAMT=0.00& 
PAYMENTREQUEST_0_INSURANCEAMT=0.00& 
PAYMENTREQUEST_0_SHIPDISCAMT=0.00& 
PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED=false 
&PAYMENTREQUEST_0_SHIPTONAME=Jonh Doe& 
PAYMENTREQUEST_0_SHIPTOSTREET=1 Main St& 
PAYMENTREQUEST_0_SHIPTOCITY=San Jose&PAYMENTREQUEST_0_SHIPTOSTATE=CA& 
PAYMENTREQUEST_0_SHIPTOZIP=95131& 
PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE=US& 
PAYMENTREQUEST_0_SHIPTOCOUNTRYNAME=United States& 
PAYMENTREQUEST_0_ADDRESSSTATUS=Confirmed& 
PMENTREQUESTINFO_0_ERRORCODE=0 
+0

你有没有得到这个解决?我有完全相同的问题。 – thetimmer

回答

0

我有同样的问题。

DoExpressCheckoutPayment应该返回PaymentActionCompleted后再次调用GetExpressCheckoutDetails

当得到的PaymentActionCompletedCHECKOUTSTATUS,响应将是类似:

TOKEN=EC%2d3LD60853SC435481J& 
BILLINGAGREEMENTACCEPTEDSTATUS=0& 
CHECKOUTSTATUS=PaymentActionCompleted& 
TIMESTAMP=2015%2d01%2d28T17%3a03%3a01Z& 
CORRELATIONID=c36f3ff4b39d2& 
ACK=Success& 
VERSION=93 
&BUILD=15009693& 
EMAIL=mysupersecretemailaddress, 
PAYERID=H54VEN293PLFL& 
PAYERSTATUS=verified& 
FIRSTNAME=Test& 
LASTNAME=User&COUNTRYCODE=GB& 
CURRENCYCODE=GBP& 
AMT=35%2e98& 
SHIPPINGAMT=0%2e00& 
HANDLINGAMT=0%2e00& 
TAXAMT=0%2e00& 
INSURANCEAMT=0%2e00& 
SHIPDISCAMT=0%2e00& 
PAYMENTREQUEST_0_CURRENCYCODE=GBP& 
PAYMENTREQUEST_0_AMT=35%2e98& 
PAYMENTREQUEST_0_SHIPPINGAMT=0%2e00& 
PAYMENTREQUEST_0_HANDLINGAMT=0%2e00& 
PAYMENTREQUEST_0_TAXAMT=0%2e00& 
PAYMENTREQUEST_0_INSURANCEAMT=0%2e00& 
PAYMENTREQUEST_0_SHIPDISCAMT=0%2e00& 
PAYMENTREQUEST_0_TRANSACTIONID=3CU92636XH572882Y& 
PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED=false& 
PAYMENTREQUESTINFO_0_TRANSACTIONID=3CU92636XH572882Y& 
PAYMENTREQUESTINFO_0_ERRORCODE=0