Intégration API Fournisseurs de Données Produits
Connecteur Symfony qui ingère, transforme et structure les données produits provenant de plusieurs fournisseurs aux formats hétérogènes, avant de les pousser dans le PIM.
1. Présentation du projet
Développement d'un connecteur générique permettant d'ingérer les catalogues de plusieurs fournisseurs partenaires de STAM IT et de les normaliser dans le format du PIM, malgré des formats d'API très différents (REST/JSON, formats propriétaires).
2. Objectifs, contexte, enjeu et risques
- Connecter STAM IT à plusieurs APIs fournisseurs
- Normaliser les formats de données hétérogènes
- Importer automatiquement nouveaux produits et mises à jour
- Tracer chaque ingestion pour audit et reprise sur erreur
STAM IT travaille avec plusieurs fournisseurs qui exposent leurs catalogues via des APIs aux formats très variés. Sans connecteur unifié, chaque intégration prenait des semaines et demandait du code ad hoc à chaque fois.
Plus la mise à disposition d'un nouveau catalogue fournisseur est rapide, plus l'entreprise réagit vite au marché. L'enjeu est de transformer un travail de plusieurs semaines en un paramétrage de quelques jours.
- Formats fournisseurs variables et mal documentés
- Données manquantes ou incohérentes
- Limitations API (rate limit, pagination)
- Nécessité de gérer les erreurs sans perdre de données
3. Étapes — ce que j'ai fait
- 1Analyse des formats d'API des fournisseurs partenaires
- 2Conception d'une couche d'abstraction (driver par fournisseur)
- 3Implémentation Symfony avec parsing, mapping et validation
- 4Mise en place d'un système de file de traitement et de logs
- 5Tests sur catalogues réels et calibrage des règles
- 6Documentation et mode d'emploi pour ajouter un nouveau fournisseur
4. Acteurs et interactions
Architecture du connecteur, développement Symfony, gestion des cas particuliers fournisseurs
Validation des règles métier, vérification des données importées
Support technique sur leurs APIs, documentation, montée en quotas
5. Résultats
- Maîtrise approfondie de la conception de connecteurs API
- Renforcement en parsing, mapping et gestion d'erreurs
- Capacité à transformer un besoin business flou en architecture technique propre
- Délai d'intégration d'un nouveau fournisseur réduit de plusieurs semaines à quelques jours
- Catalogue produits enrichi automatiquement
- Traçabilité complète des imports (audit, reprise sur erreur)
6. Les lendemains du projet
Premier fournisseur intégré sur le connecteur, validation des règles de mapping.
Plusieurs fournisseurs intégrés, le connecteur sert de socle pour toute nouvelle intégration.
Refactoring prévu vers une approche pilotée par configuration (no-code partiel) pour que l'équipe métier puisse paramétrer elle-même les nouveaux fournisseurs.
7. Mon regard critique
Concevoir une couche d'abstraction trop générique au départ aurait été une erreur : j'ai d'abord construit une intégration spécifique, puis j'ai dégagé les patterns communs. Mon principal enseignement : ne pas sur-anticiper l'abstraction, la laisser émerger des cas réels.
