Un lundi matin, le magasinier d'une PME de négoce s'aperçoit qu'il ne reste que deux cartons de la référence qui part le mieux, alors que le fournisseur livre en dix jours. Personne n'a pensé à commander, parce que personne n'est chargé de regarder les stocks tous les jours. Odoo sait faire ce travail à la place de l'équipe, à condition de lui donner une règle par produit : c'est le rôle des règles de réapprovisionnement, que l'on appelle aussi points de commande. Ce pas à pas explique comment les paramétrer dans Odoo 19 (la documentation est identique en 20.0), et quels pièges évitent les commandes absurdes.
Ce que fait une règle, exactement
Une règle compare le stock prévisionnel d'un produit, à un emplacement donné, avec deux seuils. Le prévisionnel tient compte du stock disponible, mais aussi des réceptions attendues et des livraisons déjà promises. Quand il passe sous le minimum, Odoo calcule la quantité qui ramène le produit au maximum, et crée une demande de prix (route Acheter) ou un ordre de fabrication (route Fabriquer). La quantité à commander est donc la différence entre le maximum et le prévisionnel, pas entre le maximum et ce qu'il y a sur l'étagère. Ce détail explique beaucoup d'incompréhensions : si une commande est déjà en cours, Odoo ne la double pas.
Les applications Inventaire et Achats existent en Community comme en Enterprise ; ce qui suit vaut donc pour les deux éditions, quel que soit l'hébergement (Online, Odoo.sh ou sur site).
Préparer le produit
Une règle ne fonctionne que sur un produit correctement configuré. Ouvrez Inventaire ▸ Produits ▸ Produits puis la fiche concernée, et vérifiez trois points :
- le type de produit est Biens et la case Suivre l'inventaire est cochée, faute de quoi Odoo ne calcule aucun prévisionnel ;
- pour un produit acheté, l'application Achats est installée, la case Achats est cochée et l'onglet Achats contient au moins un fournisseur. Odoo prend celui qui figure en haut de la liste pour préparer la demande de prix ;
- pour un produit fabriqué, l'application Fabrication est installée et une nomenclature existe, sinon aucun ordre de fabrication n'est créé.
Prenez cinq minutes sur le délai du fournisseur, dans la même liste de prix. Odoo l'utilise pour dater les besoins : un délai laissé à zéro fait croire au système que la marchandise arrive le jour même.
Avant d'appliquer ces conseils : testez chaque manipulation sur une copie de votre base ou sur un serveur de test, jamais directement en production. Ces conseils sont rédigés sans connaître votre configuration et peuvent ne pas s'appliquer tels quels chez vous. Nexelans ne peut pas être tenue responsable des conséquences d'une manipulation faite sans ces précautions.
Créer la règle
Allez dans Inventaire ▸ Opérations ▸ Réassort (le menu s'appelle Replenishment dans la documentation anglaise) et cliquez sur Nouveau. Renseignez le produit, l'emplacement (par défaut le stock principal de l'entrepôt), puis Min et Max. Vous pouvez aussi passer par le bouton intelligent Règles de réapprovisionnement de la fiche produit.
Pour fixer le minimum, partez de la consommation pendant le délai de livraison, puis ajoutez une marge pour les à-coups. Si vous vendez en moyenne quatre unités par jour et que le fournisseur livre en dix jours, un minimum de quarante laisse tout juste le temps de recevoir sans rupture, et un minimum de cinquante-cinq absorbe une semaine un peu forte. Le maximum dépend de ce que vous acceptez d'immobiliser et de la place disponible ; mettre un maximum très au-dessus du minimum espace les commandes mais gonfle le stock.
Deux contrôles sont posés par Odoo lui-même : si vous laissez le maximum à zéro, il reprend la valeur du minimum, et un minimum supérieur au maximum est refusé.
Afficher les colonnes utiles
Plusieurs champs sont masqués dans la liste. Cliquez sur l'icône de réglage des colonnes, à droite des titres, et cochez ceux dont vous avez besoin :
- Déclencheur : Automatique ou Manuelle ;
- Route préférée : utile quand un produit peut être acheté ou fabriqué ;
- Fournisseur et Nomenclature : pour imposer le fournisseur ou la nomenclature à utiliser ;
- Multiple : le conditionnement d'achat.
Automatique ou manuelle : le choix qui décide de tout
Une règle automatique crée la demande de prix ou l'ordre de fabrication sans intervention, quand le planificateur tourne (une fois par jour par défaut) ou quand la confirmation d'une vente fait passer le prévisionnel sous le minimum. C'est confortable pour des références banales et peu coûteuses, mais c'est aussi le moyen de voir arriver quarante demandes de prix un matin si les seuils sont mal réglés.
Une règle manuelle inscrit seulement le produit dans la liste du Réassort, avec la quantité proposée dans la colonne À commander. Un acheteur la relit, la corrige si besoin, puis clique sur Commander. Mon avis : commencez en manuel pour les produits chers ou à fournisseur unique, et ne passez en automatique qu'après un mois où les quantités proposées vous ont paru justes. Le report d'une ligne (Reporter) n'existe d'ailleurs que pour les règles manuelles ; une règle automatique dont on ne veut plus s'archive.
Les pièges que l'on rencontre vraiment
Les quantités par conditionnement
Si le fournisseur vend par cartons de six, renseignez le conditionnement sur la fiche du produit, dans la liste de prix du fournisseur, puis choisissez-le dans la colonne Multiple. Odoo arrondit alors la quantité à commander au multiple supérieur. Avec un minimum de 10, un maximum de 40 et un prévisionnel de 8, il faudrait 32 unités ; Odoo en commande 36, et le stock dépasse légèrement le maximum. C'est normal, et un avertissement signale le dépassement.
Plusieurs routes sur un même produit
Quand un produit est à la fois achetable et fabricable, renseignez la route préférée. Sans elle, Odoo achète d'abord, puis fabrique.
Le réassort à la commande
Pour un produit que vous ne stockez pas du tout, la documentation décrit la règle 0/0/1 : minimum et maximum à zéro, quantité à commander égale à un. Chaque vente confirmée déclenche l'achat d'une unité. Contrairement à la route Réapprovisionner sur commande, la marchandise n'est pas réservée pour la vente d'origine et la commande n'y est pas rattachée par un bouton : à retenir si plusieurs ventes se disputent la même référence.
Les dates et l'horizon
Pour les règles manuelles, Inventaire ▸ Planification avancée permet de définir un horizon de réapprovisionnement, en jours, valable pour la société. Il décale la date de prévision (date du jour, plus délai fournisseur, plus horizon) et fait apparaître plus tôt les produits qui passeront sous le minimum. Utile pour regrouper les achats d'un fournisseur ; à éviter si vous voulez rester au plus juste.
Vérifier que la règle fonctionne
- Choisissez un produit de test à règle automatique et créez une vente qui fait passer son prévisionnel sous le minimum.
- Confirmez la vente. Si le planificateur n'est pas encore passé, ouvrez le mode développeur et lancez-le depuis le menu Opérations du module Inventaire (bouton Run Scheduler dans la documentation). Attention : cela déclenche aussi toutes les autres actions planifiées de la base, ce qui est à proscrire en production en pleine journée.
- Ouvrez Achats ▸ Commandes ▸ Demandes de prix : une demande doit exister pour le bon fournisseur, avec la quantité attendue. Pour un produit fabriqué, regardez Fabrication ▸ Opérations ▸ Ordres de fabrication.
- Revenez dans le Réassort : la colonne À commander de la règle doit être retombée à zéro, puisque la demande est comptée dans le prévisionnel.
- Supprimez ou annulez la vente et la demande de prix de test.
Si rien ne se crée, les causes les plus fréquentes sont un produit sans suivi d'inventaire, un fournisseur absent de l'onglet Achats, une nomenclature manquante ou une règle archivée. Pour la suite du circuit, le contrôle des quantités à la réception est détaillé dans l'article sur la réception en deux étapes, et le rapprochement de la facture avec la commande dans celui sur le contrôle des factures fournisseurs.
Le livre d'Emmanuel Chaumery, Odoo 20 au quotidien, consacre un chapitre aux achats et suit une PME fictive, Helios SA, écran par écran. Il est disponible en version brochée et en ebook.
Sources
- Documentation Odoo 19.0, règles de réapprovisionnement (page identique en 20.0) : Lire la page
- Code d'Odoo 19.0, modèle
stock.warehouse.orderpoint: Lire le code