Webhooks

Nutze Webhooks, um ├╝ber bestimmte Ereignisse benachrichtigt zu werden. Jeder Webhook wird signiert um die Echtheit zu gew├Ąhrleisten. Es k├Ânnen beliebig viele Webhook-Endpunkte angelegt werden.

M├Âgliche Ereignisse

order.created(Pending) Order wurde erstellt
order.processedOrder wurde verarbeitet und kompensiert
order.canceledPending Order wurde verworfen
order.refundedOrder wurde r├╝ckabgewickelt
payment_link.createdEin neuer Payment Link wurde erstellt
payment_link.paidPayment Link erfolgreich genutzt

Webhook empfangen

Wir senden einen POST-Request an die im Webhook-Endpunkt definierte URL. So sieht ein Beispiel eines Request Bodies aus:

1
2
3
4
5
6
7
8
9
10
11
12
{
  "trigger": "order.created",
  "created_at": "2022-02-03T02:23:47.404Z",
  "ident": "8ed1bae2-9ca4-4c3c-8fee-669334c783da",
  "signature": "a871c6067afef4cb7040c0b445f7df0503067d7af41dc95e554c47da94a553260c29051d377f5b5447f060a2d0833745177facfeb8c43daa96e9b181bc66cd88",
  "testing": false,
  "webhook_content": {
    "order_ids": [
      "CA-A949-E43D48E1",
    ]
  }
}

Webhook validieren

Validiere die Echtheit des Webhook calls mit Hilfe der Signatur und dem privaten Schl├╝ssel. Kombiniere dazu die Felder trigger, ident und den privaten Schl├╝ssel zu einem String wie im Beispiel und verschl├╝ssele diesen mit SHA512. Der entstandene verschl├╝sselte String muss mit signature ├╝bereinstimmen.

1
2
3
4
5
6
7
const validation = sha512(request.body.trigger + request.body.ident + your_private_key);

if (request.body.signature !== validation) {
  return response.status(401).send() //Unauthenticated
}

//ToDo: implement the webhook request

Keine Kreditkarte erforderlich - Erstelle dir jetzt einen Account

Erstelle ein Konto und beginne direkt mit der Berechnung und Kompensation der CO2 Emissionen ├╝ber unsere API. Du hast noch Fragen oder ben├Âtigst ein individuelles Angebot? Nutze den Chat oder vereinbare direkt einen Termin mit unserem Sales-Team.