2012-10-12 10 views
6

Wenn ein zahlender monatlicher Abonnent eine Kreditkarte hat, die abläuft, und paypal drei Mal fehlgeschlagen ist, wenn sie versucht, das Geld zu bekommen, dann werden sie von Paypal "suspendiert". Ich versuche mein PHP-Skript zu aktualisieren, damit in dieser Situation die richtige Änderung in der Datenbank erfolgt. Ich habe die Paypal-Dokumentation gelesen und kann keine eindeutige Antwort darauf finden, welche IPN-Variable ich verwenden soll, sobald ein Benutzerkonto gesperrt wurde.Korrekte paypal IPN-Variable für gesperrte Abonnements

Weiß jemand, welche der folgenden Variablen und welchen Wert zu verwenden ist?

if ($ payment_status == "suspendiert" || $ txn_type == "suspendiert" || $ txn_type == "subscr_failed" || $ profile_status == "suspended") {

Dank!

Antwort

6

Ich habe $ txn_type == "repeering_payment_suspended_due_to_max_failed_payment" erhalten, beachten Sie auch, dass statt $ subscr_id stattdessen eine $ wiederkehrende_zahlungs-id. Zumindest passiert das, wenn ich gescheiterte Zahlungen in der Paypal Sandbox simuliere.

+3

Yeah Paypal Dokumentation ist ein bisschen ein Witz. Ich habe mit einem ihrer Support-Mitarbeiter telefoniert, der mir sagte, dass nach zwei Zahlungsausfällen das Abonnement storniert würde. Natürlich war es nicht. Nach 3 Fehlern wurde die Subscription stattdessen unterbrochen und bei der Suche nach meinen Protokollen habe ich den Status 'recurring_payment_suspended_due_to_max_failed_payment' als einzigen Hinweis darauf gefunden. – glidester

+6

Der Typ, der das IPN "recurring_payment_suspended_due_to_max_failed_payment" entworfen hat, sollte ausgelöst werden. Es ist völlig anders als alle anderen IPNs, beginnend mit diesem lächerlichen txn_type, dann fehlen der business-Parameter und die umbenannte recurring_payment_id. Ich meine, wtf dachte dieser Entwickler? – mrbrdo