Inhaltsverzeichnis

  1. Einführung

  2. Was sind Webhooks?

  3. Warum Webhooks in Dolibarr verwenden?

  4. Die Webhook-Funktionen von Dolibarr verstehen

  5. Häufige Anwendungsfälle für die Webhook-Automatisierung

  6. Aktivieren von Webhooks in Dolibarr

  7. Erstellen von Webhook-Endpunkten

  8. Sichern der Webhook-Kommunikation

  9. Arbeiten mit Ereignisauslösern in Dolibarr

  10. Empfangen von Webhooks in einer Middleware

  11. Beispiel: Automatisierung der Rechnungsverarbeitung

  12. Beispiel: Echtzeit-Bestellbenachrichtigungen

  13. Verwenden von Webhooks für die CRM-Integration

  14. Verbinden von Dolibarr mit Slack, Discord oder E-Mail-Benachrichtigungen

  15. Erweiterte Workflows: Genehmigungsketten und Aufgabenerstellung

  16. Protokollieren und Überwachen der Webhook-Aktivität

  17. Webhooks effektiv testen

  18. Beheben von Webhook-Problemen

  19. Best Practices für skalierbare Automatisierung

  20. Fazit


1. Einleitung

Moderne Geschäftsanwendungen leben von Automatisierung. In Dolibarr ERP/CRM ist die Automatisierung wiederkehrender Aufgaben und das Auslösen von Workflows basierend auf Systemereignissen mithilfe von Webhooks möglich. Dieser Leitfaden erläutert, wie Sie Webhooks in Dolibarr konfigurieren, sichern und verwenden, um Abläufe zu optimieren und die Integration mit externen Systemen zu ermöglichen.


2. Was sind Webhooks?

Webhooks sind benutzerdefinierte HTTP-Rückrufe, die durch Ereignisse ausgelöst werden. Wenn eine bestimmte Aktion eintritt (z. B. die Validierung einer neuen Rechnung), sendet Dolibarr eine POST-Anfrage an eine vordefinierte URL, die in der Regel eine Nutzlast mit Daten zum Ereignis enthält.

Webhooks werden häufig für Echtzeitbenachrichtigungen und Automatisierung zwischen Systemen verwendet.


3. Warum Webhooks in Dolibarr verwenden?

Die Vorteile sind:

  • Benachrichtigungen automatisieren

  • Echtzeit-Integrationen

  • Reduzierung des Bedarfs an Polling-APIs

  • Aktivierung ereignisgesteuerter Systeme

Beispiele:

  • Benachrichtigung eines Administrators, wenn eine neue Bestellung aufgegeben wird

  • Automatische Synchronisierung von Daten mit externen CRMs oder Apps

  • Auslösen von Rechnungsvalidierungs-Workflows


4. Die Webhook-Funktionen von Dolibarr verstehen

Dolibarr bietet über sein Triggersystem grundlegende Webhook-Unterstützung. Entwickler können:

  • Einbinden in vordefinierte Aktionen

  • Nutzen Sie interface_99_modXXX_YYY.class.php Unterricht

  • Passen Sie das Verhalten für Module wie Bestellungen, Rechnungen, Produkte usw. an.

Dolibarr bietet keine vollständige Benutzeroberfläche für Webhooks, ermöglicht aber programmgesteuerten Zugriff und Anpassung.


5. Häufige Anwendungsfälle für die Webhook-Automatisierung

  • Senden Sie Rechnungsdetails an externe Abrechnungsdienste

  • Benachrichtigen Sie das Lagerpersonal über neue Lieferungen

  • Integration mit Slack oder Microsoft Teams

  • Übertragen Sie CRM-Lead-Daten auf Plattformen von Drittanbietern

  • Auslösen externer Skripte zur PDF-Generierung oder Berichterstellung


6. Aktivieren von Webhooks in Dolibarr

So aktivieren Sie die Webhook-Logik:

  1. Stellen Sie sicher, dass der Entwicklermodus aktiviert ist in conf.php

  2. Navigieren /htdocs/core/triggers/

  3. Erstellen oder Anpassen einer Triggerdatei

Beispieldatei: interface_99_modWebhook_Mytrigger.class.php


7. Erstellen von Webhook-Endpunkten

Endpunkte sind Server, die auf Webhook-Aufrufe warten. Sie können einen solchen erstellen mit:

  • Node.js (Express)

  • Python (Flask/FastAPI)

  • PHP

Einfaches Beispiel in PHP:

$input = file_get_contents('php://input');
$data = json_decode($input, true);
file_put_contents('log.txt', print_r($data, true));

Stellen Sie sicher, dass Ihr Endpunkt öffentlich zugänglich ist und HTTPS unterstützt.


8. Sichern der Webhook-Kommunikation

So schützen Sie Ihr System:

  • Verwenden Sie HTTPS zum Verschlüsseln von Nutzdaten

  • Fügen Sie ein gemeinsames Geheimnis in den Header ein

  • Validieren der Nutzlast-Quell-IP

  • Alle Webhook-Aktivitäten protokollieren

Implementieren Sie eine Signaturvalidierung, um gefälschte Anrufe zu vermeiden.


9. Arbeiten mit Ereignisauslösern in Dolibarr

Dolibarr verwendet interne Ereignisse wie:

  • BILL_VALIDATE

  • ORDER_CREATE

  • PRODUCT_CREATE

