Skip to content
← BlogOperations

Stock loss, theft, and knowing who had access to what

2 min read
Share

Most shrinkage in cannabis retail comes from weighing variance, handling loss, and till errors rather than theft. But when a stock take or a cash-up does surface something that looks like theft rather than an honest process gap, the question that decides what happens next isn't how big the number is - it's whether there's a record of who had access to that product or that till at the time.

The gap a lot of stores are working with

A generic retail system built around one flat login, or staff sharing a till account because setting up individual logins is a hassle, produces exactly the same sales numbers as a system with proper access controls - right up until something goes missing. At that point, the two systems produce very different answers to "who was on this till" and "who touched this product."

What an access-controlled system actually gives you

  • Individual staff logins tied to a role, not a shared PIN everyone on shift uses
  • A full activity log and audit trail - who rang up what, when, and from which account
  • Cash-up reconciliation tied to the specific shift and staff member on it, not just a daily total
  • A live breakdown of every sale behind the expected cash figure, so a variance can be checked against what actually sold rather than argued over from memory
  • Vendor consignment balances that show which stock came in from which vendor, so a discrepancy can be traced to a supply-side or in-store cause

None of this prevents theft on its own. What it does is turn "something is missing and we don't know why" into a short, specific list of shifts and accounts to look at - the same shift-by-shift discipline that makes same-day cash-up catch a discrepancy while the person who can explain it is still on shift.

Why this beats reacting after the fact

Tightening staff monitoring after a loss is found is a reasonable instinct, but it's reacting to a number that's already unexplained. An audit trail that exists before anything goes missing means the record is already there when it's needed, rather than being reconstructed from memory once a manager starts asking questions.

It also doesn't have to wait for someone to go looking. A cash difference over a Rand threshold set per store now notifies the manager automatically the moment a shift closes over that line, instead of sitting in a report until someone happens to check it. Catching the pattern on the first or second occurrence, rather than the twentieth, is what keeps a small variance from quietly becoming a normal part of how a store runs.

Related reading

See how Budstack handles this

Fifteen minutes, a walkthrough of the platform, and a number scoped to the stores you actually run.