Webhooks
Ein Webhook in der Webentwicklung ist eine Methode zur Erweiterung oder Änderung des Verhaltens einer Webseite oder Webanwendung durch benutzerdefinierte Rückrufe (callbacks). Diese Rückrufe können von Drittnutzern und Entwicklern gepflegt, geändert und verwaltet werden, die nicht unbedingt mit der ursprünglichen Website oder Anwendung verbunden sind.
Zugriff auf das Webhooks Interface
Zunächst werden wir Sie auf die richtige Seite begleiten.
Access the Webhooks page via the navigation on the left hand side.
Webhooks-Konfiguration
Klicken Sie auf in der rechten oberen Ecke.
In den Webhook URLs fügen Sie eine URL hinzu und klicken Sie auf .
Wählen Sie einen oder mehrere Ereignistypenaus, Sie haben die Wahl zwischen
Rechnungsereignisse
Abonnementereignisse
Kundenereignisse
Fügen Sie eine E-Mail-Adresse in das Feld Benachrichtungen per E-Mail ein und klicken Sie auf .
Geben Sie einen Benutzernamen und ein Passwort in die Anmeldeinformationen Box ein.
Sie können den Geheimschlüssel kopieren, indem Sie auf klicken.
Web-Hook mithilfe des Schalters aktivieren.
Klicken Sie danach auf .
Erklärung für ausstehende Webhooks
Manchmal bleiben Webhooks in der Warteschleife und es scheint, dass sie nicht einmal an Ihren Server gesendet werden.
Inhalt:
First in, first out
Alle Webhooks werden in FIFO (first in first out) für jeden Kunden sortiert.
Das bedeutet, dass Sie davon ausgehen können, dass Sie für jeden Kunden Ereignisse in der richtigen Reihenfolge erhalten.
Beispiel: Sie erhalten keinen CUSTOMER_UPDATED vor CUSTOMER_CREATED.
Anmerkung
Wenn Ihr Dienst keinen HTTP-Code zwischen 200 und 299 zurückgibt:
betrachten wir den Webhook als fehlgeschlagen
wir werden die nächsten Webhooks für diesen bestimmten Kunden blockieren
Erwägungen für Webhooks
Ihr Endpunkt muss innerhalb von 30 Sekunden antworten.
Eine Antwort mit HTTP-Code 2XX wird als erfolgreichbetrachtet. Alle anderen Antworten werden als Fehler betrachtet.
Der Inhalt eines Webhook informiert über ein Ereignis im Billwerk+ Payment System, die betroffenen Ressourcen und den Ereignistyp, aber trägt an sich keinen Status. Es wird empfohlen, anschließend die API zu verwenden, um den aktualisierten Status einer Ressource zu erhalten.
Ihr Endpunkt muss idempotent sein, so dass mehrere Aufrufe desselben Webhooks mit demselben Ergebnis als ein Abruf möglich sind.
Dies ist darauf zurückzuführen, dass Kommunikationsfehler dazu führen können, dass Billwerk+ Payments einen Aufruf als fehlgeschlagen betrachtet, obwohl er empfangen wurde. Wir werden fehlgeschlagene Aufrufe erneut versuchen. Siehe unten.
Bei Ausfallszenarien können Webhooks aus dem Verkehr gezogen werden. Daher verwendet immer die API, um den aktuellen Status einer Ressource zu erhalten.
Ein Beispiel ist die Kündigung eines Abonnements, gefolgt von einer Rücknahme der Kündigung. Der Webhook für die Kündigung könnte nach der Rücknahme der Kündigung empfangen werden.
Best Practices
Billwerk+ Payment schickt maximal 10 Webhook-Anfragen gleichzeitig an Ihren Server.
Eine gute Praxis ist es, Ereignisse in eine lokale Warteschlange auf Ihrer Seite auszulagern und 200 OK on each zurückzugeben.
Das bedeutet, dass Sie schnell reagieren können und dass sich keine Ereignisse gegenseitig blockieren. Sie können dann jedes Ereignis aus Ihrer Warteschlange verarbeiten und Ihre Anlagen problemlos aktualisieren.