Verwenden Sie in Ihrem benutzerdefinierten Trigger run_trigger() um Ereignisse abzufangen und einen POST an Ihren Endpunkt zu senden:

if ($action == 'ORDER_VALIDATE') {
  $payload = json_encode($object);
  file_get_contents('https://your-endpoint.com/hook?payload=' . $payload);
}

10. Empfangen von Webhooks in einer Middleware

Middleware fungiert als Relais zwischen Dolibarr und anderen Diensten. Beispiel:

  • Daten von Dolibarr empfangen

  • Transformieren oder filtern Sie es

  • Pushen Sie es an eine Drittanbieter-API (z. B. Salesforce, Notion).

Middleware-Plattformen: Zapier, Make.com, n8n oder ein benutzerdefinierter Server.


11. Beispiel: Automatisierung der Rechnungsverarbeitung

Trigger: BILL_VALIDATE Workflow:

  1. Benutzer validiert Rechnung

  2. Webhook sendet Daten an das Rechnungsverwaltungstool

  3. Das Tool antwortet mit einer Bestätigung oder einem Fehler.

  4. Dolibarr protokolliert die Antwort und aktualisiert den Status

Dadurch wird die manuelle Synchronisierung mit externen Buchhaltungstools reduziert.


12. Beispiel: Echtzeit-Bestellbenachrichtigungen

Trigger: ORDER_CREATE Anwendungsfall:

  • Nachricht an Slack senden, wenn eine neue Bestellung aufgegeben wird

Workflow:

  1. Webhook sendet JSON an die Middleware

  2. Middleware formatiert Nachricht

  3. Slack-Webhook sendet Nachricht an den Vertriebskanal


13. Verwenden von Webhooks für die CRM-Integration

Trigger: THIRDPARTY_CREATE, CONTACT_CREATE Anwendungsfall:

  • Übertragen Sie neue Kunden an ein externes CRM

Der Webhook sendet Nutzdaten an die API Ihres CRM und erstellt automatisch Leads oder Kundenprofile.


14. Verbinden von Dolibarr mit Slack, Discord oder E-Mail-Benachrichtigungen

Verwenden Sie Zapier oder ein benutzerdefiniertes Relay:

  • Formatieren Sie die Nutzlast in eine lesbare Nachricht

  • POST an Slack/Discord über die Webhook-URL

  • Senden Sie E-Mails über SMTP mit ausgelöstem Inhalt

Fügen Sie zur Verdeutlichung Emoji-Reaktionen oder Zeitstempel hinzu.


15. Erweiterte Workflows: Genehmigungsketten und Aufgabenerstellung

Verwenden Sie Webhooks, um:

  • Erstellen Sie Genehmigungsaufgaben in Projektmanagement-Tools (z. B. Asana, Trello).

  • Benachrichtigen Sie Vorgesetzte, wenn Schwellenwerte erreicht werden (z. B. Rechnung > 10,000 $)

Workflow:

  1. Auslöser

  2. Middleware prüft Bedingungen

  3. Wenn die Bedingung erfüllt ist, wird eine Aufgabe oder ein Alarm erstellt


16. Protokollieren und Überwachen der Webhook-Aktivität

Webhook-Aktionen protokollieren:

  • Dateiprotokolle in /var/logs/

  • Speichern Sie Metadaten in zusätzlichen Dolibarr-Feldern

  • Verwenden Sie zur Überwachung externe Dienste wie Loggly oder Datadog

Protokolleinträge sollten Zeitstempel, Antwortcodes und alle Fehler enthalten.


17. Webhooks effektiv testen

Verwenden Sie Werkzeuge:

  • RequestBin oder Webhook.site zur Überprüfung von Nutzdaten

  • Postman zum Simulieren von Dolibarr-Webhook-Aufrufen

  • ngrok zum lokalen Testen hinter Firewalls

Simulieren Sie jedes Ereignis, um den Fluss vor der Verwendung in der Produktion zu überprüfen.


18. Fehlerbehebung bei Webhook-Problemen

Allgemeine Probleme:

  • HTTP 500 vom Endpunkt (Fehlerprotokolle prüfen)

  • Ungültige Payload-Struktur (vergleiche Schemata)

  • Timeouts (Verarbeitungszeit optimieren)

Wiederholen Sie fehlgeschlagene Anfragen immer, wenn sie kritisch sind.


19. Best Practices für skalierbare Automatisierung

  • Verwenden Sie Warteschlangen (z. B. RabbitMQ), um Ereignisse asynchron zu verarbeiten

  • Batch-Webhook-Ereignisse bei hohem Volumen

  • Exponentielles Backoff für Wiederholungsversuche anwenden

  • Trennen Sie kritische und nicht kritische Workflows

Dokumentieren Sie Ihre Webhooks und stellen Sie Fallback-Mechanismen bereit.


20. Fazit

Webhooks ermöglichen Echtzeitautomatisierung und leistungsstarke Integrationen in Dolibarr. Durch die Einrichtung sicherer Endpunkte, die Entwicklung intelligenter Workflows und die Überwachung von Aktivitäten können Sie redundante Aufgaben eliminieren und die Reaktionsfähigkeit Ihres Systems verbessern. Ob für interne Prozesse oder die Kommunikation mit Drittanbietern – Webhooks machen Ihre Dolibarr-Installation wirklich dynamisch.