Business
Intégration Sage X3 avec Boomi : à chaque flux son canal
Base de données, web services ou fichiers SFTP : quatre canaux pour intégrer Sage X3 avec Boomi, choisis selon la fraîcheur, le volume et le sens des flux.
6 min de lectureLahcen Ezzara
- Sage X3
- Boomi
- Salesforce
- SFTP
- API

Sage X3 est le cœur du système d’information : articles, tarifs, stocks, commandes, factures — la donnée de gestion y naît et s’y gère. Mais un ERP ne crée de la valeur que s’il échange avec le reste du SI.
La vraie question n’est donc pas s’il faut connecter Sage X3, mais comment : par sa base de données ? par ses web services? par des fichiers ? En batch ou en temps réel ? Chaque flux appelle sa réponse.
Sur près de vingt flux mis en œuvre autour de Sage X3 avec la plateforme d’intégration Boomi — pour alimenter Salesforce et les applications commerciales —, quatre canaux se sont imposés. Les voici, illustrés par des cas concrets, avec la logique d’arbitrage qui les départage.
Connecter un ERP, c’est plus que déplacer de la donnée
Un ERP ne se contente pas de stocker des enregistrements : il porte des transactions, des référentiels partagés et des règles de gestion. Le relier au reste du SI soulève trois exigences souvent sous-estimées.
La première est la fraîcheur : une disponibilité de stock fausse de quelques heures devient une promesse client intenable — un commercial qui s’engage sur un produit déjà parti. La deuxième est le volume : un catalogue de plusieurs centaines de milliers d’articles ne peut pas se rejouer en entier à chaque cycle sans saturer l’ERP. La troisième est la fiabilité.
« Un flux qui échoue à moitié laisse deux systèmes désynchronisés — pire qu’un flux absent. »
Répondre à ces trois exigences avec un canal unique est illusoire. Tout l’enjeu consiste à choisir, pour chaque flux, la porte d’entrée adaptée.
Trois portes d’entrée, quatre canaux
Sage X3 s’intègre par trois portes : sa base de données, ses web services SOAP/REST et une zone d’échange de fichiers. Boomi les emprunte toutes — en lecture comme en écriture, en batch comme en temps réel. Quatre canaux se dessinent.

Architecture globale d’intégration Sage X3 orchestrée par Boomi — quatre modes adaptés à chaque flux.
Le batch intelligent : lire la base de données en incrémental
Pour les gros référentiels, Boomi lit la base de Sage X3 à intervalle planifié. Le principe est incrémental : à chaque passage, seules les lignes modifiées depuis la dernière exécution sont relues.
L’exemple le plus parlant est le catalogue articles et les grilles tarifaires. Sur un référentiel de plusieurs centaines de milliers d’articles, une exécution complète à chaque cycle saturerait l’ERP pour ne rafraîchir, au fond, que les quelques centaines de lignes modifiées dans la journée. Le mode incrémental ne fait circuler que ce différentiel.
Les tarifs ajoutent une subtilité utile : une même grille issue de l’ERP se répartit, selon le type de prix — prix nets, remises, frais —, vers plusieurs objets distincts de Salesforce. Boomi route chaque ligne vers sa cible, sans intervention.

Le temps réel : interroger l’ERP à la seconde
Quand la fraîcheur prime, Boomi appelle un webservice de Sage X3 et obtient une réponse immédiate. Rien n’est stocké : la donnée est lue à l’instant exact du besoin, dans l’état réel de l’ERP.
L’exemple emblématique est la disponibilité d’un produit vendu à la coupe. Lorsqu’un commercial demande « ai-je cette référence, dans la longueur voulue, maintenant ? », la réponse ne peut pas venir d’un stock importé la veille. Le web service de l’ERP calcule la disponibilité réelle à partir des longueurs effectivement en stock — pièce entière, chute réutilisable, ou coupe à réaliser.
Même logique pour vérifier l’encours d’un client avant d’engager une commande, ou le statut d’une commande en cours : l’information est lue à la source, au moment où la décision se prend.

