Aller au contenu
carlen.fr
· Groupe SERMES

Une couche d'API moderne au-dessus d'un AS/400 de plus de 30 ans.

Groupe SERMES, distributeur industriel B2B en Alsace. Cœur de SI : un ERP AS/400 en production depuis 30+ ans, qui pilote pricing, stocks et facturation pour 700 k+ références produits et 200 fournisseurs.

§01 · context

Un SI applicatif fonctionnel, mais isolé.

L'AS/400 fonctionne parfaitement, mais il est isolé : aucun e-commerce, aucun agrégateur de marketplace, aucun moteur de pricing temps réel ne peut interagir avec lui directement. Le coût de réécriture est prohibitif. Solution : construire une couche d'API moderne au-dessus de l'AS/400, sans toucher au système central.

§02 · challenge

Pricing temps réel sur 100 % du catalogue.

700 k+ références, 200 fournisseurs, une large base de clients B2B, des marketplaces à synchroniser. Construire un moteur de pricing « Classement Clients » appliquant une règle de prix avec contrôle de marge en temps réel sur l'intégralité du catalogue et de la base clients.

§03 · ce qui a été fait

Nov. 2021 → déc. 2023.

  • Couche d'API normalisée (Swagger / OpenAPI) au-dessus de l'ERP AS/400, écrite en PHP et exposant la totalité des entités métier en RESTful. Devenue le socle des deux e-commerce du groupe (SERMES et Willy Leissner) et de l'agrégateur multi-marketplaces.
  • Moteur de pricing « Classement Clients » : règle de prix temps réel avec contrôle de marge, appliqué à l'intégralité des clients et des références.
  • Maintenance et évolution d'un e-commerce B2B à très large catalogue (700 k+ références).
  • Réduction de dette technique sur un SI applicatif de plus de 30 ans : DB2 / AS/400, RPG, ETL ARCAD.
  • Interfaçage aux normes industrielles : FAB-DIS, ETIM (catalogues B2B).
§04 · stack

Modernité par-dessus mainframe.

backend
  • PHP
  • Symfony
  • Swagger / OpenAPI
  • API REST
mainframe
  • IBM Db2 / AS/400
  • RPG IV ILE
  • ARCAD
  • ETL
data
  • MySQL
  • FAB-DIS
  • ETIM
  • Webservice IBMi
devops
  • Docker
  • Docker Compose
  • GitLab CI
  • Git