Intégrer Dolibarr avec Looker Studio : Méthode en 30 jours

Guide complet pour transformer vos données Dolibarr en tableaux de bord interactifs et décisionnels sous Looker Studio (anciennement Data Studio).


📌 Prérequis

Élément Description
Dolibarr Version 18+ (ou plus récente) fonctionnant en local ou sur un serveur hébergé.
Accès admin Possibilité d’activer des modules API et d’ajouter des extensions.
Looker Studio Compte Google (gratuit) et accès à la plateforme.
Compétences Base en administration de serveur, SQL, manipulation de données (optionnel).
Outils complémentaires (facultatif) Docker, Python/Power Automate (si automatisation lourde).

Note : Si vous n’avez pas encore installé Dolibarr, créez-le via le paquet docker-compose ou le script d’installation officielle (voir la documentation officielle).


🗓️ Calendrier 30 jours – Vue d’ensemble

Semaine Objectif principal Livrable
Semaine 1 Configurer l’infra & récupérer les données Export SQL ou API fonctionnels, accès sécurisé.
Semaine 2 Préparer le pipeline ETL (extraction → transformation) Scripts/Connecteurs fonctionnels, modèle de données simplifié.
Semaine 3 Charger les données dans Looker Studio Sources de données connectées, schéma validé.
Semaine 4 Concevoir et publier les tableaux de bord Dashboard final, documentation et formation utilisateurs.


📆 Détail jour‑par‑jour (30 jours)

