All posts
Functional4 min read

Optimizing Product Storage Strategies in Odoo Warehouses

Configure Odoo storage strategies per location - FIFO, FEFO, LIFO, and closest expiry - to optimize picking efficiency and comply with product rotation requirements.

Product Storage Strategies in Odoo#

Storage and removal strategies control which lot, location, or unit Odoo picks first when fulfilling an order. The right strategy ensures product rotation compliance, reduces spoilage, and can improve picking efficiency.

Removal Strategies#

Set per storage location (applies to products stored there):

Inventory → Configuration → Locations → [Location] → Removal Strategy:

StrategyDescriptionBest For
First In First Out (FIFO)Oldest receipt date picked firstElectronics, general merchandise
First Expiry First Out (FEFO)Shortest remaining shelf life picked firstFood, pharma, cosmetics
Last In First Out (LIFO)Most recently received picked firstBulk materials, raw commodities
Closest LocationNearest location to packing picked firstLarge warehouses with many bins
Least PackagesMinimize number of packages picked fromReduces open package handling

Applying a Removal Strategy#

Inventory → Configuration → Locations → WH/Stock → Removal Strategy: FIFO

Now when a picking order is generated for a product stored at WH/Stock, Odoo automatically selects the oldest lot/serial first.

FEFO Setup Requirements#

FEFO requires lot tracking with expiry dates:

  1. Enable Lots/Serial Numbers and Expiration Dates in settings
  2. Record expiry on every received lot
  3. Set location removal strategy to FEFO
  4. Odoo sorts lots by expiry date (soonest first) during picking

Per-Product Override#

Override the location strategy for a specific product:

Product → Inventory tab → Removal Strategy: override with a different strategy.

Example: most products at WH/Stock use FIFO, but perishable products override to FEFO.

Multiple Storage Zones with Different Strategies#

Organize the warehouse into zones:

  • WH/Ambient (FIFO): dry goods
  • WH/Cold-Room (FEFO): chilled products
  • WH/Chemicals (FEFO): products with strict shelf life compliance
  • WH/Bulk (LIFO): raw materials with no expiry concern

Each zone has its own removal strategy, applied automatically when products are stored there.

Putaway + Removal Strategy Pairing#

Putaway rules route products INTO locations; removal strategies control which unit comes OUT:

  • Putaway: fresh receipt → goes to back row of the shelf
  • Removal (FIFO): oldest unit on the shelf → picked first

Together, they enforce proper stock rotation automatically.

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free