Ruptures de stock. Je n'en peux plus.

Le Black Friday dernier, j'avais 800 unités dans mon entrepôt de la côte ouest des États-Unis, avec l'arrivée FBA bloquée quelque part en transit. Mon OMS faisait face à 1,200 commandes ouvertes. Le système a expédié par ordre d'arrivée, ce qui semble juste, non ? Faux. Une fois la poussière retombée, plusieurs commandes de marque à prix élevé avaient été annulées automatiquement, tandis qu'un tas de commandes de ventes flash à faible marge avaient été honorées. Ces commandes en promo dégageaient moins de $3 de marge chacune. Celles de marque annulées dégageaient plus de $30 chacune. J'ai failli écraser ma souris.

La plateforme se moque de savoir laquelle de vos commandes est rentable. Quand l'inventaire vient à manquer, la façon dont votre OMS alloue le stock décide si la promotion vous fait gagner de l'argent ou vous fait perdre de l'argent plus la santé du compte.

La logique d'allocation par défaut est un piège

La plupart des plateformes OMS — les outils intégrés d'Amazon inclus, plus beaucoup d'ERP tiers — sont livrées avec deux comportements par défaut en cas de pénurie : premier entré, premier sorti, ou allocation proportionnelle du type « partage de la douleur ». Les deux semblent raisonnables. Les deux sont paresseux.

Le problème du FIFO : pendant une grande vente, les premières commandes sont généralement celles des chasseurs de bonnes affaires qui achètent des SKU en promotion. Les commandes à prix plein et à forte valeur arrivent plus tard. Expédiez par heure de commande et vous donnez volontairement votre marge. L'allocation proportionnelle est pire : expédiez 70 % de chaque commande, et maintenant chaque commande part en retard. Votre taux d'expéditions en retard explose.

Je l'ai appris à mes dépens pendant le Prime Day 2023. Le « fractionnement intelligent » par défaut de mon ERP s'est déclenché à 82 % de couverture d'inventaire et a scindé plus de 400 commandes en expéditions partielles. Chaque colis fractionné a ajouté de l'allocation de fret supplémentaire et des frais d'expédition, et j'ai écrit des e-mails d'excuses jusqu'à 3 h du matin. Les coûts logistiques ont dépassé le budget de près de 40 % cette semaine-là. Profits envolés. Depuis, j'ai désactivé toute allocation automatique. Quand le stock manque, je fixe les priorités manuellement.

Ma grille de score de priorité d'allocation

Quand l'inventaire est insuffisant, je note chaque commande ouverte avec une formule simple :

Priorité = Poids du canal × Poids de la marge × Poids du risque de livraison

Voici comment je l'applique concrètement :

Facteur Protéger en premier (score élevé) Couper en premier (score faible)
Canal Compte Amazon principal (votre bouée de sauvetage du trafic) Petits canaux ou canaux de déstockage
Marge Marge brute supérieure à 30 % Marge brute inférieure à 10 %
Promesse de livraison Promesse de 2 jours, frais d'expédition encaissés Pas de promesse, négociable
Santé du compte L'annulation déclenche un avertissement de performance L'annulation n'a pas d'impact réel
Valeur client Acheteurs récurrents, commandes B2B en gros Commandes ponctuelles en promo

En pratique, je ne multiplie pas vraiment les chiffres — trop lent. Je tague les commandes dans l'OMS selon ces cinq dimensions et je trie par combinaisons de tags quand une pénurie survient : je coupe d'abord le lot « faible marge + petit canal + sans promesse de livraison », puis je regarde « marge élevée mais délai négociable », et je protège en dernier les commandes « compte principal, marge élevée, livraison promise ».

Allocation des commandes

Faisons les calculs, car c'est là que le FIFO vous vole en silence. Disons qu'il vous reste 100 unités et que deux commandes se les disputent :

Commande A (marque) Commande B (SKU en promo)
Prix ≈$90 ≈$30
Marge brute ≈40 % ≈10 %
Marge par unité ≈$36 ≈$3
Canal Compte Amazon principal Canal de déstockage

Donnez les 100 unités à A : une commande en gros, environ $3,600 de marge. Donnez-les à B : trois commandes, environ $900 de marge. La logique par défaut du premier arrivé, premier servi protégera presque certainement B en premier — les commandes en promo sont passées plus tôt. Mêmes 100 unités, le profit diffère d'environ $2,700. C'est pourquoi vous ne devez jamais allouer par heure de commande pendant une pénurie : qui reçoit le stock décide si votre marge se multiplie ou s'effondre.

