Aller au contenu principal

Odoo : FIFO, FEFO et valorisation du stock

Ce qui sort du rayon n'est pas ce qui entre dans le bilan. Les deux réglages, et l'ordre pour les poser.

Note Google 5/5 · EBMC, client Odoo (Luxembourg) · Odoo Learning Partner · réservez 30 min

Odoo : FIFO, FEFO et valorisation du stock
Guide
Par Victor
9 min de lecture

Odoo gestion de stock se joue dans l'application Inventory de l'ERP Odoo, pas dans un tableur parallèle. FIFO et FEFO n'y ont pas le même écran. Un intégrateur Odoo qui laisse le DAF découvrir l'écart à la clôture a raté le cadrage. Ce guide suit la documentation Removal strategies 19.0 et la fiche de valorisation 19.0, relues le 27 septembre 2026.

Il s'adresse au responsable d'entrepôt et au DAF d'une PME ou d'une ETI industrielle ou de négoce. Les chemins sont en anglais, comme la documentation. La base française affiche les traductions ; on vérifie le libellé sur l'écran plutôt que de le deviner.

Le module Odoo Stock : que paramétrer avant la première réception ?

Le module Odoo Stock, l'application Inventory, porte les emplacements, les routes, les lots et les mouvements ; la valeur, elle, dépend de la comptabilité. JAIKIN refuse d'importer un stock tant que quatre réglages ne sont pas écrits. Les emplacements, les routes, le suivi par lot ou numéro de série, et la méthode de coût. Une réception validée sans ces choix crée des mouvements qu'on ne réécrit pas d'un clic. L'ordre ci-dessous est celui d'un premier entrepôt, pas d'un groupe multi-sites.

  1. Inventory ‣ Configuration ‣ Settings : activer Storage Locations si le bâtiment a plus d'une zone, et Multi-Step Routes si la réception et l'expédition ne sont pas en une étape.
  2. Créer les emplacements utiles : réception, stock, préparation, expédition, rebut. Un emplacement fourre-tout « Stock » rend le FEFO et l'inventaire tournant aveugles.
  3. Sous Traceability, activer Lots & Serial Numbers, puis Expiration Dates si un produit périme. Sur l'article, onglet Inventory, champ Tracking : By Lots ou By Unique Serial Number.
  4. Choisir la méthode de coût dans Accounting ‣ Configuration ‣ Settings, section Inventory Valuation, avant toute réception. La catégorie de produit peut la surcharger.
  5. Réceptionner un bon réel sur une copie. Contrôler la quantité, le lot et la valeur. Corriger le paramétrage avant le stock entier.

Les routes multi-étapes (réception, puis rangement, puis prélèvement) ne se posent que si quelqu'un valide vraiment chaque étape. Une PME de négoce à un seul quai n'a souvent besoin que d'une étape. Activer trois étapes « pour faire propre » triple les validations et les oublis. Le choix s'écrit dans le cadrage, avec le nom de la personne qui scanne.

FIFO, FEFO ou LIFO : quel lot sort ?

La stratégie de retrait dit quel lot est réservé sur un bon de livraison. Elle ne change pas la valeur du stock. FIFO est le défaut : si rien n'est posé sur l'emplacement ni sur la catégorie, Odoo sort le lot entré le premier. Le réglage se fait sur Inventory ‣ Configuration ‣ Locations, champ Removal Strategy, ou sur Inventory ‣ Configuration ‣ Categories, champ Force Removal Strategy.

Quand les deux sont remplis, la catégorie gagne. C'est le piège des entrepôts mixtes : un emplacement en FEFO et une catégorie en FIFO sortent en FIFO. JAIKIN pose la stratégie sur la catégorie des produits concernés, et laisse l'emplacement vide, sauf pour un cas local documenté. Pour poser une stratégie sur un emplacement, Storage Locations et Multi-Step Routes doivent être actifs.

Stratégie de retrait : ce qu'il faut activer
Stratégie Critère documenté Prérequis
FIFO Date d'entrée, le plus ancien d'abord Lots ou numéros de série
LIFO Date d'entrée, le plus récent d'abord Lots ou numéros de série
FEFO Date de retrait, le premier à périmer Lots ou séries, et Expiration Dates
Closest Location Nom d'emplacement, ordre alphanumérique Emplacements et routes multi-étapes
Least Packages Colis dont la quantité couvre au plus juste Fonction Packages

