← All guides

Compliance playbook

Cannabis recall — the first four hours

A mold-positive lab result from a vendor you carry. A WSLCB Public Health and Safety Advisory in the regulator’s morning bulletin. A LeafLink notification that a producer is voluntarily pulling a lot. Three different paths into the same place — you have a recall on your hands, and the next four hours decide whether it’s a controlled response or a regulatory escalation. Here’s the operator-side playbook.

By CannAgent7 min read

How recalls actually start (three paths)

Most operators expect recalls to come from the WSLCB / OLCC / DCC. They mostly don’t. Three distinct paths, each with a different urgency and notification chain:

  • Vendor-initiated voluntary recall. Producer’s post-harvest re-test fails for mold / pesticide / heavy metals. They notify their LeafLink / Cultivera / Growflow distribution and the buyers downstream. You see this as a wholesale-portal notification + an email from the producer’s rep. Usually arrives 24-72 hours after the producer’s lab caught it. Your job: identify, isolate, contact buyers.
  • Regulator-issued Public Health and Safety Advisory. WSLCB / OLCC / DCC publishes the advisory; producer is named, lot numbers cited. Bulletin lands in your inbox if you’re subscribed (you should be). Highest urgency — the regulator just told the public. Customer questions start within hours.
  • Customer-initiated complaint that escalates. A customer reports illness or an off-product (visible mold, foreign material). One report rarely triggers a recall, but two reports for the same lot in the same week and the regulator gets involved fast. Document the customer interaction; do NOT downplay or dismiss; loop in the producer the same day.

Hour 0-1: identify + isolate

  1. Verify the lot numbers. Recall notices cite lot numbers; producer notice + WSLCB advisory should match. If they don’t, call the producer’s compliance contact and reconcile before you act. Acting on the wrong lot number means you isolate clean inventory + miss the recalled lot.
  2. Pull the SKU from the menu immediately. Take the affected SKU off the customer-facing menu (in-store screens, online ordering, iHeartJane / Dutchie / Treez integration). Customers can’t order what they can’t see. CannAgent has a one-click SKU-suppression in the menu builder; whichever POS you run, find the equivalent and use it BEFORE you do anything else.
  3. Block the SKU at the register. Suppression in the menu doesn’t guarantee suppression at the till — a budtender could still ring an existing in-cart unit. Add a hard block in the POS so any attempt to ring the recalled SKU surfaces an alert + requires a manager-PIN override. The override should never be granted for a recalled SKU; the alert is there to keep an honest budtender from accidental sale.
  4. Quarantine the physical inventory. Pull every unit from the floor, the back room, the safe. Move to a labeled bin marked RECALL — DO NOT SELL with the lot number, the recall date, the source notice, and the receiving manager’s initials. Document the count.

Hour 1-2: identify the customers who bought it

This is where most operators discover their POS data has gaps. The producer notice gives you the lot number; you need to find every customer who walked out with a unit from that lot. Three queries your POS should answer in under 5 minutes:

  • Every transaction containing the recalled SKU + lot. In WA / OR / MI / CA, every retail sale links to a CCRS / METRC manifest carrying the lot ID. Your POS should query: SELECT customer_id, sale_timestamp, quantity FROM sales WHERE lot_id = <recalled-lot>.
  • Every loyalty member among those buyers. Loyalty membership = phone + email on file. Direct-contactable.
  • Every walk-in cash buyer (no loyalty record). Highest-anxiety cohort because you can’t reach them. The number is what you tell the regulator: ‘X transactions of the recalled lot, Y of which we have direct contact for, Z of which we can’t reach.’ Z drives the in-store signage decision.

Hour 2-4: customer notification

