About CannAgent

Built for cannabis retail. The whole shop, one system.

Built for the cannabis operator’s whole day — every register, the back office, the compliance gates, on one login. For operators who’d rather own the system than rent it.

Origin

Built because nothing else fit.

Cannabis retail is its own animal — cash-first, WAC 314-55 at every step, §280E hanging over the books. For years the tooling didn’t reflect that: Dutchie, then a stitch of Dutchie + bolt-on POS + a third-party payroll vendor + a spreadsheet for vendor management. Each surface broke in a different specific place.

A cannabis-native build starts from WAC 314-55-079 and keeps it at the register, not three tickets deep in a help queue. The back office — payroll, hiring, write-ups, performance reviews — belongs on the same system the bookkeeper already works in, not a separate tool reconciled by hand. Vendor ordering runs off live velocity, not PDFs. Compliance is code at the register, not a poster on the wall.

Green Life Cannabis in Wenatchee and Seattle Cannabis Co in Rainier Valley are our stores. The team building CannAgent runs both floors, and the features that ship are the ones that broke on a real register first. The numbers we publish are measured there — licenses checkable on lcb.wa.gov.

CannAgent is the replacement — register, inventory, compliance, payroll, vendor portal, all on one Postgres database instead of five vendors you reconcile by hand. It’s built ground-up for WAC 314-55, not a general POS with cannabis bolted on. The platform is productized under Sureel Ventures LLC and offered to dispensary operators who’d rather own their system than file another support ticket.

The Team

The team behind CannAgent.

WE

The CannAgent team

Built for cannabis retail

CannAgent is built for cannabis retail from the ground up — WAC 314-55 in the cart, cash-first at the till, §280E in the books. Cannabis rules are the foundation, not a module added later. CannAgent is built ground-up for the floor: register, compliance, payroll, and vendor management on one Postgres database, not five you reconcile by hand.

Why we built it

Three things a cannabis-native build does that a bolted-on POS can’t.

Cash-first by design

Cannabis retail clears in cash, and Dutchie was built around the credit-card workflow it spent years pretending it could deliver. CannAgent is cash-first: manager-PIN gates, till-variance SMS over $5, safe-drops and payouts as first-class workflows, and a closer who can finish a Friday night without texting the owner.

Native WSLCB compliance

WAC 314-55 isn’t a config switch — it’s the rail the workflow runs on. Vertical-ID stops the cart at the register (314-55-079 enforcement, not a poster). Industry discount has a 90-day re-verify in code (314-55-095). Waste log carries second-witness sign-off as a workflow, not a PDF. Dutchie tells you the rules; we run them.

Self-learning ordering

Reorder isn’t a vendor PDF you re-key. CannAgent drafts purchase orders against velocity, vendor reliability, and observed fill-rate — the math runs nightly off your actual transaction history, not a static days-of-supply formula. Override with one click. The vendor portal closes the loop on the other side.

What operators ask first.

How long does migration from Dutchie take?
Two to four weeks for a single location, depending on how clean your Dutchie data is. The cutover itself happens overnight — last close on the old system Sunday evening, first open on CannAgent Monday morning. The ramp before that is data audit, hardware swap, and three days of on-floor support during the first week. Multi-location chains stage cutovers one store at a time; we don’t flip ten registers at once.
Do we lose any historical data when we migrate?
No. We pull transactions, customers, loyalty points, vendor records, and inventory snapshots out of your current system before the cutover and load them into your new Postgres database. You see your last twelve months of revenue, your loyalty members keep their points, and your vendor history carries over. Anything we can’t migrate cleanly we tell you about up front — we don’t silently drop rows.
Is there a per-staff or per-transaction fee?
No. Pricing is per location, billed monthly. Add a register, add a budtender, add a manager — same line on the bill. Cannabis cash-margin is tight enough without a vendor metering you on every staff add. Card-processing fees, if you turn them on, pass through at processor cost; we don’t take a per-swipe markup.
Who owns our customer and transaction data?
You do. Always. Each location runs on its own Postgres database, exportable any time in standard SQL. No vendor-database lock-in. On the Enterprise tier, source-code escrow is available so the platform itself keeps running on your terms if anything ever happens to us. Your customer list is not aggregated, not resold, and not used to train any model — it sits in your database.
What’s the AI model and is it making decisions for us?
Claude (Anthropic) is the primary model behind the assistive features — write-up drafting, scope generation, the reorder-queue explainer. The AI proposes, the manager gates the action — see /admin/manager-writeups for AI-suggested proportionate-response options against WA labor + WSLCB rules, then a human acknowledges and ships. We don’t auto-fire anyone, auto-purchase from a vendor, or auto-run payroll. The model is assistive, not autonomous.
What if we hate it after 90 days?
You keep your data exports and walk — and since setup and onboarding are free, there’s no fee sunk on the way in. We’d rather not work with someone unhappy. The full cross-tier guarantees — WSLCB compliance built in, no migration fees, named human support, free training, your data stays yours — live at /pricing.
Ready when you are

See if it fits your shop.

30-minute demo. We walk the same three surfaces a working day touches: a register transaction with a vertical-ID gate, a manager write-up against the WA labor rubric, and a quarterly Form 941 from the back office.

Request a demo
Request a demo
30 min · demo login emailed in ~60 sec · no call required