Le FEFO sans date de péremption sur le lot ne trie rien d'utile : la date de retrait reste vide. On saisit les dates à la réception, pas dans un fichier à part. Le LIFO de prélèvement peut laisser vieillir le fond de stock, ce qui se voit trop tard sur un négoce de pièces à rotation lente.

La fiche de valorisation précise qu'on peut prélever en LIFO et valoriser en coût moyen, parce que le LIFO n'est pas une méthode de coût au sens des IFRS. Le prélèvement et la comptabilité ne se règlent donc pas du même menu. JAIKIN fait écrire les deux choix sur la même ligne du cadrage, pour que le magasinier et le DAF ne croient pas avoir réglé le même sujet.

Standard, coût moyen ou FIFO : quelle valeur ?

Odoo 19 documente trois méthodes de coût : Standard Price, Average Cost (AVCO) et FIFO. Elles se choisissent dans les paramètres de comptabilité, section Inventory Valuation, et peuvent être forcées sur la catégorie. Le prix standard reste celui saisi sur l'article : un achat plus cher n'y bouge pas la valeur unitaire. Le coût moyen recalcule à chaque entrée. Le FIFO de valorisation consomme d'abord la valeur des entrées les plus anciennes.

Ce FIFO-là n'est pas la stratégie de retrait. La fiche le dit par un exemple : on peut sortir les pièces en LIFO et les valoriser en moyenne. Pour une PME française, la documentation présente la méthode périodique comme la pratique européenne, et la méthode perpétuelle comme la pratique anglo-saxonne. Le choix appartient à l'expert-comptable. JAIKIN ne le tranche pas à sa place ; nous le faisons écrire avant la première réception.

Depuis Odoo 19, le perpétuel n'écrit plus une pièce à chaque mouvement de stock. La valeur bouge à la facture, et une écriture de clôture rattrape l'écart entre le physique et le comptable. Une base qui monte de 18 en 19 doit solder les comptes d'attente de stock, comme l'explique la page Inventory valuation. Notre avis sur Odoo Comptabilité situe ce module dans l'édition payante : sans elle, une PME n'a que la facturation.

Un projet Odoo à cadrer ?

Nous installons, paramétrons et reprenons Odoo pour les PME. EBMC, groupe de conseil au Luxembourg, est client Odoo de JAIKIN. En 30 minutes, on regarde votre périmètre et vos modules.

Odoo Inventaire : comptages et ajustements

L'inventaire tournant, dans la page Cycle counts, se fait par emplacement. Il faut donc des emplacements actifs. La fréquence se pose sur l'emplacement, champ Inventory Frequency. Le comptage lui-même est dans Inventory ‣ Operations ‣ Physical Inventory, filtré par emplacement. Après le premier comptage validé, la date suivante se calcule toute seule.

La documentation ajoute qu'un inventaire complet, au moins une fois par an, reste nécessaire pour que les stocks et les comptes se rejoignent. Un tournant sur la zone A, jamais sur les rebuts ni les retours, laisse un écart de clôture. JAIKIN demande la liste des emplacements comptés dans l'année, pas seulement la fréquence affichée. Un emplacement sans fréquence n'est pas « couvert par le tournant ».

Dans une base française, l'application s'appelle Inventaire, et le comptage n'est qu'une saisie tant qu'il n'est pas appliqué : c'est la validation de la quantité comptée qui crée le mouvement d'ajustement, et c'est ce mouvement qui bouge le stock et sa valeur. Un comptage saisi puis laissé en attente ne corrige rien. JAIKIN fait valider les ajustements par le responsable d'entrepôt, emplacement par emplacement, et fait expliquer tout écart important avant de l'appliquer, parce qu'un ajustement validé à tort se rattrape par un nouvel ajustement, pas par une annulation propre.

Odoo Inventory en 2026 : fonctionnalités de gestion de stock et documentation officielle

