For a business handling perishable products, it is not enough to have stock; the right stock has to be used first. Expiry dates and FEFO are how Odoo manages that. This piece is about expiry date and FEFO management in Odoo.
The perishable-stock problem
Some products do not last indefinitely; they have an expiry date, beyond which they should not be used or sold. For a business handling such perishable products, two things must be avoided: stock being used or sold past its expiry, and stock being left to expire on the shelf, wasted, while other stock was used ahead of it. Managing perishable stock means tracking the dates and using the stock in the right order. Expiry date tracking and FEFO are the two parts of that.
Expiry date tracking
Expiry date tracking, in Odoo, means perishable stock carries its expiry dates. Because perishable products are tracked by lot, each lot can carry its dates, including when it expires. With expiry tracking, Odoo knows the expiry of the stock it holds, and can use that: keeping the expiry visible, so a business can see what stock is approaching expiry, and helping ensure stock past its expiry is not used or sold. Expiry date tracking is the foundation: knowing the dates is what makes managing perishable stock possible.
What FEFO is
FEFO stands for first-expiry-first-out. It is a removal strategy: a rule for which stock to take when stock of a product is needed. Under FEFO, the stock taken first is the stock with the earliest expiry, the stock closest to its expiry date. This is the right strategy for perishable products, because it ensures stock is used in expiry order, the soonest-to-expire used first, so that stock is used while it is still good rather than being left to expire while fresher stock is used ahead of it.
Why FEFO matters for perishables
FEFO matters for perishable products because it minimises waste and prevents the wrong stock being used. Without a strategy like FEFO, which stock is used is arbitrary, and the result is that some stock gets left while newer stock is used, and the left stock expires, unused, wasted. FEFO ensures the soonest-to-expire stock is always the stock used next, so stock is genuinely used up before it expires, and the amount lost to expiry is minimised. For a business with perishable products, FEFO is the strategy that turns expiry tracking into genuinely well-managed perishable stock.
Expiry, FEFO, and the discipline
Expiry date and FEFO management depend on the underlying discipline. Expiry tracking depends on the dates genuinely being recorded on the lots. FEFO depends on lot tracking, since FEFO works by taking the lot with the earliest expiry. So managing perishable stock with expiry dates and FEFO rests on lot tracking being set up and the lots and their dates being faithfully recorded. With that foundation, expiry tracking and FEFO together let a business genuinely manage its perishable stock: nothing used past its date, and the minimum lost to expiry.
The takeaway
Expiry date and FEFO management in Odoo handle perishable products. Expiry date tracking means perishable stock carries its expiry dates on its lots, so Odoo knows the dates and can keep them visible and help prevent expired stock being used or sold. FEFO, first-expiry-first-out, is the removal strategy of always taking the soonest-to-expire stock first, which minimises waste by ensuring stock is used in expiry order. Together, on the foundation of lot tracking and faithfully recorded dates, they let a business genuinely manage perishable stock. For how we approach Odoo, see our ERP practice.