When a paper lot log is the only thing standing between you and a recall.
How a regional chemical distributor replaces manual receiving and paper-based lot tracking with scan-verified, Acumatica-native chain of custody.
This is a composite scenario, not a customer. The operation described is assembled from implementations across chemical and specialty distribution, with the identifying details removed. There are no performance figures on this page because we do not publish numbers we cannot attribute to a named customer.
What is real is the workflow: every step below is what the software actually does, and you can verify all of it in a twenty-minute demo.
Scanned, not keyed
Lot numbers come off the supplier label.
Rules, not memory
Holds placed automatically at receipt, and they follow the pallet.
Posted at close
Purchase Receipt lands in Acumatica when the session ends.
A distributor whose WMS is a clipboard.
A regional distributor of industrial solvents, cleaning agents and specialty coatings. Two facilities, around twenty warehouse staff, roughly 400 inbound purchase orders a month — all lot-tracked, many with expiry constraints, some with hazmat handling.
They run Acumatica. Their WMS is a clipboard.
The real fear wasn't the errors they caught.
Every morning the receiving supervisor prints a stack of POs. Workers write lot numbers by hand on paper travelers that follow pallets to putaway. At end of shift — usually late, usually the supervisor — those lot numbers get keyed into Acumatica.
It works until it doesn't. Wrong lot recorded. Quantity miscounted. Material accepted without a supplier CoA on file. Product that should have been quarantined received and put away, and nobody knows until a customer raises a concern.
The audit finding is the one that matters: there is no continuous chain of custody. They can prove what is in Acumatica. They cannot prove what happened at the dock.
Scanner-verified at the dock. In Acumatica the moment the session closes.
Receiving opens against a live purchase order queue pulled to the scanner by webhook, so the receiver is working the PO as it exists in Acumatica now — not as it existed at the last sync. Several receivers can work the same PO, each in their own session, each seeing the others' progress.
The lot number is scanned from the supplier's own label rather than read off it and typed. Quantity, lot and expiration are captured at the pallet, in the aisle, by the person who is actually looking at the drum. Over-receipts are flagged and held for supervisor approval before anything posts.
Products flagged for hold route to the hold location automatically at putaway, with no manager action needed, and held stock drops out of available-to-pick — so a held lot is never offered to a picker. The hold is attached to the inventory, so when the inventory moves the hold moves with it.
When the session closes, WMSi posts the Purchase Receipt to Acumatica over the REST API and releases it. Every post carries an ExternalRef tied to the session, so a retry after a dropped connection is recognised as the same document and Acumatica never creates a duplicate.
In prose: a drum is received against a purchase order with its lot and expiration scanned from the supplier label; a second line matches a hold rule and routes itself to the hold location without anyone deciding; and when the session closes the Purchase Receipt posts to Acumatica once, carrying an ExternalRef so a retry cannot duplicate it. Document numbers are illustrative.
Scanner screen for this workflow:
The compliance question changes.
Receiving stops being a transcription job. Lot numbers arrive in Acumatica the way they left the supplier's label, with a scanner operator ID and a timestamp attached. Holds are placed by rule at receipt rather than by whoever remembers the rule, and when held inventory moves, the hold moves with it — so "find the pallet" stops being a physical search.
The audit answer changes from "can we prove what happened?" to "here is the receipt record, timestamped, with the operator on it."
| Area | What it becomes |
|---|---|
| Lot capture | Scanned from the supplier label at the dock. Never hand-keyed, never re-keyed at end of shift. |
| Quality holds | Placed by configurable rule at receipt. The hold follows the inventory through every move. |
| Chain of custody | Continuous from dock to shipment, in Acumatica's own data model. |
| Manual ERP entry | Eliminated. Every receipt posts at session close with ExternalRef idempotency. |
Eight mechanisms, all of them demonstrable.
- Live purchase order queue pushed to the scanner by webhook
- Multiple receivers on one PO, each in their own session
- Lot and expiration captured at the dock, scanned from the supplier label
- Three-tier over-receipt handling, with supervisor approval before posting
- Automatic quality hold at receipt, by configurable rule
- Held stock excluded from available-to-pick, with holds scoped to a single license plate where needed
- Four disposition paths — full release, partial release, scrap, reject — each posting the matching Acumatica adjustment
- Purchase Receipt posted and released at session close with
ExternalRefidempotency
The three modules this scenario runs on.
Receiving
Several receivers on one PO, each in their own session, lot and expiration captured at the pallet, and the receipt posted to Acumatica once — never twice.
How receiving works InboundQuality hold
Flagged product intercepted before it reaches a pickable bin, excluded from available-to-pick, and every disposition posted to Acumatica as an adjustment.
How holds work PlatformLot tracking
Lot history carried through putaway, count, pick and ship, so the chain from supplier lot to shipped line is a query rather than a reconstruction.
How lot tracking worksRecognize this floor?
Twenty minutes with a WMSi specialist. Real scanner workflow, real Acumatica integration. No slides.