Disponible pour missions & renforts d’agence · Réponse rapide, par la personne qui intervient

Le stock WooCommerce est désynchronisé

« Désynchronisé » veut presque toujours dire que deux systèmes pensent chacun détenir la vérité sur le stock, sans qu’aucun arbitrage ne tranche entre les deux. WooCommerce gère le stock produit par produit, ou variation par variation, via l’option « Gérer le stock ? » ; le problème apparaît dès qu’une source externe, fournisseur, ERP ou autre canal de vente, modifie ce chiffre sans passer par les mêmes règles.

Décrire mon problème Discuter sur WhatsApp

Comment je procède

  1. Vérification de la source de vérité

    Je regarde d’où provient réellement le chiffre affiché : la valeur _stock en base WooCommerce, ou une donnée réimportée depuis un flux fournisseur, un ERP, ou un autre canal de vente, et à quelle fréquence.

  2. Analyse du rythme de synchronisation

    Un import CSV nocturne ou une synchronisation via l’API REST wc/v3/products qui ne tourne pas assez souvent laisse une fenêtre où deux ventes simultanées, sur deux canaux différents, peuvent survendre le même article.

  3. Contrôle du délai de réservation

    Le réglage woocommerce_hold_stock_minutes réserve le stock d’une commande en attente de paiement pendant un nombre de minutes défini. Une passerelle de paiement lente à confirmer peut faire ressembler cette réservation normale à une désynchronisation.

  4. Recherche de commandes créées hors circuit standard

    Une commande insérée directement par API ou par import, en dehors du tunnel de commande WooCommerce classique, peut contourner le hook habituel de décrément de stock et laisser un chiffre faux sans qu’aucune commande visible n’explique l’écart.

  5. Décision sur la mécanique de synchronisation cible

    Une fois la cause identifiée, je détermine si un réglage suffit ou si le vrai correctif est un petit service de synchronisation propre, avec une logique d’arbitrage claire entre les systèmes en cause.

Ce que je traite régulièrement

  • Un produit vendu sur WooCommerce alors qu’il n’y en avait plus chez le fournisseur
  • Le stock affiché ne correspond ni à celui de l’ERP, ni à celui du fournisseur, sans logique apparente
  • Des commandes bloquent du stock pendant plusieurs minutes sans être finalisées, faussant les chiffres disponibles
  • Un import de stock écrase des quantités qui venaient d’être vendues quelques minutes plus tôt
  • Le stock est correct juste après l’import, puis dérive au fil de la journée

D’où vient réellement l’écart

WooCommerce stocke la quantité (_stock) et un statut calculé (_stock_status) en métadonnée du produit ou de la variation. Tant qu’une seule source modifie ce chiffre, via le tunnel de commande normal, tout reste cohérent. Le problème commence dès qu’un deuxième système, un flux fournisseur, un ERP ou un autre canal de vente, écrit aussi cette valeur, sans qu’aucun des deux ne sache ce que l’autre vient de faire.

Un import CSV nocturne ou une synchronisation par l’API REST WooCommerce (le point d’accès wc/v3/products) qui ne tourne qu’une ou deux fois par jour crée une fenêtre où le catalogue peut être survendu entre deux passages, en particulier sur un catalogue à rotation rapide.

Le réglage woocommerce_hold_stock_minutes ajoute une nuance souvent oubliée : une commande en attente de paiement réserve du stock pendant un délai fixe. Si la passerelle de paiement met du temps à confirmer, cette réservation normale peut se lire à tort comme une désynchronisation.

Pages liées

Décrivez votre besoin en 1 minute

Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.

Que doit faire l’extension ?
Où doit-elle s’intégrer ?
Avez-vous déjà essayé une extension du marché ? (facultatif)

Savoir ce qui a échoué évite de reproduire la même limite.

Pour quand ? (facultatif)
Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Questions fréquentes

Un simple plugin de synchronisation suffit-il à régler le problème ?
Parfois, si les deux systèmes ont une API compatible et un rythme de synchronisation suffisant pour votre volume de vente. Sur un catalogue à rotation rapide ou avec plusieurs canaux, un plugin générique atteint vite ses limites.
Pourquoi le stock se décale même sans vente sur WooCommerce ?
Parce que l’écart peut venir uniquement du côté du système externe : un import qui écrase une valeur, ou une synchronisation qui tourne à un rythme différent de celui attendu.
Le délai de réservation de stock peut-il être désactivé ?
Oui, mais je le déconseille en général : il évite qu’un client bloqué au paiement fasse disparaître du stock disponible pour d’autres acheteurs pendant sa tentative de règlement.
Combien de temps prend la mise en place d’une synchronisation fiable ?
Ça dépend surtout de la qualité de l’API ou du flux disponible côté système externe. Un ERP avec une API documentée va beaucoup plus vite qu’un simple export de fichier à interpréter.