Running a dispensary means operating inside one of the most compliance-heavy retail environments in the country — while still competing like a modern retailer. Most operators get the floor right: knowledgeable staff, curated product selection, loyal customers. But behind the scenes, the inventory operation often runs on a combination of spreadsheets, memory, and hope. And that gap between what's on the shelf and what's actually tracked is where the money goes.
The problem rarely announces itself loudly. It shows up as a vendor who consistently short-ships but never gets flagged. An invoice that doesn't match the purchase order, paid anyway because no one caught the discrepancy. A product that sat on the shelf for four months because no one had velocity data to tell them it wasn't moving. These aren't catastrophic failures — they're slow leaks that compound over time.
This is the story of how one dispensary closed those gaps using a low-cost, customized inventory system built to connect purchase orders, receiving, vendor management, and METRC compliance into a single place — and what changed when everything was finally visible.
Before the system was implemented, this dispensary's inventory workflow was fragmented across multiple tools and people. Purchase orders were placed verbally or by text message. There was no official record of an order until an invoice arrived — sometimes days after product had already hit the shelf. Receiving was logged inconsistently creating a daily compliance risk that grew larger with every transaction.
- No PO visibility - Orders existed in someone's inbox or memory, not in a system. There was no way to confirm status without calling the vendor directly.
- Untracked fulfillment - Even when a PO existed, there was no process to confirm whether it arrived complete, partial, or short-shipped.
- Deadstock accumulation - Without product velocity data, buyers reordered based on gut feel. Slow movers sat on shelves for months, tying up cash.
- Stock-outs on top sellers - Fast-moving SKUs ran out because there were no reorder triggers. Lost sales and frustrated customers followed.
- Vendor compliance gaps - No system existed to flag which vendors were consistently late, non-compliant, or delivering incorrect product.
- Manual METRC entry - Compliance records were entered separately and after the fact, creating audit exposure and consuming hours of staff time each week.
One of the most impactful features of the new system — and the one the accounting team discusses most — is automated purchase order-to-invoice matching. In the old workflow, an invoice would arrive from a vendor and someone would manually check it against whatever notes existed about the original order. If the numbers didn't align — a missing unit, a price discrepancy, a product substitution — it was usually caught late, if at all. Overpayments went unnoticed. Credit memos were never requested.
The new system establishes a three-way match between what was ordered, what was received, and what was billed. When a PO is created, the expected quantities, SKUs, pricing, and vendor details are logged before anything ships. When inventory arrives, the receiving team confirms what came in and flags any shortfall or substitution immediately. When the vendor invoice arrives, the system compares it line-by-line against both the PO and the receiving record — surfacing discrepancies automatically rather than burying them in a pile of paperwork.
- Faster month-end close - Invoice reconciliation dropped from a multi-hour weekly process to a quick daily review, because the matching happens in real time as orders are received.
- Caught billing errors - Within the first 30 days, the system flagged several invoices where billed quantities exceeded what was actually delivered — discrepancies that had gone unnoticed for months prior.
- Audit-ready records - Every transaction has a complete paper trail: PO, receiving confirmation, and matched invoice in a single record. No more chasing documents at audit time.
- Credit memo recovery - With discrepancies flagged at the point of receiving, the team could request credit memos from vendors promptly rather than discovering billing errors weeks later.
The operational core of the system is a purchase order tracker that connects directly to the inventory dashboard and METRC. When a buyer creates a PO, it flows through the entire fulfillment lifecycle — from placement to in-transit to received — with every step logged and visible to the entire team. Nothing falls through the cracks because there is no longer a gap between the system of record and the physical reality of what arrived.
- PO creation connected to METRC - Orders are created once and sync automatically, eliminating the duplicate data entry that was consuming staff time and creating compliance exposure.
- Real-time status tracking - Every order has a clear status: placed, in transit, received, or flagged for discrepancy. Managers no longer need to call vendors to find out where an order stands.
- Partial fulfillment flagging - When a delivery arrives short, the system captures exactly what came in versus what was ordered, so the team can follow up immediately rather than discovering the gap at reorder time.
- Customized to the workflow - The system was built around how this dispensary actually operates — not a generic template that required workarounds from day one.
See it for yourself — the screenshot below shows exactly how orders are created, tracked, and received inside the dashboard.
Inventory decisions that used to rely on intuition now rely on data. The dashboard surfaces product velocity metrics — which SKUs are moving fast, which are stagnating, and when it's time to reorder — before the shelves run empty. Deadstock is flagged proactively rather than discovered during a quarterly count. And for the first time, the buying team can see the relationship between what they order and what actually sells, making each subsequent purchase smarter than the last.
- Product velocity tracking - Understand exactly how quickly each SKU is moving so reorder timing becomes predictable rather than reactive.
- Deadstock identification - Products that haven't moved within a defined window are flagged automatically, giving the team time to act — discount, bundle, or discontinue — before cash is permanently tied up.
- Stock-out prevention - Reorder thresholds can be set per SKU so the system alerts buyers before inventory drops below a safe level, not after a customer walks out empty-handed.
- Path toward automated ordering - As clean data accumulates over time, the system is being configured to trigger reorders automatically for top-selling SKUs — moving the operation from reactive to proactive purchasing.
One of the more unexpected outcomes of the implementation was what it revealed about vendor performance. Within the first month of tracking, two vendors were identified as chronic short-shippers — a pattern that had existed for far longer than anyone realized, simply because there was no system to surface it. Armed with that data, the dispensary was able to renegotiate terms with both vendors and set clear fulfillment expectations going forward.
- Vendor scorecards - On-time delivery rates, fulfillment accuracy, and compliance status are tracked per vendor so the next buying decision is backed by a documented history rather than a gut feeling.
- Compliance flags - Vendors who fall out of compliance are surfaced immediately, allowing the dispensary to pause orders before a non-compliant delivery creates a regulatory problem.
- Relationship leverage - When fulfillment data is documented and visible, conversations with underperforming vendors shift from anecdotal complaints to data-backed accountability.
Conclusion
The dispensary in this case study didn't overhaul its entire operation overnight. The changes were targeted — a PO tracker here, a vendor scorecard there, automated invoice matching baked into the receiving workflow. But the cumulative effect was significant: fewer stock-outs, cleaner books, tighter vendor relationships, and a compliance record that no longer depended on someone remembering to update METRC manually at the end of the day.
At ByteHog, we build these systems for cannabis operators of all sizes — customized to your workflow, your vendors, and your compliance requirements. If your dispensary is running on spreadsheets and gut feel, we'd like to show you what a connected inventory operation looks like. Reach out to the ByteHog team to schedule a walkthrough.