Webhook-Referenz
Ausgehende Webhook-Bereitstellung für Mandanten, die PulseCargo-Events in ihre eigenen Systeme pushen möchten — geplante Exporte, SIEM-Event-Egress, Vendor-Payment-Events.
Verfügbare Webhook-Ziele
Heute werden drei ausgehende Webhook-Oberflächen angeboten:
Scheduled Exports Webhook
Auslöser. Ein geplanter Export-Job wird abgeschlossen (CSV / XLSX / JSON über jedes Modul).
Anwendungsfall. Landen Sie das Export-Payload in Ihrem Data Lake, S3 Bucket oder einer nachgelagerten Pipeline ohne Polling.
Tier. Professional und höher.
SIEM-Event-Webhook
Auslöser. Sicherheitsereignis (fehlgeschlagene Anmeldung, MFA-Challenge, Admin-Aktion, verdächtiges Zugriffsmuster, Integrations-Audit-Anomalie).
Anwendungsfall. Weiterleitung in Ihr SIEM (CrowdStrike, Microsoft Sentinel, Splunk, Datadog, Cloudflare oder generischer Webhook an ein beliebiges benutzerdefiniertes Ziel).
Tier. Enterprise+ liefert Security-Event-Egress standardmäßig; Enterprise kann es optional aktivieren.
PayCargo Vendor-Payment Webhook
Auslöser. Statusänderung der Vendor-Payment (eingereicht, akzeptiert, abgerechnet, abgelehnt, erstattet).
Anwendungsfall. Abgleich mit Ihrem AP-System; Auslösung nachgelagerter Benachrichtigungen.
Tier. Professional und höher. Hinweis: Die PayCargo Live API erfordert Partner-Anmeldedaten; Webhook-Payloads streamen über den Stub-Client, bis die Live-Integration ausgeliefert wird.
Gemeinsamer Envelope
Jede Webhook-Zustellung verwendet einen gemeinsamen JSON-Envelope:
{
"event_id": "evt_01HZQX...",
"event_type": "scheduled_export.completed",
"tenant_id": "acme-logistics",
"timestamp": "2026-05-09T14:32:08Z",
"delivery_attempt": 1,
"data": { ... event-specific payload ... }
} Die event_id ist pro logischem Ereignis eindeutig — verarbeiten Sie idempotent über diese ID, da Retries dieselbe ID mit einem inkrementierten delivery_attempt zustellen.
Signaturverifizierung
Jede Webhook-Zustellung enthält einen X-PulseCargo-Signature-Header mit einer HMAC-SHA256-Signatur, berechnet über den Request-Body mit dem Webhook-Signing-Secret Ihres Mandanten.
Verifizierung in Pseudocode:
signature = HMAC-SHA256(your_signing_secret, request.body)
expected = request.headers["X-PulseCargo-Signature"]
constant_time_equal(signature, expected) // muss Constant-Time-Vergleich verwenden Lehnen Sie jeden Request ab, bei dem die Signatur nicht übereinstimmt. Das Signing-Secret ist rotierbar; die Rotation wird 30 Tage im Voraus über die Admin-Oberfläche kommuniziert.
Retry-Richtlinie
Wenn Ihr Endpunkt einen Nicht-2xx-Statuscode zurückgibt (oder nicht innerhalb von 10 Sekunden antwortet), versucht PulseCargo es mit exponentiellem Backoff erneut:
- Versuch 1 — sofort
- Versuch 2 — 1 Minute später
- Versuch 3 — 5 Minuten später
- Versuch 4 — 30 Minuten später
- Versuch 5 — 2 Stunden später
- Versuch 6 — 12 Stunden später
- Versuch 7 (final) — 24 Stunden später
Nach dem siebten fehlgeschlagenen Versuch wird das Ereignis dauerhaft als fehlgeschlagen markiert und im Webhook-Health-Dashboard des Mandanten angezeigt. Die ursprüngliche event_id bleibt erhalten, sodass ein manuelles erneutes Senden (nachdem Sie den empfangenden Endpunkt repariert haben) sauber abgeglichen wird.
Empfänger-Anforderungen
- Schnell antworten. Geben Sie innerhalb von 10 Sekunden 2xx zurück. Verarbeiten Sie das Payload bei Bedarf asynchron.
- Idempotenz. Schlüssel auf
event_id. Behandeln Sie wiederholte Zustellungen als No-Ops nach der ersten erfolgreichen Verarbeitung. - Signatur verifizieren. Lehnen Sie Requests ohne gültige Signatur ab.
- HTTPS verwenden. HTTP-Endpunkte sind für Produktions-Webhooks nicht zulässig.
- Unseren IP-Bereich zulassen. Wenn Ihr Endpunkt durch eine Firewall geschützt ist, erlauben Sie PulseCargos ausgehenden IP-Bereich (in der Admin-Oberfläche bereitgestellt), Sie zu erreichen.
Health-Monitoring
Mandanten-Administratoren können den Webhook-Zustellungs-Health unter Admin → Integrations → Webhooks einsehen: Erfolgsrate pro Ziel, letzte erfolgreiche Zustellung, aktuell wiederholte Events, dauerhaft fehlgeschlagene Events mit Replay-Buttons.
Dauerhaft fehlgeschlagene Events werden 90 Tage für Replay aufbewahrt; ältere fehlgeschlagene Events werden gelöscht.
Sicherheit und Audit
Jede ausgehende Webhook-Zustellung wird in OutboundApiTraffic mit Zeitstempel, Ziel-URL, Antwortstatus und Zustellungsversuch protokolliert. Mandanten-Administratoren können das Log nach Compliance-Nachweisen abfragen.
Signing-Secret-Rotation, Änderungen der Ziel-URL und Webhook-On/Off-Umschaltungen werden alle Audit-protokolliert. SOC 2 Evidence Collection.
Webhook konfigurieren
Mandanten-Administratoren konfigurieren Webhook-Ziele in der Admin-Oberfläche. Benötigen Sie Hilfe? Kontaktieren Sie uns für ein Developer-Briefing.