Introduction
Dans un environnement professionnel où l’automatisation des processus est devenue cruciale, l’intégration entre un ERP/CRM comme Dolibarr et un outil d’automatisation visuelle comme n8n offre des possibilités immenses. Ce tutoriel vous guide pas à pas dans la connexion de ces deux plateformes, avec un focus particulier sur l’optimisation des performances et la fiabilité des flux de travail.
Pourquoi intégrer Dolibarr et n8n ?
Dolibarr excelle dans la gestion des ressources (facturation, stocks, projets, CRM), mais ses possibilités d’automatisation native sont limitées. n8n permet de créer des workflows visuels complexes connectant des centaines d’applications. Leur combinaison vous permet de :
- Synchroniser automatiquement les prospects entre Dolibarr et d’autres outils (SendGrid, Google Sheets, etc.)
- Créer des factures depuis des commandes reçues sur une boutique en ligne
- Alertes proactives pour les suivis de paiement ou les stocks bas
- Centraliser les données clients depuis plusieurs sources
Note sur les performances : Une mauvaise configuration peut entraîner des délais, des erreurs de rate limiting (limitation de débit) ou une consommation excessive de ressources. Ce tutoriel intègre les bonnes pratiques dès le départ.
Prérequis
- Dolibarr (version 14+ recommandée) avec un accès administrateur
- n8n installé (auto-hébergé ou cloud.n8n.io)
- Compte avec droits API sur Dolibarr
- Connaissances de base sur les APIs REST et les workflows n8n
Étape 1 : Préparer Dolibarr pour l’API
1.1 Activer l’API REST
Dans Dolibarr :
Accueil → Configuration → Modules/Applications → API REST
- Cochez "Activer l’API REST"
- Définissez une URL de base si besoin (ex:
https://votredomaine.com/api/) - Sauvegardez
1.2 Créer une clé API dédiée (recommandé pour la performance)
- Allez dans "Utilisateurs et groupes"
- Sélectionnez un utilisateur dédié aux automatisations (pas un compte admin personnel)
- Sous l’onglet "API", générez une nouvelle clé
- Copiez cette clé (elle ne sera affichée qu’une fois)
Astuce performance : Utilisez un utilisateur aux permissions minimales nécessaires (lecture/écriture seule sur les modules concernés) pour éviter les scans inutiles et réduire les risques.
Étape 2 : Configurer les identifiants n8n
Dans n8n :
- Cliquez sur "Credentials" (icône clé en bas à gauche)
- "Create New Credential"
- Choisissez "HTTP Request" (nous allons utiliser l’API generic, plus performant que le node Dolibarr communautaire parfois obsolète)
- Configurez :
| Champ | Valeur |
|---|---|
| Name | Dolibarr API - Production |
| Authentication | Generic Credential Type |
| API Key | DOLIBARR_API_KEY (la clé générée) |
| Header Name | Authorization |
| Header Value | Bearer VOTRE_CLE_API |
| Base URL | https://votredomaine.com/api/index.php/ |
Important : n8n ajoute automatiquement /api/ si vous ne terminez pas l’URL par un slash. Vérifiez la syntaxe finale.
Étape 3 : Tester la connexion avec un workflow simple
3.1 Créer un nouveau workflow
Cliquez sur "+ New Workflow"
3.2 Ajouter un node "HTTP Request"
- Credential : sélectionnez votre credential Dolibarr
- Method :
GET - URL :
/institutions(pour tester avec une endpoint légère) - Options → Response Format :
JSON
3.3 Tester
- Cliquez sur "Execute Node"
- Si succès, vous voyez la liste des prospects/entreprises.
Dépannage :
- Erreur 401 : clé API invalide
- Erreur 404 : endpoint incorrect ou module non activé dans Dolibarr
- Erreur 429 : trop de requêtes → voir section optimisation
Étape 4 : Exemple pratique – Synchroniser un nouveau prospect
Objectif
Quand un nouveau prospect est ajouté dans un Google Sheet, créer l’entreprise correspondante dans Dolibarr.
Workflow
Google Sheets (Trigger) → HTTP Request → [Optionnel] Slack alert
Node HTTP Request configuration optimisée :
- Method :
POST - URL :
/thirdparties - Body (JSON) :
{
"name": "{{ $json["Nom entreprise"] }}",
"status": "0",
"type": "0",
"address": "{{ $json["Adresse"] }}",
"zip": "{{ $json["Code postal"] }}",
"town": "{{ $json["Ville"] }}",
"country_id": "1",
"phone": "{{ $json["Téléphone"] }}",
"email": "{{ $json["Email"] }}"
}
Astuce performance : Ne récupérez que les champs nécessaires depuis Google Sheets (utilisez les colonnes spécifiques). Moins de données = exécution plus rapide.
Étape 5 : Optimisations avancées pour la performance
5.1 Gestion des batchs (pour les imports massifs)
Au lieu d’envoyer une requête par enregistrement :
- Regroupez les données dans un tableau (depuis un fichier CSV ou Google Sheets)
- Utilisez une boucle
Split In Batches(n8n) avec taille de lot de 10-20 records - Dans le HTTP Request, utilisez
{{ $json }}qui contiendra le tableau - Endpoint Dolibarr :
/thirdparties/create_multiple(si disponible) ou plusieurs POST en série
5.2 Mise en cache des données statiques
Si vous récupérez souvent les mêmes données (pays, types de tiers) :
- Créez un workflow séparé qui récupère ces données une fois par jour
- Stockez-les dans n8n’s "Data" ou un fichier JSON
- Utilisez
LookupouMergedans vos workflows principaux plutôt que d’appeler Dolibarr à chaque fois
5.3 Gestion des erreurs et retry
Dans le node HTTP Request :
- Options → Retry : activez avec 3 tentatives, délai de 2s
- Continue on Fail :
false(pour éviter les données fantômes) - Ajoutez un node "IF" après pour détecter les erreurs et envoyer une alerte Slack/email
5.4 Limiter les appels inutiles
Dans Dolibarr, vérifiez que :
- Les modules non utilisés sont désactivés (moins d’endpoints à scanner)
- L’utilisateur API n’a pas de privilèges superflus
Étape 6 : Workflows de maintenance et surveillance
6.1 Cron job pour synchronisation périodique
Créez un workflow avec :
- Trigger "Schedule" (ex: tous les jours 2h du matin)
- Node HTTP Request qui récupère les nouvelles données Dolibarr depuis
last_update_date - Compare avec votre système externe
- Met à jour uniquement si différence
6.2 Monitoring
- Activez les "Execution Logs" dans n8n (Configuration → Settings)
- Utilisez le node "Wait" avec timeout pour éviter les boucles infinies
- Exportez les logs vers un fichier ou une DB pour analyse
Bonnes pratiques supplémentaires
- Versionnez vos workflows : exportez-les comme JSON dans un仓库 Git.
- Utilisez des variables d’environnement dans n8n pour les URLs et clés ( Configuration → Variables).
- Testez en environnement pré-production avant de déployer sur Dolibarr production.
- Documentez vos endpoints : créez une note interne listant tous les endpoints Dolibarr utilisés et leur fréquence d’appel.
- Surveillez les logs Dolibarr :
htdocs/commitlog.phppeut révéler des appels API excessifs.
Conclusion
L’intégration Dolibarr-n8n, lorsqu’elle est bien architecturée, devient un levier puissant pour votre productivité. Les clés du succès résident dans :
- Une configuration API sécurisée et minimaliste
- La批 traitement des données pour éviter les appels unitaires
- Une gestion robuste des erreurs
- La surveillance continue des performances
En suivant ce tutoriel, vous disposez maintenant d’une base solide pour automatiser vos processus métier sans saturer votre ERP ni your automate. Commencez par un petit workflow, mesurez les temps d’exécution, puis itérez vers la complexité.
Ressources
Article rédigé avec des retours d’expérience terrain sur des intégrations en production.