私は電子商取引サイトを作っており、Paypalの統合は見かけ上機能しています。私はショッピングカートを持っています。その中にはすべてのアイテムが集計され、送料が加算され、その数がペイパルに送付されます。Paypal Sandboxが支払いを処理しないのはなぜですか?
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);
にユーザーをリダイレクトし、ヒットボタンをクリックして、私のサイトのチェックアウトページにリダイレクトされます。
です。しかし、私がサンドボックスの口座を確認すると、実際に送金される金額はありません。
最も一般的な原因は、リダイレクトURLからuseraction = commitパラメータが欠落していますが、問題がないためです。
成功URLにリダイレクトされた後、私は 'DoExpressCheckoutPayment'を呼び出しました。支払い詳細を再フェッチし、 'CHECKOUTSTATUS'が' PaymentActionCompleted'であることを示しましたが、ダッシュボードが[取引]タブに表示されていないことを確認しました。 – kapitanluffy