Jour 1–3 – Audit & mise en place de l’accès

  1. Inventaire des modules Dolibarr indispensables

    • Customers / Suppliersllx_cUSTOMER, llx_FACPRO
    • Inventaire & stocksllx_product, llx_stock
    • Factures & devisllx_invoice, llx_invoiced, llx_invoice_line
    • Absences / Planningllx_... (exemple llx_holiday, llx_assignwork)

  2. Création d’un utilisateur API dédié

    • Menu > Configuration > Utilisateursuser_api
    • Permissions : Lecture sur les tables */*_* nécessaires, désactivation de l’accès admin.

  3. Activation de l’API Dolibarr

    • Extensions > Modules > API → Activer et copier la clé API (token).
    • Vérifier avec un curl :
      curl -H "Authorization: public_token YOUR_TOKEN" https://votre-dolibarr.com/dolibarr/json/getMainTitle.json

  4. Sauvegarde des bases (gestion sécurisée)

    • mysqldump -u root -p dolibarr > dolibarr_$(date +%F).sql
    • Conserver la dernière sauvegarde hors‑site.

Livrable : Token API, liste des tables exploitées, sauvegarde initiale.


Jour 4–7 – Extraction des données (phase exploratoire)

Action Détails
Export SQL Sauvegarder les tables clés (SELECT * FROM llx_customer LIMIT 1000 etc.) dans un fichier CSV (mysqldump --tab=…).
Appels API Utiliser Postman pour créer une collection d’appels (Customers, Invoices, Stocks). Ex : GET /dolibarr/json/listFactures.json?limit=100.
Test de latence Mesurer le temps de réponse. Si >5 s, prévoir un cache local (ex. Redis).
Pré‑selection des champs Créer un catalogue de champs à exporter (ex. nom_client, date_facture, montant_total, code_article, stock_disponible).
État initial du dataset Importer le CSV minimal dans Google Sheets pour obtenir une première vue (facultatif, mais très utile pour valider les.Field Mapping).

Livrable : 2 jeux de données (CSV + collection Postman) prêts à être ingérés.


Jour 8–12 – Conception du pipeline ETL (Extract‑Transform‑Load)

1️⃣ Choix du moteur ETL

Option Points forts Points faibles
Python + Pandas Contrôle total, script modulable, transformation conditionnelle. Nécessite un serveur ou un scheduler.
Talend Open Studio Interface graphique, support de nombreux connecteurs. Installation lourde, licences commerciales limitées.
Airbyte (ou Matillion Cloud) Connecteur Docker, scheduler intégré, UI moderne. Dépendance à Docker, besoin de ressources serveur.
Google Cloud Dataflow Scale auto, serverless. Complexité de déploiement si pas sur GCP.

Recommandation pour un projet 30 jours : Airbyte (Docker) ou Python + cron si vous avez déjà un serveur Linux.

2️⃣ Exemple de script Python (Airbyte‑style)

import requests, pandas as pd, json, io
API_TOKEN = "YOUR_API_TOKEN"
BASE_URL = "https://votre-dolibarr.com/dolibarr/json"
def get_table(table, params=None):
url = f"{BASE_URL}/list{uc(title(table))}.json"
headers = {"Authorization": f"public_token {API_TOKEN}"}
r = requests.get(url, headers=headers, params=params)
r.raise_for_status()
return pd.DataFrame(r.json())
# Exemple : récupérer les factures
df_factures = get_table('invoice')
df_factures['date'] = pd.to_datetime(df_factures['date']).dt.strftime('%Y-%m-%d')
df_factures.to_csv('/tmp/factures.csv', index=False)

Point clé : Convertir les champs de type float en décimales françaises (',''.') pour éviter les problèmes de parsing dans Looker.

3️⃣ Transformation

  • Normalisation des noms de colonnes → lowercase + snake_case.
  • Création de KPIs (ex. CA mensuel, Taux de rotation des stocks).
  • Gestion des doublons : garder la dernière version (WHERE updated_at = MAX(updated_at)).

4️⃣ Chargement → Google BigQuery (ou MySQL)

  • Option A : Charger directement dans une BigQuery table via l’API bq load.
  • Option B (plus simple) : Publier les CSV sur Google Cloud Storage → créer un DataSet dans BigQuery → Scheduler Cloud (ou un cron) qui rafraîchit les tables.

Livrable : Pipeline fonctionnel (Python/Airbyte + destination BigQuery/MySQL).


Jour 13–17 – Connexion de la source à Looker Studio

Action Détails
Créer un nouveau rapport Dans Looker Studio → Report > Créer.
Ajouter une source de données BigQuery → sélectionner le dataset contenant la table factures.
MySQL → ajouter le connecteur natif « MySQL » et saisir l’IP/credentials.
Vérifier le schéma S’assurer que les champs sont correctement typés (date, nombre, texte).
Test de connexion Exécuter un preview de 5 000 lignes – corriger les erreurs de conversion (ex. champs NULL non supportés).
Définir la fréquence de rafraîchissement  - Realtime (si petit volume) – Chaque heure ou Quotidien selon le besoin.
Documenter le rapport Nommer clairement le datasource (ex. Dolibarr_Factures_2024_Q4).

Astuce : Utiliser les noms de champs anglais pour éviter les collisions lors du clone de rapports.


Jour 18–22 – Conception du tableau de bord (UX)

Étape Description
1️⃣ Storytelling Définir les 3–4 objectifs majeurs :
• Suivi du chiffre d’affaires quotidien
• Taux de remplissage des stocks
• Gestion des absences (nombre d’absences par service)
• Ratio factures payées / impayées
2️⃣ Choix des graphiques Scorecard pour les totals
Line chart pour le CA mensuel
Bar stacked pour le compartiment par catégorie de produit
Table détaillée des factures en attente
3️⃣ Construction du tableau – Insérer chaque widget, ajuster le pixel ratio pour mobile/desktop.
– Utiliser les contrôles de filtre (date, filiale, catégorie).
4️⃣ Mise en forme – Palette de couleurs cohérente avec la charte graphique.
– Ajout d’un logo Dolibarr et d’un bandeau de titre.
5️⃣ Preview & surtout test de performance Rafraîchir les données en temps réel, vérifier le temps de chargement (< 5 s).
6️⃣ Publication Publier dans Google Drive ou Domain privé (via OAuth).
Définir les rôles (Viewer, Commentateur, Editeur).

Livrable : Dashboard complet, testé, partagé avec les parties prenantes.


Jour 23–26 – Automatisation & plan de maintenance

Action Mise en œuvre
Scheduler Créez un cron ou utilisez Airbyte Cloud Scheduler pour déclencher le script d’extraction tous les jours à 02h00 (hors heures de production).
Alertes Ajouter un Trigger dans Looker Studio (ou envoyer un email via Gmail Connecteur) lorsqu’un seuil critique (ex. stock < 5 %).
Monitoring Configurer un Dashboard de santé contenant :
• Ratio réussite ETL
• Latence API
• Volume de lignes traitées.
Documentation Rédigez un Runbook :
– Étapes pour relancer le pipeline
– Contact support (admin Dolibarr, admin Looker).
Tests unitaires Si vous avez utilisé Python, placer des tests pytest sur la fonction transform() pour garantir la stabilité après modifications.


Jour 27–30 – Formation & clôture du projet

Point Détails
Session de formation 1h de présentation live aux équipes business (finances, logistique). Partager le Guide d’utilisation (PDF de 3 pages).
Collecte des retours Formulaire Google Forms → 5 questions sur la clarté des KPI, la rapidité de chargement, les besoins d’évolution.
Plan d’évolution Liste des features futures :
• Export PDF automatisé
• Notification Slack des anomalies stockées
• Intégration des signatures électroniques Dolibarr.
Archivage Sauvegarder le projet Git (scripts, README) et le tableau de bord Looker (via Export).
Clôture officielle Réunion de 30 min avec le sponsor du projet → validation du Livrable final et signature du Livrable Acceptance Form.


🛠️ Checklist finale (à cocher avant le jour 30)

  • [ ] API Dolibarr générée et validée.
  • [ ] CSV/JSON de tables critiques extraites et versionnées. – [ ] Pipeline ETL (Python/Airbyte) configuré, testé avec logs.
  • [ ] Destination (BigQuery/MySQL) créée, les tables sont rafraîchies quotidiennement.
  • [ ] Connexions Looker Studio fonctionnent sans erreur de type.
  • [ ] Dashboard produit 4+ visualisations, tests de performance < 5 s.
  • [ ] Partages et permissions définis (Viewer / Editor).
  • [ ] Scheduler automatisé + monitoring en place.
  • [ ] Documentation (Runbook + Guide Utilisateur) rédigée.
  • [ ] Session de formation réalisée et retours collectés.


🎯 Bénéfices attendus

KPI Valeur cible (30 jours)
Temps moyen de génération d’un rapport < 5 s (au lieu de > 15 min sous Excel).
Visibilité du CA mensuel 100 % des collaborateurs consultent le tableau de bord chaque début de mois.
Réduction des erreurs de saisie comptable – 30 % (les champs sont directement alimentés par le tableau de bord).
Adoption par les équipes logistiques 80 % des responsables stock utilisent le tableau pour suivre les seuils de réapprovisionnement.
Coût d’intégration 0 € (si vous utilisez les outils déjà disponibles).


📚 Ressources complémentaires

Type Lien
Documentation officielle Dolibarr https://www.dolibarr.org/doc/function/
API Dolibarr – JSON https://www.dolibarr.org/wiki/en/API_Json
Looker Studio – Connecteurs https://support.google.com/lookerstudio/answer/6364133
Airbyte – Connectors https://airbyte.com/connectors
Tutoriel Python + Looker Studio https://www.youtube.com/watch?v=Kx3uUeK8p5Y
Guide de bonnes pratiques ETL https://www.datapipeline.org/


👤 Auteur

Jean‑Claude MARTIN, consultant en transformation digitale – spécialisé ERP open‑source (Dolibarr, Odoo, GLPI).
Formateur certifié Looker Studio, créateur de Data‑Ops pour les PME françaises.
Contact : jc.martin@exemple.com | LinkedIn : https://linkedin.com/in/jc-martin


🙌 Vous avez aimé cet article ?

Partagez-le, laissez un commentaire ou contactez‑moi pour toute question sur votre projet d’intégration Dolibarr ↔ Looker Studio.

Bonne création de tableaux de bord ! 🚀

Publications similaires