簡體   English   中英

為什么 Paypal 沙盒不處理付款?

[英]Why is the Paypal Sandbox not processing payments?

我正在制作一個電子商務網站,paypal 集成似乎正在工作。 我有一個購物車,將里面的所有物品加起來,加上運費,然后用這些行將該數字發送到 paypal。

string address = "https://api-3t.sandbox.paypal.com/nvp?USER=<username>&PWD=<password>&VERSION=71.0&SIGNATURE=<signature>&METHOD=SetExpressCheckout&PAYMENTREQUEST_0_AMT=" + lblTotal.Text + "&PAYMENTREQUEST_0_CURRENCYCODE=USD&RETURNURL=http://www.secretskeletonminiatures.com/checkout.aspx&CANCELURL=http://www.secretskeletonminiatures.com/cart.aspx&PAYMENTREQUEST_0_PAYMENTACTION=Sale";

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);

然后我使用 HTTPWebResponse 從 paypal 中提取響應並解析出令牌並將用戶重定向到

Response.Redirect("https://www.sandbox.paypal.com/us/cgi-bin/webscr?cmd=_express-checkout&useraction=commit&token=" + token);

當用戶到達 paypal 然后登錄並點擊“立即付款”按鈕並重定向到我網站的結帳頁面。

所以一切似乎都很好。 但是當我檢查沙盒賬戶時,實際上並沒有轉移任何資金。

最常見的原因是重定向 url 中缺少 useraction=commit 參數,但它在那里,所以這不是問題。

對於以后偶然發現這個問題的任何人。 我確實解決了。 一旦用戶在 paypal 上確認付款后返回您的站點,您仍然需要向 paypal 服務器發送 DoExpressCheckoutPayment 請求以處理付款。

您將向 DoExpressCheckoutPayment 提供 PayerID 和 TOKEN 以進行處理。 PayerID 附加在您的 RETURNURL 的 URL 中,或者可以通過使用 TOKEN 調用 GetExpressCheckoutDetails 來檢索。

當我集成支付寶時,我遇到了同樣的問題,而且他們的系統似乎有一些修改。

如果您將 go 發送到您的買家帳戶,您可以在待處理的 state 中看到您的付款,並在幾天內獲得批准,商家帳戶的行為相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM