Split discontinuance CTA into two options based on revenue

When user selects "cancel registration" in the compliance checker:
- Option 1: "499-A Discontinuance (incl. zero-revenue filing)" $299
  For carriers with no revenue — includes final zero-revenue 499-A
  + deactivation letter + CORES update
- Option 2: "499-A Filing + Discontinuance" $798 ($499+$299)
  For carriers with actual revenue — full 499-A filed separately
  + deactivation process

Standalone discontinuance ($299) is for carriers already current
on filings who just want to close out.

Handler detects whether zero-revenue filing is included vs
handled by a separate full 499-A order.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
justin 2026-05-03 03:39:52 -05:00
parent 0c5f9d12c1
commit 5e74c1dcb9
3 changed files with 14 additions and 7 deletions

View file

@ -40,6 +40,10 @@ class Form499ADiscontinuanceHandler(BaseComplianceHandler):
discontinuance_reason = intake_data.get("discontinuance_reason", "Ceased providing telecommunications services")
last_service_date = intake_data.get("last_service_date", "")
# If ordered as standalone discontinuance ($299), includes a zero-revenue
# final filing. If ordered with a full 499-A ($499+$299), the 499-A handler
# files the revenue report separately — we just handle the deactivation.
includes_zero_filing = not intake_data.get("has_separate_499a", False)
# Per FCC 499-A Instructions: discontinuance requires TWO steps:
# 1. File the final 499-A (may have actual revenue from the portion
@ -55,13 +59,12 @@ class Form499ADiscontinuanceHandler(BaseComplianceHandler):
f"Filer ID: {filer_id}\n"
f"Reason: {discontinuance_reason}\n"
f"Last service date: {last_service_date or 'Not specified'}\n\n"
f"STEP 1 — File Final 499-A:\n"
f"STEP 1 — File Final 499-A {'(ZERO REVENUE — included in this order)' if includes_zero_filing else '(filed separately via full 499-A order)'}:\n"
f" Log in to USAC E-File (https://forms.universalservice.org/)\n"
f" File the final 499-A reporting actual revenue for the period\n"
f" the company was in service (may be $0 if no revenue, or\n"
f" actual revenue for partial year). On Line 603, check all\n"
f" exemption boxes (TRS, LNP, NANPA) and write 'Not in business\n"
f" as of {last_service_date or 'filing date'}' on the explanation line.\n\n"
f" {'File a zero-revenue 499-A (all revenue lines $0).' if includes_zero_filing else 'The full 499-A with actual revenue is being filed under a separate order.'}\n"
f" On Line 603, check all exemption boxes (TRS, LNP, NANPA)\n"
f" and write 'Not in business as of {last_service_date or 'filing date'}'\n"
f" on the explanation line.\n\n"
f"STEP 2 — Submit USAC Deactivation Letter:\n"
f" Send letter to USAC (Form499@usac.org) with:\n"
f" - Company name: {legal_name}\n"

View file

@ -146,6 +146,7 @@ var CHECK_TO_SLUG = {
"499a":"fcc-499a", form_499a:"fcc-499a",
form_499a_zero:"fcc-499a-zero", "499a-zero":"fcc-499a-zero",
form_499a_disc:"fcc-499a-discontinuance", "499a-disc":"fcc-499a-discontinuance",
form_499a_disc_rev:"fcc-499a-discontinuance", "499a-disc-rev":"fcc-499a-discontinuance",
"499q":"fcc-499a-499q", form_499q:"fcc-499a-499q",
rmd:"rmd-filing", rmd_filing:"rmd-filing",
stir:"stir-shaken", stir_shaken:"stir-shaken",

View file

@ -781,7 +781,10 @@ import Base from "../../layouts/Base.astro";
break;
case "form_499a":
if (check._499aVariant === "discontinuance") {
services.push({ id: "form_499a_disc", name: "Form 499-A Discontinuance", desc: "close filer account", price: 299 });
// Closing out — offer standalone discontinuance ($299 includes zero-revenue final filing)
// OR full 499-A + discontinuance if they had revenue
services.push({ id: "form_499a_disc", name: "499-A Discontinuance (incl. zero-revenue filing)", desc: "close filer account — no revenue", price: 299 });
services.push({ id: "form_499a_disc_rev", name: "499-A Filing + Discontinuance", desc: "close filer account — had revenue", price: 798, altOf: "form_499a_disc" });
} else if (check._499aVariant === "zero") {
services.push({ id: "form_499a_zero", name: "Form 499-A (Zero Revenue)", desc: "no telecom revenue", price: 179 });
} else {