feat(npi): wire 6 healthcare services into catalog, intake, items, handlers, portal

This commit is contained in:
justin 2026-06-05 01:25:05 -05:00
parent 8748c0a141
commit e67db156e8
6 changed files with 345 additions and 0 deletions

View file

@ -464,6 +464,48 @@ const COMPLIANCE_SERVICES: Record<
erpnext_item: "ENTITY-UPGRADE-BUNDLE",
discountable: true,
},
// ── Healthcare / NPI compliance ──────────────────────────────────────
// CMS/NPPES provider compliance. Handlers are review-staged (a human
// files in PECOS/NPPES) — same safety default as the FCC auto-filing
// toggle. HIPAA is intentionally out of scope (separate specialty).
// Flagship = npi-revalidation (CMS 5-yr Medicare revalidation, dateable
// overdue signal from the free CMS revalidation list).
"npi-revalidation": {
name: "Medicare PECOS Revalidation Filing",
price_cents: 39900,
erpnext_item: "NPI-REVALIDATION",
discountable: true,
},
"npi-reactivation": {
name: "NPI Reactivation",
price_cents: 24900,
erpnext_item: "NPI-REACTIVATION",
discountable: true,
},
"nppes-update": {
name: "NPPES Data Update / Attestation",
price_cents: 14900,
erpnext_item: "NPPES-UPDATE",
discountable: true,
},
"medicare-enrollment": {
name: "Medicare Enrollment (PECOS)",
price_cents: 49900,
erpnext_item: "MEDICARE-ENROLLMENT",
discountable: true,
},
"oig-sam-screening": {
name: "OIG/SAM Exclusion Screening (Annual)",
price_cents: 9900,
erpnext_item: "OIG-SAM-SCREENING",
discountable: false,
},
"provider-compliance-bundle": {
name: "Provider Compliance Bundle (Annual)",
price_cents: 69900,
erpnext_item: "PROVIDER-COMPLIANCE-BUNDLE",
discountable: true,
},
};
// ── Intake validation map ─────────────────────────────────────────────
@ -643,6 +685,14 @@ const REQUIRED_FIELDS: Record<string, FieldSpec> = {
// ── Hazmat / Emissions ───────────────────────────────────────────────
"hazmat-phmsa": { required: ["dot_number", "legal_name", "email", "hazmat_classes"], soft: ["bulk_packaging", "small_business", "ein"] },
"state-emissions": { required: ["dot_number", "legal_name", "base_state", "email"], soft: ["engine_model_years", "power_units"] },
// ── Healthcare / NPI ─────────────────────────────────────────────────
"npi-revalidation": { required: ["npi", "provider_name", "email"], soft: ["pecos_enrollment_id", "specialty", "practice_state"] },
"npi-reactivation": { required: ["npi", "provider_name", "email"], soft: ["deactivation_reason", "specialty"] },
"nppes-update": { required: ["npi", "provider_name", "email"], soft: ["fields_to_update", "practice_state"] },
"medicare-enrollment": { required: ["npi", "provider_name", "email", "practice_state"], soft: ["pecos_enrollment_id", "specialty", "entity_type"] },
"oig-sam-screening": { required: ["npi", "provider_name", "email"], soft: ["organization_name", "staff_count"] },
"provider-compliance-bundle": { required: ["npi", "provider_name", "email"], soft: ["pecos_enrollment_id", "specialty", "practice_state"] },
};
// ── Bundle composition + incompatibility (single source of truth) ──────────