Glossary
Quick definitions of key terms
Traceability is only worth its data-entry cost if it answers the question you will actually be asked. This guide covers picking the right granularity and proving the trace works before an incident tests it.
Use batches when a group of units shares an identity — a production lot, a dye lot, a shipment with one expiry date. Use serial numbers when each unit must be identified individually, typically for warranty, service history or high value. Serial tracking on a fast-moving low-value item creates data-entry burden without answering a question anyone asks.
This is a per-item decision, not a policy for the whole catalogue. Most businesses need serial numbers on a small number of items and batches on rather more, and neither on the majority.
Set batch or serial on the item master before any stock exists. ERPNext resists changing this once transactions have been posted, and for good reason — the existing balance has no identity to attach to.
Where Stock > Item > Inventory
Automatic batch creation with a meaningful series removes a manual step and prevents inconsistent identifiers. Include the date, and the line or shift if you run more than one.
Batch identifiers are what someone reads under pressure during a recall. Make them legible.
Configure shelf life on the item so ERPNext can calculate expiry from the manufacture date, and decide whether to enforce first-expiry-first-out on picking or to leave it advisory.
Receipt, transfer, consumption, delivery. A single step where identity is not recorded breaks the chain, and a broken chain fails at exactly the moment you need it.
Recording which batch went to which customer is what makes a recall a phone list rather than a public notice. Confirm the delivery note captures it.
Pick a finished batch and trace back to its inputs. Pick an input batch and trace forward to every customer who received it. Time both. If either takes longer than an incident allows, the design needs work before it is relied on.
Serial numbers on consumables add a scan to every movement and answer nothing. The data entry gets skipped, and then the serialised items you did need are unreliable too.
The existing balance has no batch, so it sits outside the trace permanently and every report has an unexplained residue.
A sequential number tells nobody when or where something was made. During an incident that lookup is the delay.
Knowing which supplier lot went into a batch is half the answer. Without the delivery side you cannot tell customers apart, so every recall is total.
A traceability design that has not been rehearsed is a hypothesis. Incidents are a poor time to discover a gap.
ERPNext supports both on the same item, and it is occasionally right — a serialised unit belonging to a manufacturing lot. It roughly doubles capture effort, so use it only where both questions genuinely get asked.
Clear the balance to nil or reconcile it in under an opening batch, then enable tracking. An opening batch is a compromise, but it is better than a permanent untracked residue.
It adds a selection step. Automatic batch selection by expiry or receipt order removes most of it for warehouse staff, leaving manual choice only where it matters.
At least the shelf life plus your longest claim window, and longer where a sector rule or a customer contract requires it. Storage is cheap compared with not being able to answer.
Most traceability designs fail on the outward leg or on a step where identity is not captured. Describe your process and we will tell you where the chain breaks.
Review my setup