2012-10-12 17 views
6

月払いの有料購読者に有効期限が切れ、paypalが3回失敗した場合、paypalによって「中断」されます。この状況でデータベースに正しい変更が行われるようにPHPスクリプトを更新しようとしています。私はpaypalの書類を勉強し、ユーザーの口座が一時停止されたら、どのIPN変数を使用すべきかについて明確な答えを見つけることができません。保留中のサブスクリプションのpaypal IPN変数を修正します

次のうち正しい変数と値を知っている人はいますか?

場合($ PAYMENT_STATUS == "一時停止" || $のtxn_type == == || $のtxn_typeを "保留" || $ profile_status == "一時停止" "subscr_failed"){

ありがとう!

答えて

6

私は$ txn_type == "recurring_payment_suspended_due_to_max_failed_pa​​yment"を取得しています。また、$ subscr_idの代わりに$ recurring_payment_idを使用します。少なくとも、Paypal Sandboxで支払いが失敗したことをシミュレートするとどうなりますか。

+3

ええペイパルのドキュメントはちょっとしたジョークです。私は2人のお支払いの失敗の後で購読がキャンセルされると私に言った彼らのサポート個人の1つに電話してきました。もちろんそうではありませんでした。 3回の失敗の後、サブスクリプションが中断され、私のログを見ると、これの唯一の兆候として 'recurring_payment_suspended_due_to_max_failed_pa​​yment'ステータスが見つかりました。 – glidester

+6

'recurring_payment_suspended_due_to_max_failed_pa​​yment' IPNをデザインした人は解雇されるべきです。このばかげたtxn_typeから始めて、それはビジネスパラメタが欠けていて、改名されたrecurring_payment_idという名前が付けられているので、他のすべてのIPNとはまったく異なります。私はこの開発者の考え方は何だったのだろうか? – mrbrdo