Le projet en un coup d’œil
Disponible, entrants, réservés, invendables, ventes et date de rupture existaient, sans être réunis dans un plan de demande exportable.
Pour chaque ligne d’entrepôt, Ciama annualise les ventes récentes par mois puis les projette sur un horizon de un à douze mois.
Les filtres restent actifs pendant la génération et l’export, afin que la feuille obtenue corresponde exactement à la revue préparée.
Une revue de réassort commence rarement par une donnée manquante. Le problème vient plutôt de données dispersées : un stock disponible, des unités déjà entrantes, des réservations, des invendables, des ventes récentes et une date de rupture estimée. Tant que ces valeurs restent dans des écrans séparés, l’équipe doit reconstruire son périmètre avant même de discuter des quantités.
Ciama possédait ces informations au niveau le plus utile pour la logistique : la ligne de stock d’un entrepôt. Dawap a construit le Replenishment Planner pour transformer ce catalogue en une préparation de revue reproductible. L’utilisateur choisit l’entrepôt, affine les références, règle un horizon puis obtient une recommandation dont la formule reste visible.
Le projet renforce notre approche du réapprovisionnement marketplace sans annoncer une optimisation que les données ne portent pas encore. Le Planner n’intègre pas les délais fournisseurs, les minimums d’achat ou la trésorerie : il fournit une projection de demande contrôlable, le contexte de stock nécessaire à l’arbitrage et un export prêt à circuler dans le processus d’achat.
1. Ciama, un produit construit autour des opérations vendeurs
Faire travailler ensemble données marketplace, entrepôts et préparation des achats
Ciama Marketplace est développé par Dawap pour réunir catalogue, offres, commandes, stocks, concurrence et rentabilité dans un cockpit vendeur. Le produit suit aussi les dimensions logistiques qui conditionnent la disponibilité : entrepôts, références FnSku et SellerSku, quantités entrantes, réservées ou invendables.
Le besoin traité ici ne consistait pas à générer automatiquement des bons de commande. Il fallait d’abord donner une forme commune à la discussion de réassort : quel entrepôt examine-t-on, quelles lignes appartiennent au périmètre, quelle demande récente observe-t-on et quelle quantité cette demande représente-t-elle sur plusieurs mois ?
Ce choix de périmètre est déterminant. Une recommandation calculée par produit global aurait mélangé les lieux de stockage et leurs réalités. Le Planner travaille donc par entrepôt et conserve la ligne de stock comme unité de lecture. Deux lignes d’un même produit peuvent apparaître séparément si leurs identifiants ou leurs disponibilités diffèrent.
Le module existe à la fois dans un accès transversal de procurement et dans la vue d’un entrepôt. Les deux parcours s’appuient sur la même sélection et la même formule, afin que l’équipe n’obtienne pas deux vérités selon son point d’entrée.
2. Construire un outil de préparation avant un moteur de décision
Rendre le périmètre, la formule et l’export parfaitement cohérents
Le cœur du parcours de génération a été structuré en mars 2026, avec une vue par entrepôt, un horizon réglable et un export. En avril, les routes et les responsabilités ont été séparées pour distinguer l’exploration, la génération et le téléchargement sans dupliquer la logique fonctionnelle.
Le 18 juin 2026, le périmètre a été consolidé : toutes les lignes de stock de l’entrepôt sélectionné restent visibles par défaut, y compris celles sans date de rupture ou sans vente récente ; les facettes actives sont conservées jusqu’à l’export ; et des contrôles ciblés protègent ces comportements. Cette version constitue la date de livraison publique retenue.
La méthode a privilégié une formule que l’équipe peut refaire elle-même. Les ventes des quatre-vingt-dix derniers jours sont ramenées à une moyenne mensuelle en les divisant par trois, multipliées par l’horizon puis arrondies à l’entier supérieur. Une ligne sans vente produit une recommandation nulle au lieu d’être supprimée.
Cette transparence permet de poser clairement les limites. Le résultat ne tient pas compte du stock restant, des entrants, du délai fournisseur, de la marge, de la saison ou d’un lot minimum. Ces données peuvent éclairer la revue lorsqu’elles sont présentes à l’écran, mais elles ne changent pas silencieusement la formule affichée.
3. Avant le Planner : une analyse juste mais difficile à reproduire
Chaque revue recommençait par un assemblage manuel de données
Une équipe pouvait consulter les stocks d’un entrepôt, repérer des ventes soutenues puis exporter certaines références. Mais le passage de l’observation à une liste de travail demandait de conserver manuellement les mêmes filtres et de refaire des calculs dans une feuille séparée.
La date de rupture estimée aidait à repérer une tension, mais toutes les lignes n’en possèdent pas. Une référence sans vente sur quatre-vingt-dix jours n’a pas de date projetée ; une ligne nouvellement collectée peut également nécessiter du recul. Les exclure par défaut aurait réduit le catalogue sans que l’utilisateur l’ait décidé.
Les différentes quantités ajoutaient une autre difficulté. Le total, les entrants, les réservés, les invendables, le disponible de la ligne et le stock de l’entrepôt par défaut ne répondent pas à la même question. Une recommandation isolée de ces valeurs serait trop facile à interpréter comme un ordre automatique.
Le projet devait donc rendre la préparation répétable sans effacer le jugement achat. L’objectif n’était pas de produire une vérité unique, mais une table dont le périmètre, les signaux et le calcul puissent être contrôlés avant de quitter Ciama.
4. Passer du catalogue de stock à un plan de demande relisible
Conserver la richesse opérationnelle tout en donnant un résultat simple
Le premier objectif était de sélectionner un entrepôt et de retrouver toutes ses lignes, sans imposer d’avance qu’elles soient actives, positives, proches de la rupture ou déjà vendeuses. Le point de départ reste le catalogue réel du lieu choisi.
Le deuxième objectif consistait à laisser l’utilisateur construire un sous-ensemble pertinent grâce à des facettes explicites. Chaque filtre devait rester visible et produire exactement le même périmètre dans l’écran de génération puis dans le fichier téléchargé.
Le troisième objectif était de projeter un signal simple : les ventes récentes ramenées à un rythme mensuel. L’horizon devait pouvoir être ajusté sans changer le sens du calcul, de façon à comparer un mois de demande avec un trimestre ou une période plus longue.
Enfin, chaque recommandation devait rester accompagnée de l’identité du produit, des composantes de stock, des ventes et de l’horizon de rupture. Le nombre calculé devient ainsi le début d’un arbitrage, pas la fin d’un raisonnement.
5. Commencer par choisir l’entrepôt
Éviter qu’un plan global mélange des disponibilités qui ne se remplacent pas
Le Planner charge les entrepôts appartenant au compte et demande d’en choisir un avant d’afficher les stocks. Cette étape protège le sens logistique de la liste : chaque ligne appartient au même périmètre physique ou opérationnel.
L’accès est contrôlé côté traitement. Un identifiant absent renvoie vers l’état de sélection ; un entrepôt inexistant est refusé ; un entrepôt appartenant à un autre compte ne peut pas être consulté. Le filtre visible est donc doublé d’une frontière d’accès réelle.
La vue transversale peut passer d’un entrepôt à un autre. La fiche d’un entrepôt ouvre, elle, le même Planner directement dans son contexte. Dans les deux cas, le tri initial place en tête les lignes ayant le plus vendu sur quatre-vingt-dix jours.
Le résultat reste une liste de lignes de stock et non une liste dédupliquée de produits. Cette granularité conserve le FnSku, le SellerSku et la date d’enregistrement propres à la source. Elle évite de sommer des situations que la logistique doit parfois traiter séparément.
6. Construire le périmètre avec huit facettes explicites
Chercher, isoler et comparer sans perdre le fil de la revue
Après l’entrepôt, une recherche libre permet de retrouver une référence. La marque et le tag découpent le catalogue selon sa structure commerciale. L’état actif ou désactivé distingue les lignes encore exploitées de celles qui doivent malgré tout rester consultables.
Trois facettes travaillent directement les quantités : stock disponible positif ou non, entrants positifs ou non, et stock de l’entrepôt par défaut positif ou non. Elles répondent à des questions différentes, par exemple repérer une ligne FBA vide alors qu’un stock reste disponible dans le dépôt principal.
La huitième facette distingue les lignes avec ou sans date de rupture estimée. Elle n’est pas activée par défaut. Ce détail garantit que le Planner montre aussi les références sans historique de vente exploitable, plutôt que de les faire disparaître comme si elles n’existaient pas.
Chaque facette active est transformée en critère de recherche et reste transmise aux étapes suivantes. Le plan généré et son export ne repartent donc pas d’un catalogue complet lorsque l’utilisateur avait préparé une sélection précise.
7. Garder les composantes du stock autour de la recommandation
Montrer ce qui est disponible, en transit, réservé ou invendable
La table présente la quantité totale, les entrants, le total réservé, le total invendable et le disponible. Ces colonnes ne sont pas interchangeables : un stock entrant peut sécuriser une période future, tandis qu’une unité invendable ne doit pas être lue comme une unité mobilisable.
Le stock de l’entrepôt par défaut est affiché séparément. Cette valeur donne un repère transversal au produit lorsque la ligne analysée appartient à un autre entrepôt, notamment un stock FBA. Elle n’est pas additionnée à la recommandation et ne remplace pas le disponible local.
La date de dernière mise à jour accompagne chaque ligne. Une revue peut ainsi distinguer une tension récente d’une donnée ancienne qui mérite d’abord une nouvelle collecte. Le Planner ne masque pas la fraîcheur derrière une recommandation apparemment précise.
Les ventes sur quatre-vingt-dix jours complètent ce contexte. Elles sont rattachées à la ligne de stock et servent au tri ainsi qu’à la formule. Elles ne sont pas pondérées par la marge, la catégorie ou une priorité de canal qui ne serait pas visible dans le calcul.
8. Afficher l’horizon de rupture sans en faire un filtre obligatoire
Une estimation utile quand les ventes et le stock permettent de la calculer
Ciama estime la date de rupture à partir du stock disponible augmenté des entrants, puis divise ce total par la moyenne quotidienne issue des ventes des quatre-vingt-dix derniers jours. Le nombre de jours obtenu est arrondi au supérieur et ajouté à la date du calcul.
Si le disponible et les entrants sont nuls ou négatifs, la date correspond au jour du calcul. Si aucune vente n’a été enregistrée sur la période, aucune date n’est produite : inventer une vitesse d’écoulement aurait donné une précision trompeuse.
Dans le plan, le nombre de jours restant est affiché à côté de la date. Une échéance dépassée apparaît comme telle ; un horizon inférieur ou égal à quinze jours est signalé différemment d’une échéance plus lointaine. La lecture attire l’attention sans fabriquer un score composite.
Cette estimation et la quantité recommandée reposent sur le même historique de ventes, mais elles répondent à deux questions. La date projette l’épuisement du stock et des entrants connus ; la recommandation projette un volume de demande. Les confondre conduirait à croire que le Planner a déjà calculé un besoin net.
9. Une formule que chaque acheteur peut vérifier
Ventes à 90 jours divisées par trois, multipliées par l’horizon
Pour un mois, une ligne ayant vendu trente et une unités sur quatre-vingt-dix jours produit une recommandation de onze unités : trente et un divisés par trois, puis arrondis au supérieur. Pour trois mois, la même ligne produit trente et une unités. La logique reste stable quel que soit l’horizon.
Le traitement accepte un horizon de un à douze mois et borne toute valeur extérieure à cet intervalle. L’interface principale propose les choix les plus courants de un à six mois, tandis que la règle de sécurité empêche une projection négative ou démesurée reçue dans l’adresse.
Une ligne à zéro vente reste dans le plan avec une recommandation de zéro. Elle peut encore être utile à la revue : stock dormant, nouvelle référence sans recul, article désactivé ou donnée à corriger. Son absence aurait confondu « aucun besoin selon la formule » et « ligne non examinée ».
La formule ne soustrait pas le disponible ni les entrants. Elle ne calcule donc pas « quantité à commander = demande – stock ». Cette limite est assumée dans l’écran : la recommandation mesure la demande projetée, et les colonnes de stock donnent à l’équipe les éléments pour déterminer ensuite le besoin net.
Un catalogue logistique clairement délimité
Facettes conservées pendant tout le parcours
Demande réelle rattachée à chaque ligne
Projection choisie de un à douze mois
Contexte et recommandation réunis en 17 colonnes
10. Générer le plan sans changer de périmètre
Passer de l’exploration à une table dédiée à la décision
Le bouton de génération reprend l’entrepôt, les facettes, le tri et l’horizon. Le traitement charge jusqu’à cinq mille lignes correspondant à cette sélection afin de produire une vue de travail plus large que la pagination de l’écran exploratoire.
La table conserve l’image du produit, les références, l’état actif et toutes les quantités utiles. Elle ajoute le nombre de jours avant rupture et la recommandation calculée pour la période choisie. L’utilisateur n’a pas à retourner à la liste pour retrouver le contexte d’un nombre.
Le tri par ventes récentes met naturellement les rotations les plus importantes en tête, mais il peut être changé. Cette possibilité compte lorsqu’une revue veut commencer par la date de rupture, la quantité disponible ou une référence précise plutôt que par le volume historique.
Le plan ne crée ni commande d’achat, ni réservation, ni transfert de stock. Il reste une préparation. Cette absence d’effet transactionnel autorise l’exploration de plusieurs horizons et sous-ensembles sans risquer de modifier le stock ou d’engager un fournisseur.
11. Exporter une feuille qui conserve la preuve du calcul
Dix-sept colonnes pour transmettre la recommandation avec son contexte
L’export reprend les mêmes filtres et le même horizon que la génération. Il contient le FnSku, la date d’enregistrement, le SellerSku, le produit, le GTIN et l’état actif avant de détailler les valeurs logistiques.
Les quantités totales, entrantes, réservées, invendables et disponibles sont conservées, avec les ventes à quatre-vingt-dix jours, la date et le nombre de jours avant rupture, le stock de l’entrepôt par défaut et la dernière mise à jour. La dernière colonne porte la recommandation et rappelle le nombre de mois choisi.
Le fichier est produit dans un format tableur compatible Excel, avec un nom incluant l’entrepôt, l’horizon et l’heure de génération. Les cellules sont échappées avant construction du tableau afin qu’un nom de produit ou une référence ne devienne pas du balisage interprété.
La feuille peut ainsi servir de support de revue, être enrichie avec un délai fournisseur ou une quantité déjà commandée, puis circuler vers la personne qui valide l’achat. Ciama fournit la base commune sans prétendre automatiser les étapes qui ne sont pas encore reliées.
12. Les arbitrages qui protègent la valeur du Planner
Dire exactement ce qui est calculé et ce qui reste à décider
Le premier arbitrage maintient toutes les lignes dans le périmètre par défaut. Forcer « actif », « stock positif » ou « date de rupture présente » aurait créé une sélection confortable mais incomplète. Les facettes permettent de réduire volontairement la liste quand la revue l’exige.
Le deuxième choisit l’entrepôt comme frontière. Une vision consolidée par produit serait plus courte, mais elle effacerait les différences entre FBA, dépôt principal et autres lieux. Le réassort se prépare à partir d’un stock que l’on sait localiser.
Le troisième conserve une formule sans pondération cachée. Elle peut paraître moins sophistiquée qu’un moteur intégrant marge, saisonnalité et délai, mais son résultat reste reproductible. Une équipe peut la challenger avec des faits au lieu de devoir faire confiance à un score opaque.
Le quatrième expose les données qui ne participent pas au calcul. Disponible, entrants et date de rupture entourent la recommandation sans la modifier. L’interface apporte ainsi plus de contexte que la formule, tout en gardant une frontière nette entre projection de demande et décision de commande.
13. Protéger la cohérence du parcours
Même catalogue, mêmes facettes et même formule jusqu’au fichier final
Les contrôles ciblés vérifient que la vue et la génération interrogent bien tout le catalogue de l’entrepôt lorsqu’aucune facette n’est active. Une ligne sans vente ou sans date de rupture ne doit pas disparaître par effet de bord.
D’autres scénarios vérifient que les états actif, stock positif, entrants, stock par défaut et présence d’une date sont transmis à la recherche. Les versions transversale et intégrée à l’entrepôt sont couvertes avec les mêmes attentes.
L’export fait l’objet d’un contrôle particulier : il doit reprendre les facettes actives et conserver les références à zéro vente. Cette étape protège la confiance dans le fichier, car une feuille différente de l’écran obligerait l’équipe à reconstruire son périmètre hors de Ciama.
La séparation entre consultation, génération et export limite enfin les responsabilités de chaque point d’entrée. La règle commune reste dans le traitement partagé ; les contrôleurs se concentrent sur l’authentification et l’accès. Le comportement peut évoluer sans créer trois formules concurrentes.
14. Ce que l’équipe gagne après la livraison
Une revue plus rapide à préparer et plus facile à contester utilement
Le périmètre devient explicite dès le départ : un entrepôt, des facettes visibles et un nombre de résultats. Une personne peut rouvrir la même sélection ou expliquer pourquoi certaines références ont été incluses sans dépendre d’une feuille personnelle.
La recommandation est vérifiable de tête. Si elle paraît trop forte ou trop faible, l’équipe sait quel signal examiner : les ventes à quatre-vingt-dix jours et l’horizon. Elle ne cherche pas une pondération inconnue ou une règle fournisseur qui n’aurait jamais été renseignée.
Le contexte évite de confondre demande projetée et besoin net. Disponible, entrants, réservés, invendables et date de rupture restent sur la même ligne. La discussion peut donc porter sur la décision d’achat plutôt que sur la reconstitution des données de départ.
L’export crée un passage propre vers les processus encore extérieurs au cockpit. Il conserve les identifiants nécessaires au rapprochement, documente la fraîcheur et fournit une colonne de recommandation nommée selon l’horizon. La transmission ne dépouille pas le calcul de sa preuve.
15. Le scénario qui résume le projet
Préparer trois mois de demande pour un stock FBA sans masquer les références atypiques
Une équipe prépare sa revue Amazon et choisit l’entrepôt FBA concerné. Elle filtre une marque, conserve les lignes actives comme désactivées pour contrôler les exceptions et demande uniquement les références dont le stock FBA n’est plus positif.
Certaines lignes possèdent une date de rupture, d’autres non. Elles restent toutes visibles parce que la facette de date n’a pas été activée. L’équipe peut ainsi distinguer une rupture calculée d’une référence sans ventes récentes, au lieu de recevoir une liste amputée.
Elle choisit un horizon de trois mois. Une ligne ayant vendu quarante unités sur quatre-vingt-dix jours reçoit une recommandation de quarante unités ; une ligne sans vente reçoit zéro. Les stocks disponibles dans le dépôt par défaut et les entrants apparaissent à côté pour préparer le besoin net.
L’export reprend exactement cette marque, ces états de stock et ces lignes. La feuille devient le support de revue : l’équipe ajoute le délai et le lot minimum du fournisseur, retranche ce qui est réellement mobilisable puis valide sa décision. Le Planner a accéléré et sécurisé la préparation sans se substituer à cet arbitrage.
16. Relier le plan aux autres preuves de stock
Comprendre le passé, agir sur le présent et préparer l’horizon suivant
L’analyse du stock Amazon FBA approfondit l’historique de chaque ligne et sa date de rupture. Le Planner reprend ces signaux pour constituer une liste de demande par entrepôt.
Le Stock Dispatcher marketplace traite un autre moment : choisir quelles parcelles alimentent la quantité cible d’une offre et envoyer cette valeur au canal. Il ne calcule pas le volume de réassort.
Le référentiel fournisseurs et achats porte les informations nécessaires pour enrichir ensuite la décision avec la provenance et les conditions d’achat. La présente version du Planner ne les injecte pas encore dans sa formule.
La page reporting du vendeur marketplace replace enfin cette projection dans une démarche plus large : partir de données traçables, montrer leur fraîcheur et rendre chaque indicateur contestable avant l’action.
17. Conclusion
Une bonne recommandation commence par une formule que l’équipe peut refaire
Le Replenishment Planner ne transforme pas encore les contraintes fournisseur et le stock restant en commande nette. Il résout une étape plus fondamentale : sélectionner un entrepôt, conserver toutes ses lignes, projeter la demande récente sur un horizon clair et transmettre le résultat avec son contexte.
Cette honnêteté rend la preuve plus forte. L’équipe sait pourquoi une quantité apparaît, voit les entrants et les réservations à côté, repère les lignes sans date de rupture et peut enrichir l’export avec les contraintes propres à ses achats. Aucun score opaque ne remplace son arbitrage.
C’est ainsi que Dawap conçoit le réapprovisionnement marketplace : consolider les signaux réels, expliciter le calcul, préserver la granularité logistique et automatiser seulement ce qui peut être vérifié de bout en bout.