Cas pratique • Distribution d'équipements de laboratoire

Synchroniser un ERP, un CRM et Outlook pour supprimer les doubles saisies

Une PME qui vend et installe des équipements de laboratoire relie HubSpot, Odoo et Outlook. Les prospects, contacts, devis, commandes et échanges commerciaux circulent selon des règles précises, sans recréer les mêmes données dans chaque outil ni laisser plusieurs versions d'un même client se contredire.

Architecture de synchronisation entre HubSpot, Odoo et Outlook dans une PME d'équipements de laboratoire
Entreprise
Distributeur d'équipements de laboratoire, 38 salariés
Volume
120 clients actifs et 250 mises à jour par jour
Équipe
6 commerciaux, 3 assistantes ADV et 4 techniciens
Outils concernés
HubSpot, Odoo, Outlook et PostgreSQL

Avant l'automatisation

Avant : les mêmes clients existaient sous plusieurs versions dans le CRM, l'ERP et les boîtes mail

Les commerciaux créaient les prospects, contacts et opportunités dans HubSpot. Lorsqu'une affaire était gagnée, une assistante ADV recréait le client dans Odoo, recopiait l'adresse de facturation, l'adresse de livraison, le numéro de TVA et les contacts nécessaires à la commande.

Les échanges, pièces techniques et confirmations restaient dans Outlook. Une modification demandée par un laboratoire pouvait être enregistrée dans HubSpot, corrigée dans Odoo ou simplement rester dans un fil d'email. L'équipe ne savait donc pas toujours quelle adresse utiliser pour la livraison, quel contact devait recevoir la facture ou quelle version du devis avait réellement été validée.

Les doublons se multipliaient lorsqu'un même groupe possédait plusieurs laboratoires ou lorsque le nom de l'établissement variait légèrement. Les corrections étaient réalisées dans un outil sans être répercutées dans les autres, créant cette élégante situation où trois logiciels fiables produisent ensemble une information incertaine.

Système mis en place

Après : chaque type de donnée possède une source de vérité et une règle de circulation

HubSpot reste la source de vérité pour les prospects, contacts commerciaux, opportunités et prochaines actions. Odoo devient la référence pour les clients facturés, les adresses de livraison, les commandes, les conditions de paiement et les équipements vendus.

Lorsqu'une opportunité passe au statut « gagnée » dans HubSpot, le workflow vérifie les champs obligatoires, recherche un client existant dans Odoo et crée le compte uniquement si aucun rapprochement fiable n'est trouvé. L'identifiant Odoo est ensuite renvoyé dans HubSpot afin de relier les deux fiches.

Outlook conserve les échanges, mais les emails liés à une opportunité ou à une commande sont associés au bon dossier par leur identifiant. Les conflits d'adresse, les doublons possibles et les champs incomplets rejoignent une file de validation au lieu d'être propagés automatiquement dans tous les systèmes.

Déroulement du workflow

Le workflow ne copie pas toutes les données partout. Il fait circuler uniquement les informations nécessaires, depuis une source clairement définie vers le système concerné.

  1. Détecter une opportunité gagnée ou une modification utile dans HubSpot
  2. Contrôler le SIREN, la TVA, les adresses et les contacts obligatoires
  3. Rechercher le client existant dans Odoo
  4. Créer ou mettre à jour le compte selon les règles de priorité
  5. Renvoyer l'identifiant Odoo et le statut de synchronisation dans HubSpot
  6. Rattacher les emails Outlook au bon client, devis ou commande
  7. Placer les doublons et conflits dans une file de validation
  8. Journaliser les échanges, corrections et reprises

Ce qui reste sous contrôle humain

  • Validation des doublons et rapprochements ambigus
  • Décision sur les conflits d'adresse ou de contact
  • Correction de la donnée dans son système source
  • Évolution des règles de synchronisation et des droits d'accès

Effets opérationnels possibles

  • Suppression d'une grande partie des doubles saisies
  • Clients et contacts plus cohérents entre les services
  • Moins de recherches avant commande ou livraison
  • Traçabilité des synchronisations et des erreurs

Exemple de règle de synchronisation

L'opportunité « Spectromètre laboratoire Bordeaux » passe au statut « gagnée » dans HubSpot. Le système contrôle le SIREN, l'adresse de livraison, le contact facturation et recherche un établissement correspondant dans Odoo.

Opportunité gagnée → client Odoo retrouvé → commande préparée → identifiant Odoo renvoyé dans HubSpot

Si deux établissements portent un nom proche ou si l'adresse de facturation diffère de celle déjà enregistrée, la création est suspendue. L'assistante ADV reçoit les deux fiches, les champs en conflit et l'historique nécessaire pour décider s'il faut mettre à jour le client ou créer un nouvel établissement.

Points de vigilance

  • 1. Chaque champ doit posséder une source de vérité clairement définie.
  • 2. Une synchronisation bidirectionnelle ne doit pas créer de boucle ni écraser une valeur plus récente.
  • 3. Les identifiants techniques doivent être conservés entre HubSpot et Odoo.
  • 4. Les erreurs doivent être reprises sans rejouer les opérations déjà réussies.
  • 5. Toute évolution d'API, de schéma ou de droit d'accès doit être surveillée.

La sécurité, les droits d'accès, le RGPD, la journalisation des erreurs et les tests de reprise doivent être adaptés aux données commerciales et financières échangées.

Conclusion du cas

Chaque information est créée une fois, dans le bon outil, puis diffusée selon une règle connue

Dans ce scénario, HubSpot pilote la relation commerciale, Odoo gère la commande et Outlook conserve les échanges. La couche d'intégration relie ces systèmes, isole les conflits et empêche les équipes de maintenir plusieurs versions concurrentes du même client.

Autres cas pratiques

Voir les 8 cas →

Vos équipes ressaisissent-elles encore les mêmes clients dans plusieurs logiciels ?

Un diagnostic permet de cartographier les données, définir les sources de vérité, identifier les conflits possibles et concevoir les synchronisations réellement utiles.

Réserver un diagnostic de 20 minutes