corporate renewal: make annual-report/RA/reinstatement orderable

The catalog already priced annual-report-filing ($149), registered-agent ($99),
entity-reinstatement ($299) but they had no intake spec, manifest entry, or
order page, so the corporation-check tool's overdue result dead-ended at a
contact form. Now a real self-serve funnel on the proven compliance-order
pipeline:
- REQUIRED_FIELDS intake specs (legal_name/address_state/email via the entity step)
- INTAKE_MANIFEST + CORPORATE_SLUGS entries (entity->review->payment)
- /order/annual-report-filing, /order/registered-agent, /order/entity-reinstatement
API tsc clean; site builds all 3 pages. E2E on dev next.
This commit is contained in:
justin 2026-07-01 09:23:09 -05:00
parent d40458057b
commit 3e133d8c46
5 changed files with 57 additions and 0 deletions

View file

@ -201,6 +201,13 @@ const REQUIRED_FIELDS: Record<string, FieldSpec> = {
"carrier-closeout": { required: ["dot_number", "legal_name", "email", "signer_name", "signer_title"], soft: ["mc_number"] },
"entity-dissolution": { required: ["legal_name", "address_state", "email", "signer_name"], soft: ["entity_type"] },
// ── Corporate Renewal / Good-Standing (collected via the `entity` step) ──
// Sold off the /tools/corporation-check overdue result. State-agnostic:
// annual-report/franchise filing, registered-agent setup, reinstatement.
"annual-report-filing": { required: ["legal_name", "address_state", "email"], soft: ["entity_number", "entity_type", "address_street", "address_city", "address_zip", "ein"] },
"registered-agent": { required: ["legal_name", "address_state", "email"], soft: ["entity_number", "entity_type"] },
"entity-reinstatement": { required: ["legal_name", "address_state", "email"], soft: ["entity_number", "entity_type", "address_street", "address_city", "address_zip", "ein"] },
// ── State-Level Trucking Compliance ──────────────────────────────────
// Collected via the state-trucking intake step (StateTruckingIntakeStep.astro).
"irp-registration": { required: ["dot_number", "legal_name", "base_state", "email", "power_units", "operating_states"], soft: ["mc_number", "fuel_type", "gross_weight_bracket"] },