A friend of mine runs one of the largest cannabis companies in the world. A while back he told me, "ShelfSpace looks cool. I have no idea what it is, but I support you."
That stuck with me. Because if he doesn't get it, I'm doing a bad job explaining it. I've been so far in the weeds building this thing that I forgot how it sounds from the outside. So this is my attempt to fix that — for him, and for anyone else who's curious. If you want the close-up version of one piece of it, the anatomy of a vendor invoice payment walks through a single real document; this post is the bigger picture.
Here's the honest version: ShelfSpace is hard to explain in one sentence because it isn't one thing. It's a system. And the only way I know how to explain a system is to show you what it's made of and what it's for.
Think about a car
A car is an engine, a transmission, four tires, a steering wheel, brakes, a fuel system — a complicated orchestra of parts. Nobody buys a car because they want a transmission. They buy it because all those parts, working together, do one simple thing: get you from A to B, safely.
ShelfSpace is the same idea. It's a complex system with one simple job: optimize the profit of every slot on your retail shelf. Not "manage your payments." Not "do your accounting." Optimize the profitability of every SKU you carry. That's the A-to-B.
It is not a staffing agency. It is not a chatbot with a dashboard bolted on. It is not "accounts payable" or "consignment" or "credit recovery" on their own. It's a platform your team logs into that has all of those things built into one mechanism, pointed at one goal. Your buyer still owns the vendor relationships — we're the software and the data underneath them. A lot goes into that. Let me walk you through it the way it actually gets built — in layers.
Pay in one click
Check 21 payments — cut in one click, visible to you and the vendor, synced to QuickBooks.
Receive & pay accurately, on time
Three-way match — invoice, Metrc manifest, what your team counted in. Shorts, overpays, and duplicate invoices caught before money goes out.
Optimize every SKU
Credit recovery and consignment, working margin and cash at the SKU level.
Layer 1 — Just paying people
It starts with something that sounds boring: paying your vendors. But in cannabis, paying people is genuinely hard, and almost nobody has a clean handle on it.
So layer one is making that dead simple. With ShelfSpace you click once and a Check 21 payment is cut. It's in your vendor's portal the same minute — they download it and take it to the bank, or we mail it for you. You see it in your dashboard. Your vendor sees it in theirs. And it syncs into QuickBooks as a bill and a bill payment, so your books aren't a month behind reality. A vendor texts "did that payment go out?" — you don't even have to answer. They can already see it in their own portal.
That's the foundation. Before you can do anything smart, you have to actually know what you owe, what you've paid, and what's coming up. Most operators don't — not really. They have a stack of invoices, a bank account, and a feeling. Layer one turns that feeling into a clear picture.
Layer 2 — Receiving and paying accurately, on time
Once paying is easy, the next layer is making sure you're paying for what you actually got, and paying it on time. That sounds simple. It is not.
Cannabis is messy. The average dispensary works with around 30 vendors. Every one of them carries a range of products, most of it with a clock on it — lab results expire, product ages out. Keeping all those payments straight, confirming you received what the invoice says you received, and paying on schedule — that's the second layer, and it's where the money starts showing up.
Confirming what you actually received is its own job, and we built a real piece of the system around it: the delivery dashboard. Every delivery your team accepts gets logged against the Metrc manifest and the vendor's invoice — three sources, one reconciliation. The truck drops 22 of an SKU but the invoice says 24? Flagged before it ever hits AP. The vendor double-billed an item your buyer already entered as a sample? Same. A ton of engineering went into making this part actually work, because it's where most of the money saved at this layer comes from.
On the AP side, this layer is full of quiet savings. The same invoice gets sent twice and paid twice. There's the sheer labor cost of accounts payable — the endless email back-and-forth, cutting the payments, chasing down the weird edge cases. So the vendor emails the invoice straight to your ShelfSpace address and the platform takes it from there: it reads the PDF, pulls out the line items, checks every SKU against Metrc and your purchase order, flags the duplicate, and answers the routine vendor email itself. What reaches your AP person is the exception, not the stack.
Layer 3 — SKU-level optimization
Here's the part I'm actually excited about. Once paying is easy and accurate and on time — only then can you get to the real goal: optimizing the profit of every SKU.
This is where credit recovery and consignment come in. They're two different ways at the same problem.
Credit recovery gets you money back on the product you bought outright. Some of it is straightforward — credits for returned, damaged, and destroyed product, every line backed by a Metrc record. But the bigger piece is working with your vendors, as partners, to split the cost of the deals and promotions all of us run constantly. You ran a vendor's BOGO last month and ate the discount yourself — that's a credit you're owed, and most operators never file it. Same with the stuff that's been sitting too long: mark it down to move it, and the vendor covers part of that hit through a price drop instead of you eating the whole thing or writing it off. It all comes out on one credit memo a month, per vendor. When you start collecting it, you can finally look at inventory velocity — the real driver of your cash flow — and see the true profitability of every SKU. You find out where you've been quietly losing money on margin, and you fix it.
You find out where you've been quietly losing money on margin, and you fix it.
Consignment attacks the same problem from the other side. It frees up the cash that's trapped sitting on your shelf as inventory. Picture $27,000 of one vendor's product on your shelves right now — take that vendor's next drop on consignment instead and that money never leaves your account, while the product sells exactly the same. You set the split, you sell the product, and the vendor gets their share of what it actually rang up for. Discount it and the discount is already shared — there's no credit to chase, because you never bought the product in the first place. Major retailers like Home Depot run on consignment. There's a reason. It optimizes margin and kills waste at the SKU level.
And you don't have to pick a lane per vendor. Every vendor in ShelfSpace is set up for both wholesale and consignment from the day they're created — nothing to propose, nothing to convert, no paperwork between the two businesses. Your team just marks each delivery as one or the other when it comes in the door. The same vendor can sell you their fast movers wholesale and float you their new SKUs on consignment, in the same week, and the platform settles each one the right way.
How it all works in harmony
The reason this has to be a system and not a feature is that real dispensaries are not uniform. You'll have vendors who'll happily float you product on consignment and vendors who want to be paid on delivery — often the same vendor, depending on the SKU. Vendors who need advance notice on every promotion — which the system handles — and vendors who don't care. Vendors whose products consistently hit the margin you need, and vendors who consistently don't and need more attention. You'll have SKUs that fly off the shelf, and SKUs you need gone so you can put something better in that slot.
Underneath all of it, three things have to be true at once: your vendors get steady, dependable communication and their own ShelfSpace portal; your payments go out on time, every time; and you have something you can just ask — ShelfiQ, an assistant that knows your dispensary and can answer questions about any of this in plain English. Think ChatGPT, but for your store specifically. It works the other direction too: when a vendor emails asking where their check is or what a credit memo line means, ShelfiQ answers them from your real numbers and only pulls your team in when it's an actual decision.
One more thing worth saying plainly, because it's usually the next question: there are two tiers. Visibility is free forever — you can see what you're owed and get paid without paying us a cent. Automate — the layer that actually does the work: sending payments, recovering credits, verifying invoices, syncing to QuickBooks — is a flat monthly subscription with a 30-day free trial. For retailers it's priced per location, from $999 down to $749 as you add locations; for vendors it's banded by how many retailers you collect from, starting at $499 a month. ACH is included, and a mailed check is $5. No percentage of the money we find for you.
That's ShelfSpace. A SKU-level profit optimization engine — so specific, so finely tuned to how cannabis dispensaries actually work, that it honestly wouldn't function in any other industry. It's a custom-fit platform for cannabis retail, built by someone who's been operating dispensaries for 10 years and built every piece of this out of personal pain, real mistakes, and opportunities I watched go to waste. It's integrated with Metrc and compatible with every major cannabis POS.
ShelfSpace is the engine that makes sure every slot on your shelf is actually earning — and that you're not the last one to know when one isn't.
So that's the answer to my friend's question. If you want to go deeper on any one layer, the vendor management guide is a good next read, or step back to the big picture of cannabis retail management and where this fits in your stack. And if you just want to see what your own shelf looks like through this lens, that's what the free evaluation is for.