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.
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
- 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.
- 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.
- 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.
- 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
Frequently asked
- When does the recall clock actually start, and how long do I have to isolate the inventory?
- The clock starts when YOU receive the notice, not when the regulator publishes it, so document the timestamp. WAC 314-55-225 (WA), OAR 845-025-2705 (OR), and DCC section 15428 (CA) each give the licensee 24 hours to remove and quarantine. What separates a controlled response from a regulatory escalation is how fast you isolate the inventory and how completely you reach the customers who bought the recalled lot.
- What do I do in the first hour once I confirm a recall on a lot I carry?
- First verify the lot numbers against both the producer notice and the regulator advisory, and reconcile with the producer's compliance contact if they don't match. Pull the affected SKU from the customer-facing menu immediately, then add a hard block at the register so any attempt to ring it surfaces an alert and requires a manager-PIN override that is never granted for a recalled SKU. Then quarantine every physical unit from the floor, back room, and safe into a labeled bin marked RECALL - DO NOT SELL with the lot number, recall date, source notice, and receiving manager's initials, and document the count.
- How should I handle contacting and refunding customers who bought the recalled lot?
- For direct contact the order is phone over SMS over email, and a loyalty member with a phone number on file should get a call or text since email-only is the bare minimum; document the attempt regardless of whether they pick up. Lead with the action you're taking rather than the danger - say you pulled the lot and here's how to return it. Give recall returns a no-receipt full refund and let the customer keep their loyalty points, and post in-store signage for the unreachable walk-in-cash cohort naming the product, lot range, and date range.
Related guides
Compliance playbook
WSLCB unannounced inspection — the first 60 seconds
5 min read
Compliance ops playbook
State traceability reconciliation — the daily, weekly, monthly discipline
7 min read
Compliance + receiving playbook
Reading a cannabis Certificate of Analysis — what to verify before product hits the floor
6 min read
Ready to talk through your migration?
30-minute demo. We end by quoting the cutover from your current setup — fixed scope, no hourly games.