ERP

Intégrer un ERP legacy avec une API moderne : approches et pièges

AS400, SAP, Oracle, ERP maison — intégrer un système legacy avec un CRM moderne est l'un des défis les plus complexes en développement d'entreprise. Les patterns qui fonctionnent.

Dans la majorité des projets CRM sur mesure pour des ETI, on retrouve un ERP legacy qu'il faut intégrer. Qu'il s'agisse d'un AS400, d'un SAP R/3 des années 2000, d'un Oracle ou d'un ERP maison en VB6, le défi est toujours le même : faire parler des technologies de générations différentes sans compromettre ni l'un ni l'autre.

Pattern 1 : Event-driven avec queue de messages

Le pattern le plus robuste pour l'intégration legacy : ne pas appeler le legacy directement depuis le CRM, mais publier des événements dans une queue (RabbitMQ, AWS SQS, Redis Bull) que le legacy peut consommer à son rythme. Avantages : découplage total, pas de dépendance de disponibilité, rejouabilité des messages en cas d'erreur.

Pattern 2 : API Gateway / Adapter layer

  • →Créer une couche d'adaptation entre le CRM moderne et le legacy
  • →Le CRM appelle toujours une API REST/GraphQL standardisée
  • →L'adapter traduit ces appels dans le protocole du legacy (SOAP, fichiers plats, DB directe)
  • →Avantage : le CRM est isolé des détails techniques du legacy
  • →Si le legacy est remplacé demain, seul l'adapter change — pas le CRM

Pattern 3 : Synchronisation par base de données intermédiaire

Quand le legacy ne permet aucune intégration directe (pas d'API, pas de webhook), la synchronisation via base de données intermédiaire est une solution pragmatique : le legacy écrit dans des tables de staging, un job ETL lit ces tables et pousse dans le CRM. C'est moins élégant mais souvent la seule option praticable.

Les pièges classiques

  • →Couplage fort : appels synchrones directs entre CRM et legacy — un timeout dans le legacy bloque le CRM
  • →Pas de gestion des erreurs : un message raté silencieusement crée des désynchronisations invisibles
  • →Ignorer les transactions : une commande créée dans le CRM mais pas dans l'ERP = incohérence comptable
  • →Sous-estimer la durée : une intégration legacy 'simple' prend rarement moins de 2 mois

Observabilité : la clé pour maintenir l'intégration

Une intégration sans logs structurés et sans alertes est une bombe à retardement. Loggez systématiquement chaque échange (timestamp, direction, payload, réponse, durée, erreur éventuelle). Configurez des alertes sur les taux d'erreur et les latences. Votre équipe support vous remerciera.

Un projet CRM sur mesure en tête ?

Échange confidentiel · Réponse sous 24h · Sans engagement

Discuter de votre projet