# OPS-039 — A revocation on any channel must reach the SMS suppression list

> Revocations captured by an IVR key-press, a live agent, a designated website or number, an email or a voicemail must all be written into the same suppression list as a texted STOP.

- **Rule ID:** OPS-039
- **Layer:** Operational (`OPERATIONAL`)
- **Checks:** `suppression list ingestion across channels`
- **Severity:** BLOCKING — Breaking this rule gets the submission rejected outright.
- **When it bites:** Falls due after approval, once you are live and sending
- **How it is detected:** Not knowable before submission — reported with its deadline
- **Fix type:** Wait on an external system or a required interval
- **Required by:** FCC, CTIA
- **Applies:** Applies to every 10DLC registration.
- **Canonical URL:** https://ekas.io/rules/10dlc/operational/ops-039/

## Why this rule exists

The consumer does not know your systems are separate. They tell the agent on the phone, or reply to the marketing email, and consider it done — and the FCC agrees with them: a revocation received at any address or number the brand holds out is presumed effective. What actually happens is that the CRM records a preference nobody syncs, the shared inbox is read by a team with no access to the messaging platform, and the texts continue for weeks.

## How to fix it

Give every intake channel one write path into the suppression list — an API call, a shared field the messaging platform reads, or a queue somebody works daily — and record the channel on each record. Done when a revocation left on voicemail suppresses the number without anyone re-keying it.

## Example of a compliant value

```text
Agent marks "SMS opt-out" in the CRM → nightly job (or webhook) writes the number to the messaging platform suppression list with channel=phone.
```

## Common mistakes

- A one-way sync from the messaging platform into the CRM is the common build and it is backwards — the revocations that need moving are the ones that arrive outside the messaging platform.

## Check this yourself

**Can you name every place a customer could say stop — agents, shop staff, the support inbox, social messages, voicemail — and show that each one reaches the suppression list?**

1. List the intake channels, then trace one revocation through each to the list.
2. Check the direction of any existing CRM sync: the common build is one-way out of the messaging platform, which is backwards.
3. Test the hardest one — leave a revocation on voicemail and see whether the number is suppressed without anyone re-keying it.

*What wrong looks like:* The CRM records a preference nobody syncs, the shared inbox is read by a team with no access to the messaging platform, and the texts continue for weeks. The consumer considered it done, and so does the FCC.

## Notes

Absorbs OPS-040 and OPS-041, which name the designated-channel and email or voicemail cases of the same routing duty. Nothing here is visible at registration. The user has to list every place a customer could plausibly say stop — agents, shop staff, the support inbox, social messages — and show that each one reaches the list. OPS-038 is the registration-side twin: the published instructions must not name one exclusive method.
