2016-04-14 9 views
0

私はPDTPAYMENT_STATUSを完了すると、私は自分のデータベースを更新し、クレジットの量を交換を使用しています。たとえば、30ドルから30分のサービスです。payment_statusがPapPalで保留中の場合はどうすればよいですか?

誰かが支払いを行い、payment_statusが保留中であることが心配です。その場合、私のアプリケーションはこの交換を実行しません。最終的に支払いが完了したらどうなりますか?

  1. PayPalから通知を受け取りますか?
  2. 私はPayPalに支払いを求めてください。

一方、メータイトが落ち、PayPalで行われた支払いを処理できない場合、PayPalに「お支払い済みです、保存しました」と伝える方法がありますか?

ありがとうございました。

答えて

2

IPNを使用してください。これは、PayPalのサーバーが戻りURLとは対照的に提供するリスナーURLにデータをPOSTする点を除いて、PDTと非常に似ています。

IPNは、ユーザーが返品URLに戻すかどうかにかかわらず、すべてのPayPalトランザクションでトリガーされます(最初はPDTの代わりに使用する別の理由です)。

最初に保留中の支払いの場合は、payment_statusが保留中のIPNを取得するので、データベースを更新してそれに応じてメール通知を送信できます。

支払いが完了(または失敗)すると、同じtxn_idで新しいpayment_statusを持つ別のIPNが取得されるため、IPNスクリプトはそれに応じて処理できます。

関連する問題