Skip to content
Back to catalog
ReportInventory & warehouseNew

Lot Aging

How many days each lot has been in the warehouse, including the one still there

Computes the days each lot spent in stock, from arrival to departure — or to today if it still has quantity on hand. Averages by product and by category to separate what moves from what sits.

Compatibility
Odoo 19Odoo 18Odoo 17Odoo 16

How you get it

Every development works in all three Odoo environments. The only thing that changes is how we deliver it.

Nothing to install

Odoo Online (SaaS)

You do not need the ability to install modules. A Millora consultant comes in with temporary access that you authorize and implements it with Odoo Studio. When they are done, you revoke the access.

Install it today

Odoo.sh or your own server

You receive the module and the installation guide by email as soon as payment clears. Install it yourself, or we install it with you.

Installation · shell
# 1 · copia el módulo a tu addons_path
cp -r millora_permanencia_por_lotes /mnt/extra-addons/

# 2 · reinicia y actualiza la lista de apps
odoo-bin -u all -d tu_base --stop-after-init

# 3 · instala desde Apps
#     busca "Lot Aging"

What it solves

The problem

Inventory turnover is an average, and averages hide exactly what you need to find.

A product can show healthy overall turnover and still have one specific lot sitting untouched for fourteen months, tucked behind the newer stock. That lot appears in no indicator: it dissolves into the average of a product that does move.

Odoo knows when each lot arrived and when it left. But it never subtracts those two dates, so the simplest question on the warehouse floor — how long has this been here? — has no answer without exporting movements and cross-referencing by hand.

How it works

You pick a product category and a date range, and the report builds itself.

For each lot it computes the days between arrival and departure. And for lots that still have quantity on hand, it counts to today — which is the half that matters: what already left is history, what is still there is money standing still.

On top of that, two averages: by product, to see which ones move and which don't; and by category, to compare whole families and decide where to adjust purchasing.

All in tables, with nothing to configure.

How it differs from the other reports

Three similar questions, worth not confusing:

  • Lot aging — how long material has been in the warehouse. The purchasing question.
  • Aging by location — how many days product spends in each internal area. The operations question, and the one that finds bottlenecks.
  • Inventory turnover — how often stock as a whole renews itself. The management question.

They complement each other. This is the one that finds the forgotten lot.

What it does not do

It only sees lots. A product not tracked by lot or serial number never enters the report. If your catalogue isn't lot-tracked, this isn't your report.

It does not compute money. It returns days, not the value of what is sitting. That is what the valued inventory report is for.

It does not tell you what to do. It flags the four-hundred-day lot; whether to liquidate it, promote it or return it to the vendor is your call.

And everything depends on receipts and issues being properly recorded: if the dates are wrong, the days are wrong.

What changes

"Do we have dead stock?" stops being answered with an impression and starts being answered with a list sorted by days.

And the case nobody was looking for shows up: the lot that has been in the warehouse over a year, belonging to a product that on average turns over perfectly well.

What's included

  • Computes the days each lot spent in stock, from arrival to departure
  • Counts to today for lots that still have quantity on hand
  • Averages aging by product, to separate what moves from what doesn't
  • Averages aging by category, to compare whole families
  • Bounds the analysis by date range and product category
  • Runs in one click, with no technical setup
  • Presents results in tables, with no external tooling

Requirements

  • Inventory and Sales modules active
  • Products tracked by lot or serial number: untracked ones stay out
  • Receipts and issues recorded with correct dates, since that is where the days come from
  • A user with Inventory permissions