IPN を処理するための PHP コードの PayPal サイトで、彼らはいくつかの小さなチェックを行い、次に何をすべきかについていくつかのコメントを入れています。
コメントの一つは
// check that txn_id has not been previously processed
処理された場合、何か問題があることを示します。
payment_status が「Pending」から「Completed」になるとどうなりますか? 同じ txn_id が送信されるはずですよね? 他にどのようにトランザクションを識別し、データベース内のレコードを更新し、その特定の IPN メッセージに対してどの「txn_type」がポストされますか?
IPN は何年も前から存在していますが、それでもドキュメントは非常に曖昧で、ほとんどの場所で説明が不十分です。詳細に説明するのではなく、多くのシナリオで何が起こるかを推測する必要があります。
どんな助けでも大歓迎です。