Intégrer Dolibarr avec n8n : Playbook en 30 jours


1️⃣ Pourquoi combiner Dolibarr & n8n ?

Dolibarr n8n
ERP/CRM open‑source ultra‑léger, idéal pour PME, associations ou start‑ups. Plateforme de workflow visuel (no‑code) basée sur Node.js, extensible via des nodes et du code JavaScript.
Gestion des devis, factures, stocks, contacts, projets… Orchestration de tâches : appels API, triggers (webhooks, cron), traitement de données, notifications, etc.
Architecture simple (une seule base de données MySQL/PostgreSQL). Architecture micro‑services native : Docker, Kubernetes, serveur autonome.
API REST limitée (principalement CRUD). API native très riche + possibilités d’ajouter des nodes personnalisés.

En combinant les deux, vous obtenez :

  • Une solution ERP complète pour la gestion opérationnelle.
  • Un moteur d’automatisation pour relier Dolibarr à d’autres applications (Shopify, WooCommerce, Slack, GitHub, Google Sheets…).
  • Un retour sur investissement rapide : aucune compétence de développeur n’est requise pour créer des flux, seulement la compréhension des champs Dolibarr.


2️⃣ Architecture d’ensemble

┌───────────────────────┐      ┌─────────────────────┐
│ Dolibarr (serveur) │ ◀───▶ │ n8n (workflow) │
│ - DB MySQL/PostgreSQL │ │ - Nodes natifs │
│ - API REST │ │ - Webhooks │
│ - Stocks, contacts… │ │ - JavaScript │└───────────────────────┘ └─────────────────────┘
▲ ▲
│ │
Webhooks / API REST │ │ │
└─────────────────────► HTTP ◄───…

  • Dolibarr expose des end‑points REST (/api/action/[entity]) et accepte les webhooks (module Business Management → Webhooks).
  • n8n se connecte à ces API via le node “Dolibarr” (développé par la communauté) ou via HTTP Request avec authentification OAuth2 / Basic.
  • Les triggers les plus fréquents sont : création/édition d’un element (devis, facture, contact), webhook sur un evenement (ex : paiement reçu) ou cron quotidien.
  • Les actions : mise à jour d’un enregistrement, création d’un ticket dans un CRM, envoi d’un e‑mail, mise à jour d’un tableau Google Sheets, etc.


3️⃣ Planning 30 jours – Playbook pas à pas

Semaine Objectif Livrable Temps estimé*
Jour 1‑2 Installation Environnements Docker/PM2 + accès sécurisé 4 h
Jour 3‑5 Configuration de Dolibarr (modules, API) DB + serveur fonctionnels, clé API activée 6 h
Jour 6‑9 Installation n8n (Docker, config de credentiels) Instance n8n accessible en HTTPS 4 h
Jour 10‑13 Création du premier workflow (ex : “Devis → Facture”) Workflow “Devis → Validation → Facturation” 8 h
Jour 14‑16 Webhooks Dolibarr → n8n Trigger « Nouvelle facture » -> Slack/WhatsApp 6 h
Jour 17‑20 Intégration de services tiers (Google Sheets, Trello, Discord) Scénario “Facture payée → mise à jour tableau de bord” 10 h
Jour 21‑23 Tests fonctionnels & scénarios d’erreur Suite de tests (postman + n8n debug) 8 h
Jour 24‑26 Optimisation & monitoring (logs, alertes, retry) Dashboard Grafana ou n8n “Execution QA” 6 h
Jour 27‑30 Documentation & livrable (guide, templates) Playbook final + support interne 6 h

* Le temps indiqué est la charge moyenne pour un développeur ou un consultant senior. Vous pouvez répartir les tâches entre plusieurs acteurs.

Conseil : Bloquez 1 jour “sprint review” à la fin de chaque semaine pour valider les livrables avec les parties prenantes (commercial, comptabilité, équipe IT).


4️⃣ Détail des étapes clés

4.1 Installation des solutions

