Includes: API (Express/TypeScript), Astro site, Python workers, document generators, FCC compliance tools, Canada CRTC formation, Ansible infrastructure, and deployment scripts. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
87 lines
4.2 KiB
SQL
87 lines
4.2 KiB
SQL
-- 055: Reseller certifications + non-contributing reseller tracking
|
|
--
|
|
-- 2026 FCC Form 499-A Section IV.C.4: to claim revenue on Line 303
|
|
-- (carrier's carrier), the filer must have an annually signed
|
|
-- certification from each reseller customer that:
|
|
-- (a) the reseller is purchasing for resale, at least in part, AND
|
|
-- (b) the reseller (or a downstream entity) contributes to USF.
|
|
--
|
|
-- Sample certification language lives in
|
|
-- scripts/document_gen/templates/reseller_cert_attestation.docx.
|
|
--
|
|
-- Line 511 (Block 5) separately tracks revenues from resellers that
|
|
-- DO NOT contribute (de minimis, intl-only, government). These revenues
|
|
-- are excluded from TRS/NANPA/LNP/ITSP contribution bases.
|
|
|
|
-- ── Reseller certifications (drives Line 303 eligibility) ───────────────
|
|
CREATE TABLE IF NOT EXISTS reseller_certifications (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
|
|
-- The filer (our customer — the upstream wholesale provider)
|
|
filer_telecom_entity_id INTEGER NOT NULL REFERENCES telecom_entities(id)
|
|
ON DELETE CASCADE,
|
|
|
|
-- The reseller (their customer — the downstream carrier buying wholesale)
|
|
reseller_filer_id_499 TEXT NOT NULL, -- USAC Filer ID (6-8 digit)
|
|
reseller_legal_name TEXT NOT NULL,
|
|
reseller_contact_name TEXT,
|
|
reseller_contact_email TEXT,
|
|
reseller_contact_phone TEXT,
|
|
reseller_legal_address JSONB, -- {street,city,state,zip,country}
|
|
|
|
-- The signed attestation
|
|
certification_date DATE NOT NULL,
|
|
certification_text TEXT NOT NULL, -- full signed body
|
|
certification_minio_path TEXT, -- signed PDF in MinIO
|
|
signer_name TEXT,
|
|
signer_title TEXT,
|
|
|
|
-- Renewal tracking — renewal_worker.py emails at T-30/14/7/1
|
|
renewal_due DATE NOT NULL, -- cert_date + 1 year
|
|
status TEXT NOT NULL DEFAULT 'active'
|
|
CHECK (status IN ('active','expired','revoked')),
|
|
|
|
-- First reporting year this certification covers
|
|
reporting_year_first SMALLINT,
|
|
|
|
notes TEXT,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
|
|
-- A filer can have the same reseller with different cert dates
|
|
-- (annual renewals). Uniqueness is (filer, reseller, cert_date).
|
|
UNIQUE (filer_telecom_entity_id, reseller_filer_id_499, certification_date)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_reseller_certs_filer_renewal
|
|
ON reseller_certifications (filer_telecom_entity_id, renewal_due)
|
|
WHERE status = 'active';
|
|
CREATE INDEX IF NOT EXISTS idx_reseller_certs_reseller_id
|
|
ON reseller_certifications (reseller_filer_id_499);
|
|
CREATE INDEX IF NOT EXISTS idx_reseller_certs_renewal_due
|
|
ON reseller_certifications (renewal_due)
|
|
WHERE status = 'active';
|
|
|
|
-- ── Non-contributing reseller customers (Line 511) ──────────────────────
|
|
-- Separate table because these are reported on Line 511 (allowed deduction
|
|
-- from TRS/NANPA/LNP/ITSP bases) rather than supporting Line 303 revenue.
|
|
-- Every row requires the reseller's Filer ID per 2026 instructions.
|
|
CREATE TABLE IF NOT EXISTS non_contributing_reseller_customers (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
filer_telecom_entity_id INTEGER NOT NULL REFERENCES telecom_entities(id)
|
|
ON DELETE CASCADE,
|
|
reseller_filer_id_499 TEXT NOT NULL,
|
|
reseller_legal_name TEXT NOT NULL,
|
|
non_contributing_reason TEXT NOT NULL
|
|
CHECK (non_contributing_reason IN (
|
|
'de_minimis','intl_only','government','other'
|
|
)),
|
|
revenue_cents BIGINT NOT NULL DEFAULT 0,
|
|
reporting_year SMALLINT NOT NULL,
|
|
notes TEXT,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
UNIQUE (filer_telecom_entity_id, reseller_filer_id_499, reporting_year)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_nonctr_reseller_filer_year
|
|
ON non_contributing_reseller_customers (filer_telecom_entity_id, reporting_year);
|