new-site/docs/carbonio-reval-autoreply-setup.md
justin a78d60a127 hc: auto-reply for 'already revalidated' replies + permanent suppression
A lead replied with proof their Medicare revalidation was already approved (CMS
data-lag: the public Revalidation Due Date List still showed them overdue weeks
after approval). Two of these arrived same-day, so:

- Carbonio auto-reply (deployed on co.carrierone.com): created mailbox
  hc-replies@ on the info@ distribution list with a Sieve that auto-acknowledges
  'my revalidation is already complete' replies (tag + mark read + file into a
  'Reval Completed (auto-acked)' folder + on-brand reply explaining the CMS lag).
  CRITICAL: info@ is the shared reply-to for ALL campaigns (healthcare, trucking,
  telecom), so every rule is anchored to Medicare/revalidation context -- a
  trucking 'MCS-150 done, this is bogus' or telecom 'RMD done' reply does NOT
  trigger it (tested + passing). A buyer guard ('please file / how much') also
  suppresses the auto-reply so a human handles the sale.
  Carbonio 25.x Sieve quirks documented (vacation/imap4flags/body :text all
  unsupported; use reply/flag/tag/body :contains).

- Permanent suppression: new data/hc_suppress.txt do-not-contact list the warmup
  honors at import AND --prune removes from the live lists. Seeded with the two
  completed providers (Pangea Lab, Yakima Valley FWC); both also blocklisted in
  listmonk_hc and removed from lists 3 + 4.
2026-06-08 10:37:49 -05:00

114 lines
5.1 KiB
Markdown

# Carbonio auto-reply: "my Medicare revalidation is already complete" replies
Recurring pattern (Pangea Lab/Sue Kincer; Yakima Valley Farm Workers/Sheila
Robertson, both same day). Root cause is the CMS data-lag window: the public CMS
Medicare Revalidation Due Date List still shows a provider as due for several
weeks after they have actually been approved, so a recently completed
revalidation can still look overdue in the published data we target from. Our
outreach matched the official list; the list was just behind reality.
## How it's deployed (Carbonio / co.carrierone.com)
`info@performancewest.net` is a Carbonio **distribution list**, and EVERY PW
campaign (healthcare, trucking, telecom) uses `info@` as its reply-to. So the
auto-reply must (a) live on a mailbox that receives `info@` mail and (b) be
anchored to Medicare/revalidation context so it never fires on a trucking
(MCS-150/UCR) or telecom (FCC/RMD) reply.
Setup that is LIVE:
- Created mailbox `hc-replies@performancewest.net` and added it as a second
member of the `info@` distribution list (justin@ stays on it too).
- Installed the Sieve below on hc-replies@ via
`zmprov ma hc-replies@performancewest.net zimbraMailSieveScript "<script>"`
then `zmprov fc account hc-replies@performancewest.net`.
- Created folder "Reval Completed (auto-acked)" on hc-replies@.
Carbonio Sieve gotchas learned the hard way (this version = 25.3.1 Zextras):
- `vacation` is NOT supported as an incoming-filter action -> use `reply`.
- `imap4flags` / `addflag` are NOT supported -> use `flag "read"`.
- `body :text :contains` fails ("Subnode null") -> use `body :contains`.
- Tagging uses the `tag` action, not addflag.
## The working Sieve (as deployed)
require ["fileinto", "reply", "tag", "flag", "body"];
# 1) Genuine healthcare service request -> do nothing, a human handles the sale.
if allof (
anyof (
body :contains "revalidation",
body :contains "medicare",
body :contains "pecos",
body :contains "npi"
),
anyof (
body :contains "please file",
body :contains "sign me up",
body :contains "get started",
body :contains "how much",
body :contains "interested"
)
) {
stop;
}
# 2) Healthcare reval "already complete / objection" -> auto-acknowledge, tag,
# mark read, file into the auto-acked folder. The Medicare/reval ANCHOR (first
# anyof) is mandatory so trucking/telecom replies on the shared info@ list
# (MCS-150, UCR, FCC, RMD, etc.) never trigger this.
if allof (
anyof (
body :contains "revalidation",
header :contains "subject" "revalidation",
body :contains "medicare",
body :contains "pecos"
),
anyof (
body :contains "was completed",
body :contains "already revalidated",
body :contains "was approved",
body :contains "already completed",
body :contains "already done",
body :contains "this is bogus",
body :contains "is bogus",
body :contains "completed on"
)
) {
tag "reval-already-complete";
flag "read";
reply "Hi,
Thank you for letting us know, and congratulations on completing your revalidation. We have noted it and removed your practice from any further revalidation reminders.
For context: our notice was based on the CMS public Medicare Revalidation Due Date List, which CMS refreshes periodically. There is often a lag of several weeks between when a providers revalidation is approved and when CMS updates that public list, so a recently completed revalidation can still show as due in the published data. That appears to be exactly what happened here.
No action is needed on your part. If we can ever help with NPI/NPPES updates, enrollment, reactivation, or OIG/SAM exclusion screening, we are glad to assist.
Thank you again for the heads-up, and apologies for any confusion.
Best regards,
Performance West Compliance
(888) 411-0383 - info@performancewest.net
Performance West is an independent compliance firm, not affiliated with CMS or Medicare.";
fileinto "Reval Completed (auto-acked)";
stop;
}
## Tested
- Healthcare "Medicare revalidation was completed / this is bogus" -> auto-reply
sent, tagged, marked read, filed into Reval Completed (auto-acked). PASS.
- Trucking "MCS-150 already completed, this is bogus" -> NO reply, stays in
Inbox for a human. PASS.
- Telecom "RMD filing completed, this is bogus" -> NO reply, stays in Inbox.
PASS.
- Healthcare "please file it for me, how much" -> NO auto-reply (buyer guard),
stays in Inbox. PASS.
## Suppression (so the warmup never re-mails a completed provider)
Append the provider's email to data/hc_suppress.txt, then run:
python3 scripts/build_healthcare_campaigns_cron.py --prune-only
The cron skips suppressed emails at import, and --prune removes them from the
warmup lists. Done for:
- Pangea Laboratory LLC, NPI 1851915888 (reval approved 05/01/2026) -- skincer@medicalpracticepartner.com
- Yakima Valley Farm Workers Clinic, NPI 1710422407 (approved 04/29/2026) -- sheilar@yvfwc.org
Both also blocklisted in listmonk_hc and removed from lists 3 + 4.