Odoo Inventory, l'application Inventaire, couvre les emplacements, les routes de réception et d'expédition, les lots et numéros de série, les stratégies de retrait FIFO, FEFO et LIFO, les règles de réapprovisionnement et l'inventaire tournant. La valorisation, elle, se règle en comptabilité. D'après la page des éditions d'odoo.com, consultée le 11/10/2026, l'Inventaire existe en Community comme en Enterprise ; le code-barres (Barcode) est réservé à Enterprise. Le comparatif Odoo open source (Community) ou Enterprise détaille ce que l'édition payante ajoute au-delà du stock.

La documentation officielle 19.0 est rédigée en anglais, avec une traduction française. Cinq pages suffisent à paramétrer un premier entrepôt ; les voici, avec le réglage que nous écrivons pour chacune.

Odoo Inventory : les pages de la documentation 19.0 qui comptent, consultées le 11/10/2026
Fonctionnalité Page de documentation Ce que JAIKIN règle
Vue d'ensembleInventoryEmplacements et routes écrits dans le cadrage, avec le nom de la personne qui valide chaque étape
Stratégies de retrait FIFO, FEFO, LIFORemoval strategiesStratégie posée sur la catégorie de produits, emplacement laissé vide sauf exception écrite
RéapprovisionnementReordering rulesMinimum et maximum sur les articles qui tournent, pas sur tout le catalogue
Valorisation et méthode de coûtInventory valuationMéthode figée avant la première réception, avec l'expert-comptable
Inventaire tournantCycle countsFréquence par emplacement, inventaire complet annuel maintenu pour la clôture

JAIKIN, agence Odoo installée à Fegersheim près de Strasbourg, paramètre l'inventaire par flux : 2 000 à 8 000 € HT pour un entrepôt et ses routes, 8 000 à 25 000 € HT pour un socle ventes, achats, stock et comptabilité, hors licence. Pour une entreprise alsacienne, cet intégrateur Odoo en Alsace forme l'équipe d'entrepôt dans ses murs, sur ses données.

Ce que nous voyons en intégration

Le piège le plus cher est un changement de méthode de coût en cours d'exercice. Le stock a déjà des entrées. Modifier la catégorie ne réécrit pas l'historique comme on l'espère. En FIFO ou en coût moyen, la fiche 19.0 permet d'ajuster la valeur des entrées encore en stock : sélection des mouvements, puis Actions, puis Adjust Valuation.

Nous ne lançons cet ajustement que sur une copie, avec l'expert-comptable, et nous notons l'écart. Le faire un vendredi soir sur la production, c'est une clôture improvisée. Le montant de l'écart reste dans le dossier de clôture, pas dans un message de chat. Sans ce montant, personne ne sait ce que la bascule a fait au bilan.

Le deuxième piège est le lot saisi après coup. Sans lot à la réception, le FEFO et le rappel n'ont rien à trier. Reprendre six mois de réceptions à la main coûte plus que le paramétrage. Sur un projet, nous préférons bloquer la validation d'une réception sans lot pour les catégories tracées, quitte à ralentir le quai une semaine.

Le coût d'intégration d'un socle stock, ventes et achats reste dans la fourchette publiée, 8 000 à 25 000 € hors licence, tant qu'on ne rejoue pas dix ans d'historique. Rejouer l'historique complet sort du socle et se chiffre après inventaire des fichiers, pas avant. La licence éditeur, elle, ne bouge pas avec le volume de l'historique. La commande qui alimente les réceptions se paramètre à part : fournisseur, prix et seuil, avant le premier bon.

EBMC est client Odoo de JAIKIN. Nous ne décrivons pas ici son stock. La bascule, elle, suit la méthode de migration : recette sur copie, week-end, rollback testé en 2 h. Un inventaire de reprise qui n'a pas été recompté sur le quai n'est pas une reprise. Les prix de licence, distincts de ce devis, sont sur la page prix d'Odoo.

Questions fréquentes

Comment gérer le stock en FIFO dans Odoo ?