# 1️⃣ Docker‑Compose (exemple minimal)
version: "3.8"
services:
db:
image: mariadb:10.11
environment:
MYSQL_ROOT_PASSWORD: secret_root
MYSQL_DATABASE: dolibarr
MYSQL_USER: dolibarr_user
MYSQL_PASSWORD: dolibarr_pwd
volumes:
- ./dolibarr_data:/var/lib/mysql
restart: unless-stopped
dolibarr:
image: dolibarr/dolibarr:latest
environment:
- MYSQL_HOST=db
- MYSQL_DATABASE=dolibarr
- MYSQL_USER=dolibarr_user
- MYSQL_PASSWORD=dolibarr_pwd
depends_on: [db]
ports:
- "8080:80"
volumes:
- ./dolibarr/files:/var/www/html/files
restart: unless-stopped
n8n:
image: n8nio/n8n:latest
ports:
- "5678:5678"
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin - N8N_BASIC_AUTH_PASSWORD=strong_password
- N8N_HOST=0.0.0.0
- N8N_PORT=5678
- N8N_PROD=true volumes:
- n8n_data:/home/node/.n8n
restart: unless-stopped
volumes:
n8n_data:

  • HTTPS : Ajoutez un reverse‑proxy Traefik ou Caddy avec certificat Let’s Encrypt.
  • Sécurisez les accès (/admin → basic‑auth, IP whitelisting).

4.2 Activation de l’API REST et des Webhooks dans Dolibarr

