Kowal Reservation Cleaner pour Magento 2
- Compatibilité
- 2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.5, 2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0
Description / Kowal Reservation Cleaner pour Magento 2
MAGENTO 2 · ERP · MSI · STOCKS SÉLECTIONNÉS
Nettoyez les réservations MSI conformément au processus de votre ERP.
Kowal Reservation Cleaner
Dans une implémentation spécialisée ERP-first, lancez un nettoyage contrôlé des réservations pour toute la table ou uniquement pour des stocks sélectionnés. Définissez le planning, la journalisation, la réindexation et le verrouillage du processus.
Cron ou CLI · Log Only et Dry Run · Nettoyage complet ou sélectif
COMMENT CELA FONCTIONNE EN PRATIQUE
01 · Vous définissez le modèle de synchronisation
Vous confirmez à quel moment l’ERP transmet les bons niveaux de stock.
02 · Vous vérifiez le périmètre
Vous sélectionnez les stocks et analysez le résultat Log Only ou Dry Run.
03 · Vous lancez le processus
Le planning ou la CLI exécute le nettoyage et la réindexation optionnelle.
Quels bénéfices pour votre boutique ?
Découvrez les fonctions, les cas d’usage et les paramètres du module.
À qui s’adresse ce module
Le module est adapté si :
- les niveaux de stock sont régulièrement importés depuis un ERP
- Magento n’est pas le système principal de gestion des stocks
- les réservations MSI perturbent la
salable quantity - un nettoyage rapide, prévisible et automatique des réservations est nécessaire
- la boutique fonctionne avec plusieurs stocks et le nettoyage ne doit concerner que certains d’entre eux
Le module n’est pas destiné aux boutiques qui gèrent les stocks exclusivement côté Magento et s’appuient sur toute la logique MSI en temps réel.
Le problème résolu
Dans Magento 2 standard avec MSI, les commandes, annulations et expéditions successives enregistrent des données dans inventory_reservation. Dans les environnements intégrés à un ERP, ces enregistrements ne sont souvent plus nécessaires sur le plan opérationnel, mais continuent d’influencer la disponibilité des produits et le diagnostic des stocks.
Conséquences les plus fréquentes :
salable quantitysous-estimée- écarts entre Magento et l’ERP
- augmentation continue du nombre d’enregistrements dans
inventory_reservation - diagnostic plus difficile des problèmes de stock
- charge supplémentaire pour les calculs liés à la disponibilité
Fonctionnalités principales
- lancement automatique via Magento CRON
- lancement manuel via CLI
- modes
full_reset,log_onlyetclean_after_erp_sync - verrouillage contre l’exécution parallèle du processus
- réindexation optionnelle après le nettoyage
- cache clean optionnel à la fin
- journalisation technique dans un fichier
- possibilité de limiter le nettoyage aux stocks sélectionnés
Fonctionnement du module
Le module enregistre une tâche CRON exécutée fréquemment, mais l’exécution réelle n’a lieu que lorsque l’heure actuelle correspond à la configuration. Il n’est donc pas nécessaire de reconstruire dynamiquement le planning système après chaque modification des paramètres.
Déroulement du processus :
- Vérification que le module est actif.
- Vérification que l’environnement est autorisé.
- Vérification du planning.
- Mise en place du verrouillage du processus.
- Comptage des enregistrements de réservation.
- Exécution du nettoyage ou uniquement de la journalisation.
- Réindexation optionnelle.
- Cache clean optionnel.
- Libération du verrou et enregistrement du log.
Full Reset
La variante la plus simple et la plus rapide pour les boutiques ERP-first.
Lorsque le nettoyage concerne tous les stocks, le module utilise :
TRUNCATE TABLE inventory_reservation
Cette solution est la plus performante avec un grand nombre d’enregistrements.
Log Only
Mode de diagnostic. Le module ne supprime pas les données, il se contente de compter les enregistrements et d’inscrire le résultat dans le log.
Clean After ERP Sync
Mode destiné à être lancé juste après l’import des stocks depuis l’ERP. Fonctionnellement, il nettoie les réservations comme full_reset, mais il structure le modèle d’implémentation et le planning.
Nettoyage uniquement pour les stocks sélectionnés
Le module prend également en charge le scénario de nettoyage uniquement pour les stocks indiqués.
Fonctionnement :
- si la liste des stocks est vide, toute la table des réservations est nettoyée
- si des stocks précis sont indiqués, le module supprime uniquement les enregistrements pour ces
stock_id
Dans ce cas, une requête sélective est utilisée :
DELETE FROM inventory_reservation WHERE stock_id IN (...)
Cette approche est plus lente que TRUNCATE, mais elle permet de conserver les réservations des autres stocks et offre davantage de contrôle dans les implémentations plus complexes.
Bénéfices métier
- meilleure cohérence des stocks entre Magento et l’ERP
- moins d’erreurs liées à la
salable quantity - diagnostic des stocks plus simple
- risque réduit d’accumulation de données inutiles dans MSI
- possibilité de mise en œuvre sans désactiver Magento MSI
- processus prévisible et rapide, automatisable
Configuration
Panneau d’administration :
Stores -> Configuration -> Kowal -> Reservation Cleaner
Paramètres principaux :
- activation ou désactivation du module
- choix du mode de fonctionnement
- heure et minute de lancement
- choix des stocks à nettoyer
- activation de la réindexation
- type de réindexation
- cache clean après le processus
- journalisation
- durée de validité du lock
- restriction du fonctionnement à certains environnements
Lancement via CLI
Commande de base :
bin/magento kowal:reservation:clean
Exemples d’utilisation :
bin/magento kowal:reservation:clean --mode=full_resetbin/magento kowal:reservation:clean --mode=log_onlybin/magento kowal:reservation:clean --reindex=inventory_onlybin/magento kowal:reservation:clean --dry-run=1bin/magento kowal:reservation:clean --stocks=1,2
Cela permet de lancer le module manuellement, à des fins de test ou directement après la fin de l’import ERP.
Journalisation et sécurité
Le log technique est enregistré dans :
var/log/kowal_reservation_cleaner.log
Le module comprend :
- verrouillage du processus
- gestion des exceptions
- contrôle de l’environnement
- contrôle du créneau horaire
- possibilité de fonctionner en mode
log_only
Modèle de mise en œuvre recommandé
La variante la plus pratique pour les boutiques ERP-first :
- mode
full_reset - journalisation active
- planning lancé peu après l’import ERP
- réindexation
inventory_onlyou séparément dans le processus d’intégration - champ des stocks vide pour un nettoyage complet, ou stocks indiqués lorsque la variante sélective est requise
Limites
Ce module :
- ne répare pas la logique MSI
- ne reconstruit pas l’historique des réservations
- ne remplace pas une intégration ERP correctement conçue
- n’est pas une solution universelle pour toutes les boutiques Magento
Il s’agit d’un outil spécialisé pour les implémentations dans lesquelles l’ERP gère le stock réel.
Package et nom du module
- Module Magento :
Kowal_ReservationCleaner - Package Composer :
kowal/reservation-cleaner
CTA
Vous avez besoin d’une mise en œuvre ou d’une adaptation du module à une intégration ERP, à plusieurs stocks ou à un planning personnalisé ? Contactez-nous via kowal.store et décrivez votre modèle de synchronisation des stocks.
Le nettoyage supprime l’historique des réservations
Full Reset et Clean After ERP Sync suppriment les enregistrements de réservation dans le périmètre sélectionné. Avec une liste de stocks vide, le processus vide toute la table inventory_reservation ; avec des stocks indiqués, il supprime uniquement leurs enregistrements.
La mise en œuvre nécessite un modèle dans lequel l’ERP fournit les bons niveaux de stock après prise en compte du processus de commande. La simple suppression des réservations ne confirme pas l’exactitude de la disponibilité et ne recrée pas l’historique MSI.
Mode après ERP et déclencheur réel
Le nom clean_after_erp_sync décrit l’usage prévu ; il ne constitue pas une intégration automatique avec l’événement de fin d’import ERP. Le lancement après synchronisation est organisé via CLI ou par un planning correctement défini.
Cron vérifie le créneau horaire configuré ainsi que l’environnement. La gestion de l’environnement utilise APP_ENV ou MAGENTO_ENV et le mode Magento. Le verrou limite les exécutions parallèles.
Vérification avant l’opération
Log Only et --dry-run=1 servent à compter les enregistrements sans les supprimer. Vérifiez le stock_id, la fin de l’import ERP et la salable quantity attendue avant d’activer le nettoyage.
La réindexation et le cache clean sont des étapes optionnelles. Choisissez inventory_only, une réindexation complète ou un processus d’indexation séparé en fonction de l’intégration de stock réelle.
Installation via Composer
Package kowal/reservation-cleaner, module Kowal_ReservationCleaner. Après avoir configuré l’accès au dépôt Kowal, installez le package, activez le module, mettez Magento à jour et videz le cache. En production, prévoyez la compilation et le déploiement du contenu statique conformément au processus de la boutique.
De la configuration au résultat
1. Vous définissez le modèle de synchronisation
Vous confirmez à quel moment l’ERP transmet les bons niveaux de stock.
2. Vous vérifiez le périmètre
Vous sélectionnez les stocks et analysez le résultat Log Only ou Dry Run.
3. Vous lancez le processus
Le planning ou la CLI exécute le nettoyage et la réindexation optionnelle.
Étape contrôlée après l’import ERP
L’ERP a terminé l’import des stocks. L’intégration lance le processus CLI pour le périmètre de stocks défini, et le résultat est enregistré dans le log.
Le mode clean_after_erp_sync ne détecte pas lui-même la fin de l’import. L’ordre des étapes est assuré par le planning ou par l’intégration ERP.
Adaptez les réservations à votre modèle de stock
Vous souhaitez adapter le module à votre boutique ? Demandez la mise en œuvre de Kowal Reservation Cleaner et discutez de la configuration ou des extensions nécessaires.
Caractéristiques
| Compatibilité avec le modèle | Luma / Blank, KOWAL |
|---|
Notice d'installation du module
Installation via Composer
Les données d’accès au dépôt Composer, c’est-à-dire l’adresse e-mail du client et le token de licence, vous seront envoyées par e-mail après l’achat. Elles sont également disponibles dans l’espace client après connexion sur kowal.store. Remplacez TWOJ_EMAIL_KLIENTA par l’adresse e-mail de votre compte et TWOJ_TOKEN par le token reçu. Exécutez les commandes dans le répertoire racine de Magento.
composer config repositories.kowal composer https://repo.kowal.storecomposer config http-basic.repo.kowal.store 'TWOJ_EMAIL_KLIENTA' 'TWOJ_TOKEN'composer require kowal/reservation-cleanerFinalisation de l’installation
Après l’installation du package, mettez Magento à jour et videz le cache :
php bin/magento setup:upgradephp bin/magento cache:flushDans un environnement de production, effectuez également la compilation DI et le déploiement des fichiers statiques conformément au processus de déploiement de la boutique.