The notification has a regulatory floor and a customer-experience ceiling. Both matter. The floor:

  • Per WAC 314-55-225 (WA) — ‘reasonable efforts’ to contact customers. Phone call > SMS > email. A loyalty member with a phone number on file gets a phone call OR a text. Email-only is the bare minimum.
  • Per OAR 845-025-2705 (OR) — ‘commercially reasonable’ for direct customer contact. Same effective floor; document the attempt regardless of whether the customer picked up.
  • Per DCC §15428 (CA) — direct notification to known purchasers. California is more prescriptive: cite the lot, the issue, the return / refund process.

The customer-experience ceiling — what separates a recall that builds trust from one that erodes it:

  • Phone call beats SMS beats email. A live human voice on a recall call says ‘we take this seriously.’ Voicemail is fine; just leave a callback number.
  • Lead with the action you’re taking, not the danger. Right: ‘We pulled this lot today; here’s how to return it.’ Wrong: ‘You bought a contaminated product.’ The first reads as professional handling; the second reads as panic.
  • Refund without paperwork. Recall returns get a no-receipt full refund + the customer gets to keep their loyalty points for the original purchase. The cost of the refund is rounding-error against the cost of a customer telling 5 people you blew them off.
  • In-store signage for the unreachable cohort. ‘If you bought [product name, lot range, date range] from us, please bring it back for a full refund. Public Health and Safety Advisory issued [date]. We’re here to make this right.’ Tape it to the front door + the register area.

Hour 4-24: regulatory notification + paper trail

  • File the recall log with the regulator. WSLCB and OLCC both require a recall report within 24 hours: lot number, your inventory count, the number of customers reached, the customers you couldn’t reach, and the disposal plan for the quarantined units. CannAgent generates this from the audit log; whichever POS you run, find the equivalent.
  • Email the producer with your reconciliation. ‘We received N units of lot X. Sold M units. N-M still in quarantine. Customer-contact attempt rate: P percent.’ Producer needs this for their own filing.
  • Document every step. Recall response is the single most-audited operator workflow. Every SOP version, every staff training note, every customer-contact attempt log row matters when the WSLCB asks ‘walk me through your last recall.’
  • Disposal per state rules. WA: WSLCB-witnessed destruction OR documented disposal under 314-55-097. OR: OLCC-tracked manifest to a licensed disposal facility. CA: DCC-approved disposal with chain-of-custody. Recalled product is NEVER returned to the producer for refund — it’s destroyed.

What to NOT do

  • Don’t blame the producer publicly. Let the regulator publish names. Your customers don’t care whose fault it is; they care that you handled it.
  • Don’t silently pull the SKU without notifying customers. That’s ‘reasonable efforts’ failure; cite-able.
  • Don’t mark the customer’s loyalty record ‘contaminated’ or any variant. PII discipline — the recall is about the product, not the customer.
  • Don’t let staff speculate about health effects. ‘Mold can cause respiratory’ / ‘pesticide exposure’ — even if true, it’s a medical claim that crosses into WAC 314-55-155 territory. Stick to: ‘The lab caught it after we sold; we’re pulling it; here’s the refund process.’
  • Don’t resell the quarantined inventory in a clearance / discount channel. Federal felony in some interpretations; state license-revocation in all interpretations. The cost of the destruction is the cost of operating.

Takeaways

  • Recalls arrive three ways — vendor-initiated / regulator-issued / customer-complaint-escalated. Each starts a 24-hour clock from the moment YOU receive the notice (not when it’s published)
  • Hour 0-1: verify lot numbers, pull from menu, block at register, quarantine physical inventory with a labeled bin
  • Hour 1-2: query the POS for transaction count + customer list + loyalty-member subset + walk-in-cash subset (the third drives in-store signage)
  • Hour 2-4: phone > SMS > email for direct contact; lead with action not danger; full refund no-receipt; in-store signage for the unreachable
  • Hour 4-24: file the recall log with the regulator + reconcile with the producer + document every step + destroy per state rules; never resell quarantined product

Related guides

Ready to talk through your migration?

30-minute demo. We end by quoting the cutover from your current setup — fixed scope, no hourly games.