私は現在、支払いを処理するためにNVP(paypalfunctions.php)でPayPalとの新しい統合に取り掛かっています。同じ統合は他のプロジェクトでも機能しますが、現在のプロジェクトでは失敗します。PayPal NVP統合 - 支払いが処理されない
説明:支払いリンクが正常に作成されます - Paypalへのリダイレクト - ログインし、額(1または5 EUR)を支払う - 成功URLにリダイレクトされます。
問題:ショップの口座や送金先の口座にはお支払いが見当たらず、私はPayPalからコールバックを受け取らないため、支払いは処理されない/受け入れられませんでしたが、Paypalからの情報はありません。
私が使用NVPの設定は最小限であり、配信アドレスdont必要:
$nvpstr="&PAYMENTREQUEST_0_AMT=". $paymentAmount;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_PAYMENTACTION=" . $paymentType;
$nvpstr = $nvpstr . "&RETURNURL=" . $returnURL;
$nvpstr = $nvpstr . "&CANCELURL=" . $cancelURL;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_CURRENCYCODE=" . $currencyCodeType;
$nvpstr = $nvpstr . "&NOSHIPPING=1";
$nvpstr = $nvpstr . "&BRANDNAME=MyName";
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_CUSTOM=" . $paymentId;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_NOTIFYURL=https://my.callback.com";
URLが成功作成されると、すべての変数が設定されているが。
これはなぜ機能しないのでしょうか?
多くのおかげ
bert2002
こんにちは、ありがとうございます。私はCallShortcutExpressCheckout()を使って十分であるはずです(あるいは彼らは最後の週/月に何かを変更しました)、あるいは私はそれを全部間違えてしまいました。私は[リンク](https://devtools-paypal.com/integrationwizard/ecpaypal/code.php)をたどりましたが、あなたの機能は言及していません。 SDKを統合することができれば、SDKをチェックします。なぜ私がもう働いていないのか知りたいですか? – bert2002
さて、私は方法を見つけましたが、そのような奇妙なものです。最初に私はすべての詳細を含むCallMarkExpressCheckout()を作成し、ユーザーは支払いを行い、DoExpressCheckoutPayment()でトークンとPayerIDを処理するReturnURLにリダイレクトされます。その後、支払いが承認されます。このワークフローは意味がありますか?別のプロジェクトでは、すべての2番目の部分がコールバックでハンドリングされ、ユーザーからのReturnUrlではハンドルされません。そのReturnUrlは奇妙なものです。 – bert2002
私が概説したAPI名は実際の名前です。これらの関数は、SetExpressCheckoutリクエストで特定のことを行うためのものです。たとえば、SetExpressCheckoutのパラメータの1つを「Billing」または「Mark」に設定することができ、その設定方法に応じて使用環境が異なります。いずれにしても、これらの関数はSetExpressCheckoutを実行しており、おそらくリダイレクトを処理していますが、SetExpressCheckoutで返されたReturnURLに返された後にDoExpressCheckoutPayment呼び出しを追加する必要があります。 –