2016-06-30 14 views
3

Ich implementiere einen einfachen Zahlungsworkflow mit paypal REST API. Ich erstelle zuerst eine Zahlung, leite den Benutzer auf die von diesem Aufruf zurückgegebene URL um und führe die Zahlung nach Genehmigung durch. Um es zuverlässiger zu machen, möchte ich Webhook-Benachrichtigungen verwenden.
Und das ist, wenn es ein Problem wird: Ich erhalte keine Benachrichtigung.Paypal webhook events nicht empfangen

die verschiedenen Q & A Da ich bisher gelesen, hier sind meine Bemerkungen:

  1. Der gesamte Zahlungsprozess arbeitet, bin ich mit Paypal kommunizieren können und eine Zahlung zu bestätigen.
  2. Es funktioniert gut mit dem Webhook-Simulator, damit ich weiß, dass mein System in Ordnung ist.
  3. Ich habe alle Veranstaltungen abonniert. Ich würde erwarten, mindestens "PAYMENT.AUTHORIZATION.CREATED" und "PAYMENT.SALE.COMPLETED" Benachrichtigungen (oder "PAYMENT.SALE.DENIED", wenn die Zahlung verweigert wird) zu erhalten. Ich habe überprüft, dass sie in der supported event type list aufgelistet sind.
  4. Ich benutze immer noch die Sandbox-Umgebung, aber ich sah nichts spezifizieren, sollte es in diesem Zusammenhang nicht funktionieren.
  5. "Sandbox Webhooks Events" ist leer, aber ich bin mir nicht sicher, ob sie hier trotzdem angezeigt werden sollen.
  6. Ich habe keine Ahnung, wo diese Korrelation ID/Debug-ID sein soll.
    EDIT: von Antwort, CorrelationID ist in der Antwort Header zu finden. Hier sind Minen:
    • aa25ee518487a // Webhook Schaffung
    • 1fbf78ce3a034 // Zahlung Schaffung
    • 7a5d3c34daa5d // Zahlung Ausführung

Gibt es etwas mehr ich tun sollte, um es zu machen funktioniert? Oder gibt es noch etwas, was ich tun könnte, um es zu debuggen?
Bonus: Habe ich Recht, in meinem Fall "PAYMENT.AUTHORIZATION.CREATED" und "PAYMENT.SALE.COMPLETED/DENIED" Benachrichtigungen zu erwarten?

EDIT2: Also nach einem Monat komme ich zurück zu diesem Thema. Ich kann jetzt das Webhook-Ereignis im Dashboard sehen (keine Ahnung, was sich geändert hat), und sein Status ist PENDING. Die Transaktions-ID lautet 4396a630-78bc-11e6-8890-77339302725b. Irgendeine Idee, wie ich mehr Details darüber bekommen könnte, warum es aussteht?

+0

Ich suche auch nach einer Lösung für ein ähnliches Problem. Ich möchte mich nicht darauf verlassen, dass der Zahler auf die Erfolgs-Weiterleitungs-URL umgeleitet wird und möchte daher die Zahlung basierend auf einem Webhook-Ereignis ausführen. Vielleicht ist dies mit der REST-API nicht möglich und wir sollten uns nur auf die Weiterleitungs-URL verlassen, um die Zahlung auszuführen. Bitte lassen Sie mich wissen, wenn Sie mehr Informationen zu diesem Thema finden. – theyuv

+0

@theyuv für jetzt Ich denke, wir werden eine Umfrage Lösung verwenden, um den Status regelmäßig zu holen, solange es nicht innerhalb einer angemessenen Zeitspanne der Zeit bezahlt oder abgelehnt wird. Zumindest werden wir sicher sein, auf dem neuesten Stand zu sein und in einem normalen Prozess sollte es nicht viele Anrufe erfordern. – ZaX

Antwort

1

Von PayPal-Tech-Support:
„Ich sehe, dass Sie die Zahlung Überprüfung auf das Testkonto aktiviert haben Können Sie es bitte deaktivieren und einige Transaktionen vorlegen und sicherstellen, dass sie abgeschlossen haben, dann überprüfen. die Webhook-Benachrichtigungen. "
Diese Einstellung finden Sie in Sandbox> accounts. Stellen Sie dann für jedes verwendete Konto in den Einstellungen für das Profil "Zahlungsprüfung" auf "Aus".

Das löste mein Problem.

Hinweis: In meinem Verständnis, nach der Ausführung einer Zahlung, wenn der Status "genehmigt" ist, wurde die Zahlung abgeschlossen. Dies ist nicht der Fall, da die Zahlung automatisch überprüft werden kann. Wenn Sie wie ich eine vollständige Kontrolle über den Status einer Zahlung haben müssen, müssen Sie möglicherweise zur Zahlung mit intent = "authorize" wechseln. Sie benötigen nach der Ausführung einen weiteren Schritt, um die Zahlung zu erfassen. Sie können dann abonnieren Sie:

  • PAYMENT.CAPTURE.COMPLETED
  • PAYMENT.CAPTURE.DENIED
  • PAYMENT.CAPTURE.PENDING
  • PAYMENT.CAPTURE.REVERSED“

zu überwachen Sein tatsächlicher Status

In Bezug auf "PAYMENT.AUTHORIZATION.CREATED" Webhook-Ereignis wird es ausgelöst, nachdem eine Zahlung ausgeführt wurde.

0

Sie können die Korrelations-ID in den Antwortheadern des API-Aufrufs finden. Wenn Sie uns darüber informieren können, können wir Ihnen weiter helfen.

Dank

+0

Danke, siehe bearbeiten auf q6. – ZaX