2017-09-15 4 views
0

Ich versuche zu implementieren/Update PayPal Express Checkout auf einer Symfony, Anwendung.Wie man den Benachrichtigungs-Controller in Payum anpassen

Während ich es erfolgreich auf dem "normalen" Weg integriert habe, haben wir einige Probleme bezüglich der Erfassung: nicht alle Benutzer kommen nach der Zahlung auf die Website zurück, so dass der Code bei der "doneAction" nicht ausgeführt wird Bestellung ist nicht abgeschlossen, noch die E-Mail versendet usw. Jeden Monat gehen dadurch bis zu 10 Bezahl-Captures verloren.

PayPal hat das IPN Benachrichtigungssystem, und wenn ich nicht irre, nutzt Payum es über "Notification Url". Wie kann ich den Benachrichtigungscontroller erweitern oder überschreiben? Kann ich der Benachrichtigung ein Ereignis hinzufügen? Ich möchte hier die Logik "Auftrag abgeschlossen" einfügen.

Die einzige events ich gefunden habe, sind:

  • payum.gateway.pre_execute

  • payum.gateway.execute

  • payum.gateway.post_execute

Antwort

0

Sie müssen den Symfony-Controller nicht überschreiben. Was Sie brauchen, ist eine Erweiterung, die nach der Verarbeitung der Benachrichtigung einige zusätzliche Dinge erledigt. Hier ist das Dokument: https://github.com/Payum/Payum/blob/master/docs/instant-payment-notification.md

Sie können auch die Standard-Benachrichtigungsaktion vollständig mit einer benutzerdefinierten überschreiben, obwohl ich empfehlen würde, zuerst Erweiterungen zu sehen.

+0

Vielen Dank! Ich war mir sicher, dass ich etwas in den Unterlagen verpasst hatte. –