📅 · 4 min read · Meta Smart Factory Team
Almost everything written about warehouse management systems was written for distribution, and it transfers badly. A distribution centre's customer is an order with a cut-off: released orders do change, but the change is a reshuffle inside a wave against the same carrier departure. A factory WMS serves a machine that starts an operation at a specific minute, draws material while it runs, hands back what it did not use, and gets resequenced at nine in the morning, moving dozens of dependent deadlines at once.
A distribution centre receives, stores, picks, packs and ships. A factory warehouse does that too, then stages to production orders, feeds lines, builds kits, stores work in progress that came back changed, absorbs remnants and returns, and enforces constraints that outrank efficiency: batch or serial identity, shelf life, quality status, segregation.
Software built around order fulfilment models one or two of those properly and collapses the rest into a single goods issue against the production order: a quantity, an order number, and every piece of structure worth having erased — which batch or serial, which handling unit, which operation, what came back.
Staging moves material into a location tied to one work order before the operation starts. Staged material is still stock: located, reserved, and needing to be re-timed or unwound when the schedule moves. If de-allocation happens only by manual reversal, the plant accumulates reservations against material nobody will use, and availability becomes fiction.
Line feeding replenishes point-of-use containers, and the signal should match the part class. Consumption signals — a bin scanned empty, a kanban card, a level signal, a machine count — suit common, high-running parts, where the replenishment unit is a container rather than a BOM quantity. Order-driven and sequenced supply suit variant, bulky or high-value parts, where the bill of materials for one order is the only thing that says which variant to bring. The expensive mistake is one method for everything, most often BOM-driven replenishment of common parts, where what stands at the station drifts from the plan within a shift.
Kitting builds components into one handling unit for one order, and the short kit is its defining failure. With eleven of twelve components available, the system can hold the kit, release it partial with the shortage flagged against the operation, or substitute. Any of those can be right; releasing a partial kit that looks complete never is, because the line stops after the setup has been burned. Breaking a kit down must return components as themselves, batches intact.
Work in progress is where factory records rot, usually because buffers are not locations. Between operations material sits somewhere — curing, cooling, awaiting inspection, queued for a machine — and if that somewhere has no address, work in progress is a number in the ERP and a guess on the floor.
A buffer has attributes a rack does not: a minimum dwell, because a part must rest or cool before the next operation is allowed, and a maximum dwell, because a coated part has to reach the oven inside a window and mixed adhesive can have a pot life of minutes, running from mixing rather than from the last scan. Neither is enforceable unless the buffer is modelled.
Remnants are the other leak. When an operation takes 4.3 metres from a 6 metre bar, what is left is not 1.7 metres: it is 1.7 minus the kerf, the facing cut and whatever the chuck held. That piece becomes stock with a new identity, or scrap, or a length of metal against a wall that somebody will use next month without telling anyone. Only the first is manageable, and only if the length is measured on return rather than calculated, onto a handling unit that inherits the parent batch and takes a location. A return that needs a supervisor and a desktop gets done tomorrow or never.
In a plant, slotting optimises handling time to the point of use rather than pick travel, weighted by how often the schedule calls for the item, and zoning follows the consuming resource as much as the movement rate: material feeding one cell family belongs near it even if it moves slowly.
The decision that matters most is granularity at the line. Is the flow rack at station seven a stock location, or is material consumed the moment it leaves the racking? Each option is wrong in its own direction. Consume at removal and you understate stock: material standing at the station is off the books, planning proposes replenishment for parts that are physically there, and consumption timing becomes a fiction tied to when somebody moved a pallet. Leave line-side outside the location model but inside plant stock and you overstate availability: netting counts material committed to one machine. Modelling line-side costs transactions and buys honest point-of-use stock. Choose the error deliberately.
Factory locations carry attributes distribution rarely needs: temperature zone, electrostatic protection, segregation where incompatible chemicals cannot share a bund, floor loading, and which equipment can reach the location. Re-slotting needs an owner and a rhythm, because a plan set at go-live and never revisited is why the fastest-moving component is in the furthest aisle three years later.
In a distribution centre, receiving is count, verify, put away. In a plant, receiving creates a batch with a status, and the status governs everything downstream.
The goods receipt creates a handling unit carrying your own identifier, the supplier lot reference and a status that is not available. Sampling follows the plan for that material and supplier, and a usage decision closes it: released, released with a concession for one order or quantity, restricted to certain uses, or rejected pending return. Certificates belong against the batch, and in a regulated flow the material is unusable until both goods and document have arrived.
Where the system is validated and the status is enforced at allocation, put-away can happen before that decision and quarantine can travel with the handling unit rather than occupy a cage by the dock, because quarantine floor space always runs out first. Rejected material is the exception, and most regimes expect it marked and physically separated, as does anything segregated for hazard, allergen or temperature reasons. Decide which holds are status holds and which are physical.
The hard case is a hold applied after the material has moved: a lot blocked at eleven o'clock that is already staged, kitted and partly at line-side. The system has to enumerate every descendant handling unit, including those inside kits, and say where each is standing. If the block only prevents new picks, containment is theatre and the material is still at station four.
First expiry, first out is the shallow version. A factory needs remaining shelf life at the moment of consumption rather than at the moment of picking: an adhesive with forty days left, picked correctly today for an operation scheduled in fifty, is a nonconformance the pick rule created.
The clocks vary more than one date suggests. A sealed drum and an opened one have different remaining lives; some materials carry a retest date and can be recertified rather than destroyed; others carry a cumulative temperature exposure budget, which makes movement history the shelf life record.
Some batch constraints outrank expiry order entirely — a specification requiring a single lot across a production batch, a shade match tying a run to one lot, a qualification naming a lot — and there the correct pick is not the oldest. These are allocation-time constraints applied by the system, not policies taped to the rack, and every override needs a reason code and a name.
Wave picking works in distribution because demand is stable inside the wave, there is a hard external deadline such as a carrier departure, and work can be batched toward one packing station. A factory breaks all three: demand is a schedule resequenced during the shift, there is no single deadline but dozens of operation start times, and there is no common destination, only stations each needing something different at a different minute.
What fits is release against a rolling schedule window: pick tasks generated for operations starting inside a horizon set by the time physically needed to stage plus a margin, not by a shift boundary, so a resequence at nine disturbs only work not yet released.
Priority is what gets left to defaults. Pick sequence should derive from operation start time and the criticality of the consuming resource, so material for the bottleneck outranks everything; an engine sequencing by travel distance alone will starve the constraint to save a forklift some metres. A short pick is a stoppage that has not happened yet, so it should raise an exception with a time to resolve, visible to planning rather than only to the warehouse supervisor.
Before choosing a technology, choose what gets identified. The licence plate — one unique identifier on a handling unit, contents held in the system rather than printed on the label — is what makes scanning cheap: one scan moves a pallet of several hundred pieces.
Barcode is the default. The engineering is in the label, not the symbol. Direct thermal stock comes out of a curing oven solid black; wax thermal transfer smears; resin ribbon on polyimide or high-temperature polyester survives the cycle. A label for wash-down, a cold store, an oven or cutting oil is a specification — substrate, adhesive, ribbon, and a tested temperature and dwell — rather than a consumable purchase.
RFID earns its cost where reads must happen without presentation: a full pallet through a gate, returnable assets whose tags amortise over years, a tote with an embedded tag because no label would last. The physics is the project. Metal detunes, liquid absorbs, and read zones have to be controlled, because a portal that reads the next aisle generates phantom movements, worse than no read at all.
Real-time location gives continuous position instead of an event at a scan point. Size it by the decision it changes. Zone-level accuracy answers which bay or aisle a trolley is in, and it is cheap. Sub-metre systems get you to an aisle and a bay segment, not to a pallet position and not to a level: vertical resolution and multipath in metal racking break the datasheet figure. If you need the position, that is a scan at the position. The cost usually left out is the tag population and its batteries, which is why tagging consumables rarely pays.
There are two ways to be wrong and they cost differently. Phantom stock, where the system has it and the floor does not, is the expensive one: planning nets against it, no purchase is proposed, the scheduler commits the operation, and the error surfaces at the pick, the latest and costliest moment available. Hidden stock buys twice, fills space and writes off on expiry.
The real cost is propagation. An on-hand figure feeds netting, which produces purchase proposals and planned orders, which a finite-capacity schedule sequences, which someone turns into a delivery promise. A wrong number does not produce a wrong number; it produces a wrong promise, and a correction that reshuffles a schedule people had planned their week around. Measure accuracy by location and by record rather than by value, because currency hides almost every small part being wrong, and small parts stop lines as effectively as expensive ones.
Drive counting by event as well as by calendar: a zero pick, a negative balance, a discrepancy at the pick, and any location the moment it empties, which is the cheapest verification in the building. Treat an adjustment without a cause code as bookkeeping rather than improvement, because the same short list keeps appearing — line returns never recorded, backflush quantities that do not match usage, receipts posted against the wrong lot.
Settle three ownership questions in writing before anyone designs an interface; every later integration argument is one of them resurfacing.
Stock. The ERP owns valuated stock for the books; the WMS owns physical stock at location and handling unit level. Two resolutions of the same truth, so the reconciliation rule has to be explicit: which fields synchronise, on what event, and which system wins a disagreement. Two systems that both believe they own bin quantity produce an adjustment loop nobody can stop.
Order. The ERP owns planned orders, purchase orders and deliveries; MES owns the operation, its confirmation and its scrap. The WMS owns tasks derived from them, and every task should carry the work order and operation, so a movement can be judged late against something real.
Movement. The WMS owns the physical move; the ERP owns the posting that mirrors it. The decision is posting granularity: send every bin-to-bin move and you flood a system never designed to hold it; send only plant-boundary movements and ERP location data means nothing, which is the right trade provided everyone accepts that location is answered by the WMS and nowhere else.
Consumption is the most consequential choice, and the methods differ in timeliness before accuracy. Backflushing on confirmation is cheap and defers every error into a later count. A machine count against a BOM rule moves the same theoretical consumption close to real time, so balances go negative sooner and a wrong BOM quantity surfaces weeks earlier, but it still posts what the BOM says rather than what the operator used. Scanned or weighed issue at the point of use is the only method that records real consumption, and the only one that carries genealogy at batch or serial level; it costs a transaction per issue. Whichever you choose, movements must be idempotent, and the warehouse has to keep working when the link is down.
Automating movement is the last step, and its preconditions get skipped. The location model has to be enforced, because a vehicle cannot ask a colleague where the pallet really ended up. Load carriers need consistent dimensions and condition: a broken pallet stops a vehicle in a way it never stops a driver, and a pallet will be left in a travel lane, so mixed aisles and blocked lanes need rules. Wireless coverage has to hold between metal racking, charging has to be sized for the peak hour, and someone needs the authority to clear a stuck vehicle at three in the morning, or the fleet becomes a parked fleet within a quarter.
A fleet is also only as good as the queue feeding it. Run a month with digital transport requests and system dispatching, then read the task log: if the tasks are coherent, a vehicle can execute them; if not, it will execute the incoherence faster and at higher capital cost.
Feature lists will not separate the candidates, because everything on the shortlist has put-away, picking and counting. Scenarios run against your own master data will.
Ask each vendor to pull a production order forward two hours, mid-shift, after picks were released, and watch the staged material and the open tasks. Block a lot that is already staged and partly inside a kit, and ask where every piece of it is standing. If your recall exposure is at serial level, have them trace a serialised component into a kit, into a finished unit and back out. Return three unused pieces and one measured remnant from a handheld. Short-pick a component for the bottleneck cell and note what the planner sees, and when. Then disconnect the ERP link and run one of those scenarios again.
Ask the ownership questions directly: what is authoritative for on-hand at a location, what creates and releases a reservation, and what happens to that reservation when the schedule changes. Size the system by peak transactions per hour — the receiving window and the end-of-shift posting burst, not the daily average — and separately by concurrent handheld sessions at shift change. Not by pallet positions. And settle who cleans the location master, writes the labelling standard and defines the unit of measure conversions: that work is the project, and the software is the easy half.
Meta Smart Factory's Smart Warehouse Management and Logistics modules sit on the same platform as the MES, APS, MRP and Quality modules, which matters wherever the warehouse has to know the schedule: reservations against work orders, staging that re-times when the sequence changes, consumption posted from production events rather than at shift end, and a quality hold that can find material already staged. The RTLS and gate management module sits alongside it.
Everything above is a design decision that exists regardless of vendor. The location model, the labelling standard, the consumption method, the granularity at line-side and the ownership boundary with the ERP determine the outcome more than the software does. The useful first conversation is which of them are still undecided in your plant.
Discuss This With Our Experts