Exemple réel. Sur ces 1,200 commandes du Black Friday, j'ai reclassé manuellement : j'ai d'abord coupé plus de 200 commandes à bas prix d'un canal de déstockage (j'ai appelé le responsable du canal à l'avance, je les ai repoussées d'une semaine, ça ne lui a pas posé de problème). Ensuite, j'ai protégé les 150 commandes B2B en gros (chacune valait dix commandes normales en marge). Les commandes Amazon restantes ont été expédiées par ordre de marge ; celles que je ne pouvais vraiment pas couvrir sont passées en « expédition partielle plus commande en souffrance » au lieu d'une annulation pure et simple. Au final, seules environ 60 commandes ont été réellement annulées, et elles étaient toutes de faible valeur.

Les chiffres : l'allocation manuelle a relevé la marge globale d'environ 12 points de pourcentage par rapport à la logique par défaut, et le taux d'expéditions en retard est resté sous les 3 % sans avertissement de performance. L'année précédente, avec la logique par défaut, les expéditions en retard avaient atteint 9 % et j'avais reçu un avertissement de performance.

Vérité contre-intuitive : protégez le compte, pas le gros ticket

La plupart des vendeurs pensent instinctivement « sauvez les commandes chères, coupez les bon marché ». À moitié vrai. Ce que vous protégez vraiment en premier, ce sont les commandes dont l'annulation nuit à votre compte.

Le taux d'annulation et le taux d'expéditions en retard d'Amazon alimentent directement la performance du compte, et une commande annulée à $200 compte autant qu'une commande annulée à $20 dans ces métriques. Mais la pénalité de trafic frappe tout le compte — sacrifiez 20 petites commandes pour sauver une commande à $200 de marge, faites passer votre taux d'annulation au-dessus de la limite, perdez 10 % de part de la Buy Box pendant deux semaines, et cette perte éclipse les $200.

Donc ma règle de fer : calculez le coût pour le compte de couper avant de calculer le profit de sauver. Quand une pénurie survient, je consulte d'abord le tableau de bord de performance de l'OMS, je calcule la marge d'annulation qu'il me reste, et je la réserve entièrement pour les commandes à forte marge que je dois vraiment couper. Les commandes de faible valeur sont fractionnées ou retardées quand c'est possible ; quand je dois annuler, j'annule d'abord sur les petits canaux — ils n'ont pas de système de performance, et le pire qui puisse arriver, c'est offrir un café au responsable du canal et s'excuser.

Un autre piège : les expéditions partielles. J'ai vu trop de vendeurs cliquer sur « expédition partielle » pendant une pénurie en pensant avoir sauvé la commande. Le deuxième colis est généralement expédié à vos frais, et le coût logistique combiné dépasse souvent la marge de la commande. Ma règle : les commandes à moins de 20 % de marge sont annulées ou entièrement reportées en cas de pénurie — pas de partiels. Seules les commandes à forte marge méritent d'être fractionnées.

Pièges à éviter

Premièrement, écrivez vos règles d'allocation dans l'OMS à l'avance. N'improvisez pas pendant une rupture de stock. Je maintiens le système de tags de priorité toute l'année et je fais un exercice à blanc avant chaque grande vente.

Deuxièmement, négociez à l'avance une voie de réapprovisionnement d'urgence avec votre fournisseur et votre transitaire. La mienne a une option de fret aérien en petits lots à 7–10 jours. C'est cher, mais ça m'a sauvé pendant des ruptures de stock en haute saison. Et gardez toujours 10 %–15 % de stock de sécurité dans le plan — ne budgétisez jamais jusqu'à la dernière unité.

Troisièmement, ne regardez pas seulement l'inventaire total. Regardez l'inventaire disponible par canal. Je me suis brûlé une fois : le stock total semblait correct, mais FBA était déjà vide alors que mon propre entrepôt avait encore des unités, et le transfert a pris une semaine. Fractionner le stock disponible par canal dans l'OMS est une habitude qui sauve des vies.

Les ruptures de stock ne sont pas ce qui fait peur. Ce qui fait peur, c'est couper des commandes sans priorité. Voici mon plan d'urgence de 30 minutes pour quand ça arrive vraiment :

  1. Gelez le système. Mettez en pause l'allocation automatique et l'annulation automatique dans l'OMS immédiatement. Chaque minute supplémentaire de décisions automatisées est un dommage irréversible.
  2. Comptez pour de vrai. Sortez l'inventaire disponible réel par canal — attention au stock en transit et réservé caché dans le total. Sachez exactement quelle est l'ampleur de l'écart.
  3. Taguez en masse. Appliquez les tags à cinq dimensions aux commandes ouvertes ; la plupart des plateformes OMS peuvent le faire avec des règles en masse.
  4. Exécutez dans l'ordre. Coupez d'abord les commandes de faible valeur (négociez des retards avant d'annuler), protégez celles à forte valeur, et gardez un peu de marge de taux d'annulation pour celles que vous ne pouvez vraiment pas sauver.
  5. Prévenez le client. Envoyez un message proactif aux acheteurs retardés ou annulés avec une explication et un coupon. Le dommage en avis d'un message proactif est bien moindre que celui d'un client qui le découvre par lui-même.

Cette liste est imprimée et scotchée sur mon bureau maintenant. En haute saison, mon équipe l'exécute tout simplement — personne n'a besoin de me demander.

Fixez les règles à l'avance, lancez le plan d'action quand ça arrive, et ne laissez jamais le système décider pour vous. Celle-ci, je l'ai testée personnellement, et ça marche.

Par Ah K, Vendeur e-commerce (5 ans)

Traduit de l'anglais. En cas de divergence, la version anglaise fait foi.