Règles d'inventaire et disponibilité des bundles
BundlesIQ déduit la disponibilité des bundles des niveaux de stock des composants, garantissant que les bundles apparaissent comme étant en rupture de stock lorsque l'un des composants requis est épuisé. Ce guide explique comment fonctionne l'inventaire et comment le configurer.
Ce que vous allez accomplir
Après avoir lu ce guide, vous comprendrez comment BundlesIQ calcule la disponibilité des bundles, comment fonctionne la synchronisation de l'inventaire et à quoi vous attendre dans des scénarios courants.
Quand utiliser ce guide
- Vous configurez un nouveau bundle et souhaitez comprendre le comportement de l'inventaire
- Un bundle apparaît comme étant en rupture de stock et vous devez comprendre pourquoi
- Vous souhaitez décider d'activer ou de désactiver la synchronisation de l'inventaire
Comment la disponibilité des bundles est calculée
BundlesIQ utilise la formule du composant le moins disponible :
bundle_availability = min(component_available / qty_per_bundle)
Pour chaque composant, BundlesIQ divise l'inventaire disponible par la quantité nécessaire par bundle, puis prend le minimum parmi tous les composants. Cela garantit que vous ne pouvez pas vendre plus de bundles que ce que permet votre composant le moins en stock.
Exemple :
Bundle : "Kit de démarrage" (contient 3 articles)
Article A : 100 disponibles, 2 par bundle → 100 / 2 = 50
Article B : 30 disponibles, 1 par bundle → 30 / 1 = 30
Article C : 200 disponibles, 5 par bundle → 200 / 5 = 40
Disponibilité du bundle = min(50, 30, 40) = 30 bundles
Dans cet exemple, l'Article B est le goulot d'étranglement — vous ne pouvez vendre que 30 bundles avant que l'Article B ne soit épuisé.
Synchronisation de l'inventaire
Lorsque la synchronisation de l'inventaire (sync_bundle_inventory: true) est activée, BundlesIQ met automatiquement à jour le niveau d'inventaire du SKU fantôme dans Shopify pour correspondre à la disponibilité calculée du bundle.
La synchronisation de l'inventaire n'est applicable que si vous suivez l'inventaire sur le produit bundle lui-même. Si le suivi d'inventaire du SKU fantôme est désactivé, Shopify le considère toujours comme étant en stock et la synchronisation de l'inventaire n'a aucun effet.
Comment cela fonctionne
- Shopify déclenche un webhook
inventory_levels/updatelorsque l'inventaire de n'importe quel produit change - BundlesIQ vérifie si la variante mise à jour est un composant de bundles actifs (en utilisant l'index des bundles de composants)
- Pour chaque bundle affecté, BundlesIQ recalcule la disponibilité en utilisant la formule du composant le moins disponible
- BundlesIQ met à jour le niveau d'inventaire du SKU fantôme dans Shopify pour correspondre à la nouvelle disponibilité
Activer ou désactiver la synchronisation de l'inventaire
Paramètre par défaut au niveau du magasin :
- Naviguez vers BundlesIQ > Paramètres
- Activez ou désactivez Synchroniser l'inventaire du bundle (
sync_bundle_inventory) - Cliquez sur Enregistrer
Surcharge par bundle :
- Ouvrez un bundle dans BundlesIQ > Bundles
- Activez ou désactivez Synchroniser l'inventaire
- Cliquez sur Enregistrer
Quand activer la synchronisation de l'inventaire
- Vous souhaitez que les bundles apparaissent automatiquement comme étant en rupture de stock lorsque les composants sont faibles
- Vous comptez sur le paramètre "Continuer à vendre lorsque hors stock" de Shopify pour contrôler la disponibilité
- Vous souhaitez que votre vitrine reflète une disponibilité précise des bundles sans mises à jour manuelles
Quand désactiver la synchronisation de l'inventaire
- Vous gérez manuellement la disponibilité des bundles dans Shopify
- Votre SKU fantôme a le suivi d'inventaire désactivé (Shopify le considère toujours comme étant en stock)
- Vous avez un système séparé qui gère l'inventaire du SKU fantôme
Synchronisation de la vente au détail
La synchronisation de la vente au détail (sync_bundle_retail: true) met automatiquement à jour les prix des bundles lorsque les prix des composants changent. Le comportement varie en fonction du mode de tarification :
| Mode de tarification | Synchronisation de la vente au détail activée | Synchronisation de la vente au détail désactivée |
|---|---|---|
| Dirigé par le composant | Le prix du bundle se recalculera automatiquement comme la somme de (prix de détail du composant × qty × remise) | Les commandes sont signalées avec un avertissement si les prix des composants changent. Révision manuelle requise |
| Dirigé par le bundle | Les bundles sont signalés pour révision lorsque les prix des composants changent (le prix du bundle lui-même ne se met pas à jour automatiquement, car il est fixe) | Aucune action prise lorsque les prix des composants changent |
Activer ou désactiver la synchronisation de la vente au détail
Paramètre par défaut au niveau du magasin :
- Naviguez vers BundlesIQ > Paramètres
- Activez ou désactivez Synchroniser la vente au détail du bundle (
sync_bundle_retail) - Cliquez sur Enregistrer
Surcharge par bundle :
- Ouvrez un bundle dans BundlesIQ > Bundles
- Activez ou désactivez Synchroniser la vente au détail
- Cliquez sur Enregistrer
La synchronisation de la vente au détail est recommandée pour la plupart des magasins. En mode dirigé par le composant, elle maintient le prix de votre bundle précis. En mode dirigé par le bundle, elle vous alerte lorsque le calcul de la remise peut avoir changé.
Suivi de l'inventaire du SKU fantôme
Pour que la synchronisation de l'inventaire fonctionne correctement, la variante de produit SKU fantôme doit avoir l'une de ces configurations :
| Configuration | Comportement |
|---|---|
| Inventaire suivi, géré par BundlesIQ (recommandé) | BundlesIQ définit la quantité disponible en fonction des composants. Shopify applique les règles de rupture de stock |
| Inventaire non suivi | Le bundle est toujours affiché comme étant en stock sur la vitrine. BundlesIQ traite toujours les commandes mais ne contrôle pas la disponibilité |
Nous recommandons d'activer le suivi de l'inventaire sur le SKU fantôme et de laisser BundlesIQ gérer la quantité. Cela garantit que les clients ne peuvent pas acheter de bundles lorsque les composants sont en rupture de stock.
Que se passe-t-il lorsqu'un composant atteint zéro
Lorsque l'inventaire disponible de n'importe quel composant tombe à zéro :
- BundlesIQ recalcule la disponibilité du bundle à 0
- Si la synchronisation de l'inventaire est activée, BundlesIQ définit l'inventaire du SKU fantôme à 0
- Si le SKU fantôme a "Continuer à vendre lorsque hors stock" désactivé (recommandé), le produit bundle apparaît comme Rupture de stock sur votre vitrine
- Si "Continuer à vendre lorsque hors stock" est activé, les clients peuvent toujours acheter le bundle, mais la commande peut ne pas être exécutable
Paramètre "Continuer à vendre lorsque hors stock" de Shopify
Ce paramètre Shopify sur la variante SKU fantôme contrôle ce qui se passe lorsque l'inventaire atteint zéro :
| Paramètre | Effet |
|---|---|
| Désactivé (recommandé) | Le bundle ne peut pas être acheté lorsque l'inventaire est à 0. Empêche la vente excessive |
| Activé | Le bundle peut toujours être acheté à 0 d'inventaire. Utile pour les précommandes ou les scénarios sur commande, mais risque de vendre des composants en trop |
Définissez cela sur la variante SKU fantôme dans l'administration Shopify sous Produits > [Produit Bundle] > Inventaire.
Inventaire après une commande
Modes hybride, de reporting et opérationnels
Lorsqu'un client achète un bundle :
- L'inventaire des composants est décrémenté par Shopify dans le cadre de son flux normal de traitement des commandes (car BundlesIQ ajoute des lignes d'articles de composants à la commande)
- L'inventaire du bundle est recalculé par BundlesIQ lorsque le webhook d'inventaire des composants se déclenche, reflétant la réduction du stock des composants
Cela signifie que l'inventaire reste cohérent — vendre un bundle réduit à la fois le stock des composants et la disponibilité dérivée du bundle.
Mode Parent-Only (BOM)
En mode Parent-Only, BundlesIQ n'ajoute pas de lignes d'articles de composants à la commande, donc le flux normal de traitement des commandes de Shopify ne décrémente pas le stock des composants. Au lieu de cela, BundlesIQ gère l'inventaire des composants via l'API d'état d'inventaire de Shopify :
| Événement | Action d'inventaire |
|---|---|
Commande créée ou payée (selon reserve_timing) |
Le stock des composants passe de available à reserved |
| Commande exécutée | Le stock reserved est consommé (décrémenté) |
| Commande annulée | Le stock reserved est libéré et retourne à available |
| Retour/approvisionnement | Le stock est réapprovisionné à available |
Le cycle de vie de l'inventaire :
Commande passée → Composant : 100 disponibles, 2 réservés
Commande exécutée → Composant : 100 disponibles, 0 réservés (2 consommés)
-- OU --
Commande annulée → Composant : 102 disponibles, 0 réservés (2 libérés)
Cette approche garantit que le stock des composants est suivi avec précision sans modifier la commande elle-même. La synchronisation de l'inventaire du SKU fantôme fonctionne toujours de la même manière — la disponibilité du bundle est recalculée en fonction des quantités available des composants.
En mode Parent-Only, les quantités
reservedréduisent le stock disponible effectif. Un composant avec 100 disponibles et 10 réservés a 90 unités effectivement disponibles pour de nouvelles commandes. BundlesIQ prend cela en compte dans les calculs de disponibilité des bundles.
Composants partagés entre les bundles
Si la même variante de composant apparaît dans plusieurs bundles, tous les bundles qui partagent ce composant sont affectés lorsque son inventaire change.
Exemple :
Bundle A : Contient l'Article X (2 par bundle)
Bundle B : Contient l'Article X (3 par bundle)
Article X : 60 disponibles
Disponibilité du Bundle A à partir de l'Article X : 60 / 2 = 30
Disponibilité du Bundle B à partir de l'Article X : 60 / 3 = 20
BundlesIQ calcule la disponibilité de chaque bundle indépendamment. Vendre le Bundle A réduit le stock de l'Article X, ce qui déclenche un recalcul pour le Bundle A et le Bundle B.
Inventaire multi-emplacements
BundlesIQ calcule la disponibilité des bundles au niveau de l'emplacement lorsque votre magasin utilise plusieurs emplacements Shopify. L'inventaire du SKU fantôme est mis à jour par emplacement en fonction de la disponibilité des composants à cet emplacement.
L'inventaire multi-emplacements ajoute de la complexité. Nous recommandons de tester d'abord avec un seul emplacement et d'élargir à plusieurs emplacements une fois que vous avez confirmé le comportement de base de l'inventaire des bundles.
Résolution des problèmes d'inventaire
| Problème | Cause possible | Solution |
|---|---|---|
| Le bundle apparaît en rupture de stock mais les composants ont de l'inventaire | Un composant a 0 d'inventaire disponible à l'emplacement concerné | Vérifiez les niveaux d'inventaire de tous les composants. Le composant goulot d'étranglement détermine la disponibilité |
| L'inventaire du bundle ne se met pas à jour après les changements de composants | La synchronisation de l'inventaire est désactivée pour ce bundle ou au niveau du magasin | Activez la synchronisation de l'inventaire dans les paramètres ou sur le bundle |
| L'inventaire du bundle est plus élevé que prévu | L'inventaire du SKU fantôme a été défini manuellement et n'est pas écrasé | Assurez-vous que la synchronisation de l'inventaire est activée et que l'inventaire du SKU fantôme est géré par BundlesIQ |
| Le bundle apparaît en stock mais un composant est à 0 | "Continuer à vendre lorsque hors stock" est activé sur le SKU fantôme | Désactivez ce paramètre sur la variante SKU fantôme si vous souhaitez éviter la vente excessive |
(Parent-Only) La quantité reserved du composant n'augmente pas |
Le timing de réservation est défini sur "orders/paid" mais la commande n'a pas encore été payée |
Attendez le paiement, ou changez le timing de réservation à "orders/create" |
| (Parent-Only) Le stock du composant n'est pas libéré après l'annulation | L'événement d'annulation n'a pas été reçu par BundlesIQ | Vérifiez le tableau de bord de santé et déclenchez manuellement une réévaluation si nécessaire |
Erreurs courantes
- Laisser "Continuer à vendre lorsque hors stock" activé sur le SKU fantôme — Cela permet aux clients d'acheter des bundles même lorsque les composants ne sont pas disponibles
- Définir manuellement l'inventaire du SKU fantôme — Si la synchronisation de l'inventaire est activée, BundlesIQ écrasera vos modifications manuelles lors du prochain cycle de synchronisation
- Ne pas vérifier tous les niveaux d'inventaire des composants — La disponibilité des bundles est limitée par le composant le moins disponible. Vérifiez chaque composant lors du débogage des problèmes de stock
- Supposer que la synchronisation de la vente au détail met automatiquement à jour le prix du bundle en mode dirigé par le bundle — En mode dirigé par le bundle, la synchronisation de la vente au détail signale les bundles pour révision mais ne change pas le prix du bundle. Seule la tarification dirigée par le composant met automatiquement à jour le prix du bundle. Voir Configuration de la stratégie de tarification pour plus de détails