Le contexte
Un acteur du retail français avec une trentaine de points de vente physiques voulait lancer son activité e-commerce. La contrainte forte : refuser toute modification de son système logistique interne, un AS400 en place depuis quinze ans qui orchestre tout le back-office (stocks, commandes magasins, approvisionnements, facturation). Le vrai sujet n'était donc pas de moderniser le SI mais de faire cohabiter un site e-commerce moderne avec un legacy intouchable, tout en garantissant une synchronisation fiable des stocks et des commandes dans les deux sens.
Le défi
Le système AS400 n'exposait aucune API moderne et ne pouvait pas être modifié. Il fallait concevoir une couche d'abstraction capable de lire les données du legacy en respectant ses contraintes, de garantir la synchronisation même en cas de pic de charge, et de gérer les cas limites qui existent toujours entre un site e-commerce et une logistique physique : ruptures de stock imprévues, retours produits, écarts d'inventaire, commandes annulées en caisse.
Notre solution
Nous avons conçu une couche API intermédiaire jouant le rôle de traducteur entre la boutique Next.js et l'AS400, sans jamais modifier le legacy. Un système de queues RabbitMQ absorbe les pics et garantit qu'aucune commande n'est perdue. Nous avons implémenté une réconciliation nocturne qui compare les états des deux systèmes, et un système de réservation optimiste affiche les stocks en temps réel tout en prévenant les doubles ventes. La mise en ligne s'est faite par étapes.
Résultats
- CA e-commerce +40% en 6 mois
- Zéro rupture de stock non détectée
- Système legacy préservé intact
- Taux de satisfaction client 4.8/5
