Ask why stock is wrong and you will hear about counting. Count more often, count more carefully, count at night. Counting helps, but it treats the symptom. The cause is usually that material moved hours or days before the system was told.
Every movement is an event
Material issued to a batch, returned unused, scrapped at a process, adjusted after a count — each is a distinct event with a time, a quantity and a reason. When they are recorded as events, the current position is derived. When they are recorded as periodic corrections, the position is a guess between counts.
- Issue against the batch, not against the order in aggregate
- Record returns as returns, not as negative issues
- Give every adjustment a reason code
- Keep the movement history; the trail is what makes a variance explainable
Low stock is a threshold, not a feeling
Reorder points work when they are attached to the material and visible where the decision happens. A low-stock list that lives in a report nobody runs is the same as no list at all.
What good looks like
You should be able to pick any material and see: what is here, what is committed, what is on the way, and every movement that got it to that number. If that view exists and is current, counting becomes verification rather than discovery.

