[今すぐ購入]ボタンを使用してペイパルの支払いをサイトに追加します。これは、ペイパルにフォームを投稿し、ユーザーがペイパルのサイトで支払いを完了することを理解しています。
支払いが確認された後に注文を処理するには、IPNリスナーを使用しますが、注文時にサーバーでも処理を実行したいと思います。支払いの詳細をペイパルにリダイレクトする前に、最初に[今すぐ購入]ボタンを自分のサーバーに送信して注文を記録できるようにすることはできますか?
ここには 2 つのオプションがあります。
より単純ですが、ユーザーが JavaScript を持っていない場合に失敗する可能性がある最初のオプションは、ajax を使用して好きなデータをサーバーに投稿し、戻った後にのみユーザーに送信を続行させることです。
2 番目のオプションは、コード ビハインドでサーバーにデータを投稿することです。そこで、paypal への自動送信を使用して簡単なページを準備します。実際には、 post でリダイレクトします。ここでは、ソース コードとその作成方法の 1 つの例を見つけることができます。
http://www.codeproject.com/Articles/37539/Redirect-and-POST-in-ASP-NET
実際には、多くのオプションがあります。
あなたが言ったように、今すぐ購入ボタンは PayPal へのフォーム投稿にすぎません。これらのボタンに限定されるのではなく、標準変数のいずれかを使用して独自のフォームを作成できます。彼らはこれをカートのアップロード方法と呼んでいます。
この方法を使用すると、ユーザーを PayPal に送信する前に必要なローカル処理を行うことができます。独自のシステムで何らかの注文レコードを作成し、PayPal の支払い情報に含めることをお勧めします。同じ値が IPN に返されるので、支払い後に処理することもできます。
さらに可能性を広げるもう 1 つのオプションは、エクスプレス チェックアウト APIを使用することです。これにより、チェックアウト システムを完全に制御でき、標準の支払いよりも多くの機能を利用できます。Web サービス API に精通している場合は、これをお勧めします。
もちろん、IPN はエクスプレス チェックアウトにも対応しているため、必要に応じてそれを使用することもできます。