Callback erstellen

Inhalt dieses Artikels

  1. Vorbemerkungen
  2. Callback erstellen und aktivieren
  3. Beispiel Header

1. Vorbemerkungen

Was sind Callbacks?
Callbacks ermöglichen es, Informationen zu definierten Ereignissen im plenigo-System in quasi Echtzeit auf andere Systeme zu übertragen. 
Bei der Integration von plenigo ist es möglicherweise gewünscht, dass Drittsysteme Informationen zu Ereignissen empfangen, die im plenigo System auftreten, damit diese Systeme entsprechend Aktionen ausführen können. 
Zu diesem Zweck können für bestimmte Ereignisse sogenannte Callbacks im Merchant Backend definiert werden. Die Anlage und die Verwaltung erfolgt auf Mandantenebene. 
Hinweis zum Datenschutz:
Bei der Verwendung der meisten Callback-Typen werden personenbezogene Daten übertragen. Das empfangende System kann daher aus Sicht der geltenden Rechtssprechung als zusätzlicher Auftragsdatenverarbeiter definiert werden. Dies sollte bei der Verwendung der Callbacks unbedingt beachtet werden. 

Für Beispiele der Payloads haben wir einen eigenen Eintrag erstellt: Payloads - Beispiele

2. Callback erstellen und aktivieren


Callback erstellen (ohne Authentifizierung)
  • URL des eigenen Webservice eintragen. 
    Sobald die URL eingetragen wurde, kann die Checkbox Aktiviert angeklickt werden, um den Callback zu aktivieren.
  • Callback Typ mithilfe des Drop-Down-Menüs wählen (beispielsweise "Kunde erstellen").
  • Einstellungen speichern.

Callback erstellen (mit Authentifizierung)

Hinweis: Wir empfehlen grundsätzlich den Sicherheitsmechanismus durch Authentifizierung zu nutzen. 

  • Checkbox Endpunkt benötigt Authentifizierung aktivieren.
  • Methode 1: Authentifizierung per Benutzername und Passwort
    Durch die Verwendung einer Basic Authentification per Benutzername und Passwort kann die Übertragung der Daten abgesichert werden. Dabei legt in den meisten Fällen das empfangende System die Daten zu Authentifizierung fest. Bei der Verwendung des so abgesicherten Callbacks sind die Daten zu Authentifizierung in jedem Request von plenigo enthalten.
  • Methode 2: Authentifizierung per HTTP-Header
    HTTP-Header können zusätzlich zur Authentifizierung gegenüber einem Dienst verwendet werden.
    Dazu ein oder mehrere key-value-Paar(e) eintragen.
Nach dem Speichervorgang generiert das plenigo System automatisch für jeden Callback ein eigenes Callback Secret, das eingesehen werden kann, wenn mehr Informationen zum Callback ausgeklappt werden.


3. Beispiel Header

In folgendem Beispiel wurde sowohl Methode 1 als auch Methode 2 des Sicherheitsmechanismus verwendet.
Im plenigo Merchant Backend sehen die Einstellungen wie folgt aus:


Die Authentifizierung wird im Header des Callbacks übertragen. Die fettgedruckten Werte sind die entsprechenden Authentifizierungs-Daten, die im plenigo Merchant Backend eingestellt wurden.
Zudem ist jeder Callback mit einer "plenigo-signature" signiert. Wie die Signatur geprüft werden kann, wird in folgendem Eintrag näher erläutert: plenigo-Signatur
Headers
accept-encoding gzip
x-plenigo-api-version 20240827
plenigo-signature t=1729583536,s=fdcd0a0ccd0b4db629d35a33c3aada5cf669a28f91adb38abcc9ffcdb1663d38
key value
content-type application/json
authorization Basic cGxlbmlnb190ZXN0OjEyMzQ1Njc4OQ==
accept application/json
content-length 686
user-agent go-resty/2.15.3 (https://github.com/go-resty/resty)
host webhook.site
php-auth-user plenigo_test
php-auth-pw xxxxxxx