VMI workflow, inventory at customer site with auto-replenishment
VMI (Vendor Managed Inventory) is the distributor’s version of consignment: your inventory sits at the customer’s plant in bins, racks, or vending machines. You own it until they consume it. When a bin drops below its min level, you auto-replenish.
The data model in Magento:
- Customer site entity, each VMI location (customer plant, warehouse, branch) is a record with address, contact, billing customer.
- Bin entity, per-SKU records at each customer site with
location_code(rack/aisle/bin),min_level,max_level,reorder_qty,lead_time_days,contract_price. - Consumption events, how stock decrements. Sources: vending events (most reliable), barcode scan at the bin, RFID, manual count by your on-site rep during a weekly visit.
- Replenishment trigger, when current level < min level, fire an auto-PO. Usually emitted as EDI 850 to your own ERP for picking + shipping.
Operational gotchas I’ve seen break VMI deployments:
- Mondays. Customers consume Friday afternoon; replenishment hits Monday morning. 4,000 bins replenish at once. Make sure Magento + your ERP can ingest 4,000 POs in a window without timing out.
- Reconciliation drift. After 30 days of bin counts, you’ll be off by 2-5% on inventory. Quarterly physical cycle counts at customer site, reconciliation script that flags drift, and a credit-memo workflow are mandatory.
- Contract pricing changes. When a customer renegotiates, every bin’s price field has to update without disturbing in-flight replenishments. Effective-date pricing + a price-history table.
Some distributors run 50 VMI sites, some run 5,000. Magento + custom modules handles all of it; the bottleneck is your on-site rep capacity, not the software.