En réglant deux FIFO, qui ne sont pas au même endroit. Le FIFO de prélèvement, celui qui choisit le lot sorti, est le défaut d'Odoo ; on le force sur la catégorie de produits, champ Force Removal Strategy, avec les lots ou numéros de série activés. Le FIFO de valorisation, celui qui fixe la valeur comptable, se choisit dans Accounting ‣ Configuration ‣ Settings, section Inventory Valuation, et la catégorie peut le surcharger. JAIKIN, agence Odoo près de Strasbourg, fige ces deux choix avant la première réception, avec l'expert-comptable, et les teste sur une copie de la base.

FIFO et FEFO sont-ils la même chose dans Odoo ?

Non. Le FIFO de retrait sort le lot entré le plus tôt. Le FEFO sort le lot dont la date de retrait est la plus proche, ce qui exige les dates d'expiration. Le FIFO de valorisation, lui, est une méthode de coût : il consomme la valeur des entrées anciennes, sans choisir le lot physique. Une PME peut prélever en FEFO et valoriser en coût moyen. Les deux réglages ne sont pas sur le même écran.

Où règle-t-on la méthode de valorisation dans Odoo 19 ?

Les trois méthodes documentées sont Standard Price, Average Cost et FIFO. Le chemin est Accounting ‣ Configuration ‣ Settings, section Inventory Valuation. La catégorie de produit peut imposer une autre méthode. Depuis la version 19, la comptabilité perpétuelle n'écrit plus une pièce à chaque mouvement de stock. L'application Comptabilité complète relève de l'édition payante ; la Community s'arrête à la facturation.

FIFO costing method : faut-il le régler sur la product category pour l'inventory valuation ?

Pas d'abord. La documentation Inventory valuation d'Odoo 19, consultée le 11/10/2026, place la méthode de coût, Standard Price, FIFO ou Average Cost (AVCO), dans les paramètres de comptabilité ; la product category sert à la remplacer pour une famille : « Default accounts, inventory valuation methods, and costing methods can be overridden by setting them on the product category form ». Une PME qui valorise tout en FIFO règle donc la société, puis ne touche à la catégorie que pour l'exception. Changer de méthode avec du stock déjà mouvementé se fait sur une copie, avec l'expert-comptable.

Peut-on changer le FIFO en cours d'année ?

Le changer sur une catégorie qui a déjà du stock ne reconstitue pas proprement le passé. En FIFO ou en coût moyen, Odoo 19 permet d'ajuster la valeur des quantités restantes via Adjust Valuation. JAIKIN ne le fait pas sur la base de production sans copie ni accord de l'expert-comptable. Le bon moment pour figer la méthode est avant la première réception de l'exercice.

Comment lancer un inventaire tournant ?

Les emplacements doivent être actifs. La fréquence se saisit sur l'emplacement. Le comptage se fait dans Inventory ‣ Operations ‣ Physical Inventory, en filtrant l'emplacement. La date du prochain comptage se cale après le premier inventaire validé. La documentation 19.0 rappelle qu'un inventaire de tout le stock, au moins annuel, reste nécessaire pour la clôture, en plus du tournant.

Faut-il des numéros de série pour le FIFO ?

La stratégie de retrait FIFO, comme le LIFO et le FEFO, demande le suivi par lots ou par numéros de série. Sans ce suivi, Odoo n'a pas de date d'entrée à trier au niveau du lot. Le FIFO de valorisation, en revanche, s'appuie sur les mouvements d'entrée et leur valeur, pas sur une étiquette collée sur la caisse. Confondre les deux fait activer les lots pour rien, ou l'inverse.

Victor Gless-Krumhorn

Victor Gless-Krumhorn

Fondateur & Lead Developer — JAIKIN, intégrateur Odoo

Intègre et migre Odoo pour les PME et ETI, en Community comme en Enterprise, depuis Fegersheim, près de Strasbourg. Formé à la finance à Paris-Dauphine, passé par UBS.

Vous suivez l'IA et Odoo avec nous ? Ajoutez JAIKIN à vos sources préférées : Google mettra plus souvent nos articles en avant pour vous, dans À la une et dans ses réponses IA.

Ajouter JAIKIN à vos sources préférées sur Google

Votre projet Odoo / ERP chiffré poste par poste — réponse sous 24 h

Décrivez votre projet, on répond avec des fourchettes fermes.

Réserver 30 min

Réservez 30 min — sans engagement

Vous préférez en parler de vive voix ? +33 6 32 93 97 18