← All use casesStores currently on Dutchie

Migrating off Dutchie. The 90-day window the rep won’t mention.

Dutchie was a coupon site that bought a register. CannAgent was a register that hired the owner. Here’s what changes when you switch.

The pains your operator group already knows.

01

Support response time is measured in business days, not minutes.

Your register goes down at 7pm Friday. You file a ticket. The auto-reply says 24-hour SLA. By Monday morning the variance from Saturday is already in the till count and nobody’s sure what got rung manually.

02

Compliance is documented, not enforced.

Dutchie’s help-doc says WAC 314-55-095 has a 90-day industry-discount re-verify. The register doesn’t enforce it. Your manager has a sticky note on the screen that says ‘ask if it’s been 90 days.’ That’s the system.

03

The contract you signed locks pricing for years and grows fees per add-on.

Loyalty is an add-on. Customer SMS is an add-on. Reorder suggestions are an add-on. The price you saw in year-one is not the price you’re paying in year-three, and the renewal conversation starts with ‘we’ve invested heavily in our cannabis vertical.’

04

There’s no native back office. Payroll, write-ups, hiring — find another tool.

Form 941 lives in Gusto. Write-ups live in Lattice or a Google Doc. Hiring lives in Workable. None of them know what WAC 314-55-035 means, and your bookkeeper logs into four different platforms to close the month.

05

It’s a generic POS shoehorned into a vertical that doesn’t fit it.

The cart flow assumes any retail. The discount logic doesn’t know what an industry buyer is. The waste log is a free-text note. When you ask the rep about cannabis quarantine routing per WAC 314-55-079(7), the ticket goes to product and you get a response in three weeks.

What the modules actually do for you.

Cutover playbook + 90-day satisfaction window.

Two to four weeks for a single location. Cutover is overnight — last close on Sunday on Dutchie, first open on CannAgent on Monday. Three days of on-floor support during the first week. If you hate it after 90 days, we refund the setup fee and you keep your data exports. We’d rather not work with someone unhappy.

Compliance gated at the register, not on a sticky note.

Vertical-ID stops the cart. WAC 314-55-095 industry discount has a 90-day re-verify enforced in code. Waste log triple-witness (314-55-079) is a workflow — three signatures or the disposal can’t close. Vendor-license lapses (314-55-035) auto-pause receiving. Trade-sample 30-units/quarter cap (314-55-096) blocks at 31.

Full back office on the same platform as the register.

Form 941, W-2 batch, W-3, 940 FUTA, WA L&I + PFML + SUI quarterly trio, manager write-ups with AI-drafted proportionate-response options, 5-dimension performance reviews, hiring pipeline with FCRA + cannabis-overlay background checks. Your bookkeeper logs into one platform, not four.

Self-learning ordering, not manual POs against vendor PDFs.

POs auto-draft against velocity, vendor reliability, and fill-rate. Your purchaser approves with one click, edits, or kills. The Menu Builder ranks top 365-day sellers, capacity-checks against your case zones, and flags phase-out candidates so dead stock leaves the shelf.

Monthly per-location pricing. No multi-year. Your data, exportable any time.

Per-location Postgres. Yours. Exportable in standard SQL any day you want. No add-ons hiding loyalty or SMS or reorder behind another bill. On the Enterprise tier, source-code escrow is available so the platform itself keeps running on your terms.

What ships in the codebase today.

01 · in production

Two-to-four-week cutover for a single location, overnight switch, three days of on-floor support

02 · in production

10 row-by-row defensible differences vs Dutchie — every one ships in the codebase today

03 · in production

90-day satisfaction window — refund the setup fee, keep your data exports

The rows that matter for this kind of shop.

Topic
Origin
CannAgent
Built from day one as a dispensary back-office and register
Dutchie
Started as a menu-aggregator marketplace; POS bolted on later
Topic
Compliance posture
CannAgent
WAC-coded into the workflow: 314-55-079 waste log, 314-55-095 industry discount re-verify, 314-55-035 vendor compliance, 314-55-082 health warnings, 314-55-155 advertising
Dutchie
“Compliance-ready” — rules documented, enforcement on the operator
Topic
Self-service for managers
CannAgent
150+ in-app help panels — a new manager solves their question instead of texting the owner
Dutchie
Support ticket queue
Topic
Outage posture
CannAgent
Per-location Postgres + edge compute. Status page lives at the same URL as your dashboard
Dutchie
Multi-hour outages reported across operator forums
Topic
Contract
CannAgent
Monthly. Per location. No multi-year.
Dutchie
Multi-year, locked-in pricing common
Topic
Data ownership
CannAgent
Your Postgres, exportable any time
Dutchie
Their database

What this kind of shop usually asks 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.
Can we keep our existing METRC integration?
In Washington state, yes — WSLCB uses CCRS (Cannabis Central Reporting System), and CannAgent reports to CCRS the same way your current POS does. METRC continuity for cross-state operators (CO, MI, OK, MA, MO, NV, OR, NJ, NM, IL, etc.) is configured per state during onboarding. Some states are first-class today, others ship as a custom integration on the Enterprise tier. We tell you which bucket your state lands in before you sign anything.
What if we hate it after 90 days?
We refund the setup fee and you keep your data exports. 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.
What happens if your servers go down — does our register?
Each location runs on its own Postgres database hosted on Neon, with the application served from Vercel’s edge. The register has an offline cache for the last-known cart state, so an in-flight transaction completes even if the connection blips. A full regional outage on either provider would degrade the back office (analytics, reorder queue) before the register; we’ve held that as the design boundary since day one because if the register goes down at our stores, ours goes down too.

We replaced Dutchie at both of our stores.

The cutover playbook lives in the demo. 30 minutes, three real surfaces, a fixed-scope quote at the end.

Request a demo
Schedule a demo
30 minutes · register, write-up, Form 941