L’écriture sans ressaisie : alimenter Sage X3 par web service
Le même canal fonctionne dans l’autre sens : Boomi appelle un web service de l’ERP pour créer ou mettre à jour un objet, puis récupère l’accusé — numéro généré, messages de gestion, erreurs éventuelles.
L’exemple type est la commande. Validée dans Salesforce, elle est créée dans l’ERP en quelques secondes ; l’ERP renvoie aussitôt son numéro, qui revient s’afficher dans Salesforce. Le vendeur sait que sa commande est passée, sans avoir rien ressaisi.
Deux détails font la robustesse. L’accusé de réception, qui trace le succès et ramène le numéro ERP. Et la gestion d’erreur: un rejet — référence déjà existante, contrôle de gestion — est capté et journalisé, jamais perdu en silence. Le même canal sert à créer un compte client ou une référence article-client.

Les fichiers : le canal des échanges en lot
Certaines données restent livrées en lot : exports programmés, échanges avec des partenaires, documents. Sage X3 les dépose dans une zone d’échange SFTP volontairement séparée de l’ERP — aucun système tiers n’accède directement à Sage X3, et un incident côté échanges reste sans effet sur la production.
L’exemple concret est la facture. Éditée en PDF par l’ERP, elle est déposée sur la zone SFTP ; Boomi la récupère, la contrôle et la rattache automatiquement à la facture correspondante dans Salesforce, où les équipes la consultent. Le même canal porte les échanges EDI avec des partenaires, dont beaucoup n’exposent pas d’API.

« Est-ce disponible ? » : un même besoin, deux canaux
Un même objet métier peut mobiliser deux canaux. Reprenons le produit vendu à la coupe : pour répondre « est-ce livrable ? », Salesforce interroge l’ERP en temps réel, qui évalue la disponibilité réelle compte tenu des longueurs en stock, et la réponse repart en quelques instants.
Ce même article descend par ailleurs, en lecture incrémentale, pour alimenter le catalogue et les tarifs de Salesforce. Deux exigences de fraîcheur opposées, deux canaux, un seul outil : c’est cette combinaison, choisie au cas par cas, qui rend l’ensemble cohérent.
Arbitrer en trois questions
Le choix du canal se ramène à trois questions : la donnée doit-elle être fraîche à la seconde ? quel est son volume ? dans quel sens circule-t-elle ?
| Besoin | Canal Sage X3 | Mode | Stratégie |
|---|---|---|---|
| Gros référentiel, latence acceptable | Base de données | Scheduler | Lecture incrémentale |
| Réponse immédiate : disponibilité, encours ou statut | Web service | Temps réel | Lecture à la demande |
| Créer ou mettre à jour dans l’ERP | Web service | Temps réel | Écriture avec accusé de réception |
| Donnée livrée sous forme de fichier | Zone d’échange SFTP | Scheduler | Contrôle et transformation |
Ce qui fait tenir l’intégration en production
Choisir le bon canal ne suffit pas ; encore faut-il que le flux tienne dans la durée. Quatre principes y veillent.
Une clé d’identification stable. Un code ERP unique par enregistrement — l’article, le site, ou leur combinaison — sert de clé d’upsert : chaque mise à jour retrouve sa cible, sans créer de doublon.
Des opérations rejouables. Tout passe en upsert : relancer un flux après incident ne duplique ni ne corrompt la donnée.
Une supervision de bout en bout. Chaque exécution est tracée dans un outil de monitoring des flux ; un échec déclenche une alerte, et un flux se rejoue isolément sans tout relancer.
Le respect de l’ERP. Lecture incrémentale, lots maîtrisés (jusqu’à 200 enregistrements par appel d’API) et zone d’échange isolée limitent la charge et l’exposition : l’intégration ne doit jamais dégrader Sage X3 en production.
Ces choix d’architecture, plus que l’outil, déterminent la fiabilité finale.
Ce qu’il faut retenir
- Sage X3 s’intègre par trois portes — base de données, web services, zone d’échange de fichiers — en lecture comme en écriture.
- Le mode incrémental rend le batch soutenable à grande échelle : seul le différentiel circule.
- Le bon canal se choisit flux par flux, selon la fraîcheur attendue, le volume et le sens de circulation.
Cartographier les flux d’un Sage X3 et affecter à chacun le bon canal : c’est ce qui distingue une intégration durable d’un empilement de scripts.