Action Étapes
Activer l’API 1. Modules → Setup → General → API → cocher “Activer l’API REST”.
2. Créer un utilisateur API (ex : n8n_user) avec role “Administrator” (ou rôle limité).
3. Générer token dans Login → My account → API.
Créer un Webhook 1. Setup → Webhooks.
2. Add Webhook → Choisir Entity (ex : invoiceline) → Eventcreated ou updated.
3. Endpoint → URL de n8n (https://n8n.mondomaine.com/webhook/12345).
4. Activer Signature SHA256 pour garantir l’intégrité.


4.3 Créer son premier workflow n8n (« Devis → Facture »)

  1. Node “Dolibarr” – Trigger

    • Mode : Webhook (ou Cron).
    • Entity : order (devis). – Condition : status = "Draft" (ou le champ métier de votre configuration).

  2. Node “Function” – Transformation

    // Exemple : récupérer le champ “total” et le convertir en €
    item.data.amount = Number(item.data.amount) / 100;
    return item;

  3. Node “Dolibarr” – Action « Create Invoice »

    • Entity : invoice
    • Mapping : order_id = {{ $node["Dolibarr"].json.id }}
    • Payload : { "num": "INV-{{ $node["Dolibarr"].json.id }}", "date": "today", "amount": "{{ $json.amount }}" }

  4. Node “Slack” / “Discord” – Notification

    • Message : “✅ Nouvelle facture {{ $json.num }} générée depuis le devis {{ $json.order_id }}”.

  5. Node “IF” – Gestion des erreurs

    • Si le statut de création de facture ≠ “OK”, envoyer un alert à PagerDuty ou Mailjet.

Astuce : Activez le debug mode dans n8n (onglet Execution) pour visualiser le payload à chaque étape.


4.4 Webhook « Paiement reçu » → mise à jour CRM

Étape Description
Trigger Webhook Dolibarr (payment_received sur invoice).
Action 1 HTTP Request -> appel API interne de votre CRM (ex : HubSpot).
Action 2 Google Sheets – ajout ligne “Facture payée – date – montant”.
Action 3 Slack✅ Facture {{ $json.num }} marquée comme payée – + lien vers le PDF.
Optionnel GitHub Issue – créer un ticket “Facture facturée” pour le suivi comptable.

Toyez ce workflow avec Postman : envoyez un faux webhook depuis curl -X POST http://localhost:5678/webhook/12345 -d '{"invoice_id":42}'.


4.5 Tests fonctionnels & scénario de rollback

Test Action Résultat attendu
TC‑01 Créer un devis → laisser n8n le convertir en facture. Facture visible dans Dolibarr, workflow complet exécuté, notification Slack reçue.
TC‑02 Supprimer un paiement (API POST /invoice/{id}/payment) Webhook déclenché → mise à jour du tableau Google Sheets.
TC‑03 Simuler une erreur (payload invalide) Le node “IF” renvoie un message d’erreur, le job est mis en retry 3 fois, puis alerte PagerDuty.
TC‑04 Débrancher temporairement n8n Les webhooks sont mis en queue (si vous avez activé le n8n Database ou Redis). Aucune perte de données.
TC‑05 Rollback de l’API – désactiver le token API Le workflow se bloque sur « 401 Unauthorized », vous êtes alerté via le monitor n8n.


5️⃣ Bonnes pratiques & Astuces avancées

Domaine Recommendation
Sécurité Utilisez HTTPS partout, activez les tokens JWT ou OAuth2 côté Dolibarr, limitez les IP dans les webhooks.
Versioning Versionnez vos workflows (exports JSON) dans un dépôt Git. Taggez les releases (v1.0-devis-facture).
Persistivité Persistez les executions dans PostgreSQL ou Redis pour garantir la continuité après redémarrage.
Scalabilité Déployez n8n en mode cluster (Redis pub/sub) si vous avez plus de 10 k executions/jour.
Logging avancé Centralisez les logs avec ELK (Elastic + Logstash + Kibana) ou Grafana Loki. Créez des alertes sur le taux d’erreurs (> 5 %).
Gestion des champs dynamiques Si vous avez des champs additionnels (ex : “category”), utilisez le node “Function” pour décoder les JSON et les mapper dynamiquement.
Synchronisation bidirectionnelle Pour des scénarios « CRUD » complets, créez deux webhooks : creation (Dolibarr → n8n) + update (n8n ↔ Dolibarr). Utilisez un checksum (ex : hash du payload) pour éviter les boucles infinies.
Performance Limitez le payload à 5 Mo max par appel (Dolibarr API). Utilisez le node “Wait On Event” si vous devez récupérer uneressource dépendante (ex : facture PDF).
Documentation auto‑générée Exportez chaque workflow en JSON et ajoutez un commentaire /** … */ décrivant les champs attendus. Vous pouvez ensuite générer une API spec avec Swagger.


6️⃣ Ressources utiles

Type Lien
Documentation officielle https://dolibarr.org/ – Section API REST et Webhooks.
Node n8n – Dolibarr https://github.com/igor-tools/n8n-nodes-dolibarr (package n8n-nodes-dolibarr).
Tutoriel vidéo (FR) « Automatiser les devis avec Dolibarr & n8n » – Chaîne YouTube IT-Connect (2024).
Docker‑Compose avec Traefik https://github.com/traefik/traefik/tree/master/examples/dynamic-compose
Palette de nodes https://github.com/n8n-io/n8n-nodes – Liste des nodes natifs & communautaires.
Forum communautaire https://community.n8n.io/c/integrations/dolibarr – Questions et réponses.
Blog de cas d’usage « Intégrer un CRM à Dolibarr avec n8n » – blog Dolibarr Community (nov. 2023).


7️⃣ Checklist “Prêt à mettre en production”

  • [ ] Les URL du serveur sont HTTPS avec certificat valide.
  • [ ] Le token API de Dolibarr est stocké comme secret n8n (Credential).
  • [ ] Tous les workflows sont exportés et versionnés. – [ ] Un plan de reprise d’activité (BCP) est documenté (rollback des containers, backup DB).
  • [ ] Des alertes (PagerDuty / Slack) sont configurées sur les erreurs critiques.
  • [ ] La documentation utilisateur interne est disponible (exemple de remplissage du formulaire « Demande de facture »).
  • [ ] Test de charge réalisé (au moins 1 000 exécutions simulées) sans dépassement de 70 % de la capacité CPU.


8️⃣ Conclusion

L’intégration de Dolibarr avec n8n vous donne le meilleur des deux mondes : un ERP complet et ultra‑léger, couplé à un moteur d’automatisation flexible, scalable et 100 % code‑visible (JSON).

En suivant le playbook de 30 jours présenté ci‑dessus, vous passez :

  1. De l’infrastructure (install, sécurisation).
  2. De la configuration (API & webhooks). 3. De la création de workflows concrets (devis → facture, paiement → CRM).
  3. Des tests rigoureux et du monitoring. Vous obtenez ainsi une automatisation prête à soutenir la croissance de votre PME ou de votre organisation, tout en gardant la possibilité d’étendre les scénarios à d’autres applications (e‑commerce, comptabilité cloud, outils de support).

N’hésitez pas à revenir vers moi pour :

  • Des exemples concrets de workflows plus complexes (ex : synchronisation bidirectionnelle entre Dolibarr et Odoo).
  • Des conseils de mise en place sur Kubernetes ou des scripts Terraform pour provisionner l’infrastructure.
  • Un audit de vos processus actuels afin d’identifier les prochains automatisations à prioriser.

Bon automatisme ! 🚀


Prepared by [Votre Nom] – Architecte Cloud & Automation, spécialiste Dolibarr & n8n.


À retenir : Dolibarr + n8n = ERP + Orchestration = Productivité + Réactivité.
30 jours suffisent pour passer d’un proof‑of‑concept à un flux de production robuste.


Fin du playbook.

Publications similaires