PayPalの戻りURLを設定して自動で戻るようにするには?質問する

PayPalの戻りURLを設定して自動で戻るようにするには?質問する

これは次の質問に対するフォローアップの質問です:PHP: PayPal チェックアウトを開始する簡単な方法はありますか?

私の問題は、戻り URL を指定していることです。しかし、PayPal で支払いを済ませた後、次のような画面が表示されます。

お支払いが完了しました。 XXXX、お支払いが完了しました。 このお支払いの取引 ID は XXXXXXXXXXXXX です。

確認メールをお送りします[メールアドレス]この取引は明細書にPAYPALとして表示されます。

Go to PayPal account overview

この画面を表示せずに、戻り URL に直接移動する必要があります。次の設定があります。

  • 「戻り値」変数を設定する
  • 「rm」変数を2に設定します(ガイドによると = "購入者のブラウザはPOSTメソッドを使用して戻りURLにリダイレクトされ、すべての支払い変数が含まれます。

実際、これが私のフォーム全体です:

<form method="post" action="https://www.sandbox.paypal.com/cgi-bin/webscr">
  <input type="hidden" value="_xclick" name="cmd">
  <input type="hidden" value="[email protected]" name="business">
  <!-- <input type="hidden" name="undefined_quantity" value="1" /> -->
  <input type="hidden" value="Order at The Greek Merchant:&lt;Br /&gt;Goldfish Flock BLG&lt;br /&gt;" name="item_name">
  <input type="hidden" value="NA" name="item_number">
  <input type="hidden" value="22.16" name="amount">
  <input type="hidden" value="5.17" name="shipping">
  <input type="hidden" value="0" name="discount_amount">        
  <input type="hidden" value="0" name="no_shipping">
  <input type="hidden" value="No comments" name="cn">
  <input type="hidden" value="USD" name="currency_code">
  <input type="hidden" value="http://XXX/XXX/XXX/paypal/return" name="return">
  <input type="hidden" value="2" name="rm">      
  <input type="hidden" value="11255XXX" name="invoice">
  <input type="hidden" value="US" name="lc">
  <input type="hidden" value="PP-BuyNowBF" name="bn">
  <input type="submit" value="Place Order!" name="finalizeOrder" id="finalizeOrder" class="submitButton">
</form>

自動的に元に戻すにはどうしたらよいか、何かアイデアはありますか? あるいは、支払いの結果を自分の Web サイトに戻し、データベースを更新するにはどうすればよいでしょうか? IPN とは何ですか?

ベストアンサー1

PayPal アカウントで自動返却を有効にする必要があります。有効にしないと、returnフィールドは無視されます。

ドキュメントより (2019 年 1 月の新しいレイアウトを反映するように更新):

自動復帰はデフォルトでオフになっています。自動復帰をオンにするには:

  1. PayPalアカウントにログインしてくださいペイパルまたはhttps://www.sandbox.paypal.com「マイアカウントの概要」ページが表示されます。
  2. 右上の歯車アイコンをクリックします。プロフィール概要ページが表示されます。
  3. 左側の列にある「My Selling Settings」リンクをクリックします。
  4. オンライン販売セクションで、ウェブサイトの設定の行にある更新リンクをクリックします。ウェブサイトの支払い設定ページが表示されます。
  5. 「Web サイト支払いの自動返却」の下にある「オン」ラジオ ボタンをクリックして、自動返却を有効にします。
  6. [戻り URL] フィールドに、支払者が支払いを完了した後にリダイレクトする URL を入力します。注意: PayPal は入力した戻り URL をチェックします。URL が適切にフォーマットされていないか検証できない場合、PayPal は自動戻りを有効にしません。
  7. ページの一番下までスクロールし、「保存」ボタンをクリックします。

IPN は即時支払い通知です。自動返却よりも信頼性が高く、役立つ情報が得られます。

IPN のドキュメントはここにあります:https://www.x.com/sites/default/files/ipnguide.pdf

IPN のオンライン ドキュメント:詳しくはこちら

一般的な手順としては、リクエストとともにパラメータを渡しnotify_url、IPN 通知を処理および検証するページを設定すると、PayPal はそのページにリクエストを送信して、支払い/返金などが完了したときに通知します。その後、その IPN ハンドラ ページは、データベースを更新して注文が支払い済みとしてマークするための適切な場所になります。

おすすめ記事