Skip to main content

SPEC 020 — Onboarding and Welcome


1. Feature Purpose

The onboarding flow guides new users from registration through profile completion, PIN setup, and organization creation. It operates on two tracks: a traditional flow (welcome page → profile form → PIN → all-set) and an AI-powered flow (pre-registration prompt → Equanaut analysis → organization build → first-login showcase). The onboarding checklist persists post-onboarding as a guide within organization dashboards, tracking setup completion across org details, members, cap table, securities, documents, billing, and more.

2. Current State (Verified)

2.1 Welcome Page

2.2 Build Profile Page

2.3 Add PIN Page

2.4 All Set Page

2.5 User Dashboard Redirect Logic

2.6 Onboarding Checklist

2.7 Checklist Reducer

2.8 AI-Powered Onboarding (via Equanaut)

2.9 Company Info Collection (Waitlist Phase)


3. Data Model

CompaniesInfo

RegistrationMetadata

UserStates (for checklist tracking)

ChecklistState (Redux)

OnboardingContext (AI flow, in-memory/persistence TBD)


4. API Endpoints

Traditional Onboarding

Company Info (Waitlist)

AI-Powered Onboarding


5. Frontend Components

Module: equa-web/src/modules/welcome/

Shared: equa-web/src/shared/components/onboard-checklist/

Reused from Profile Module

AI Onboarding (from Equanaut Module)

Post-Onboarding Dashboard Empty State (PR #512)

When a new organization has no cap table data, no documents, and no activity, the organization dashboard renders an onboarding-focused empty state instead of a page full of zero-valued metrics. Detection rule: DashboardEmptyState is shown when every rolling metric on the organization dashboard resolves to zero (no shareholders, no issued shares, no pending actions). Any non-zero metric reverts the dashboard to its normal rendering. Relationship to AI onboarding: The Equanaut module already surfaces onboarding prompts at the organization-creation step (via OnboardingFlow). DashboardEmptyState picks up the next empty-state phase after the organization exists but before any data has been populated. Source: equa-web/src/modules/organization-dashboard/components/empty-state/*, dashboard.test.tsx (PR #512 Workstream B, 2026-04-01; closes issue #503).

Redux


6. Business Rules

  1. Welcome redirect: Users with zero organizations are redirected to the welcome page on login. Users with one org go directly to that org. Users with multiple orgs see the org list.
  2. Profile form is skippable: Users can skip profile building and PIN setup to reach the “All Set” page.
  3. PIN is optional: The PIN setup step can be skipped. PIN is used for document signing, not authentication.
  4. Profile image types: Only PNG, JPG, JPEG accepted. Square images recommended.
  5. Address creation: During profile build, addresses are created via separate API calls after the profile update succeeds.
  6. Company info reward: First-time company info submission generates one scratch card reward. Subsequent submissions update the record without generating additional rewards.
  7. Theme setting: Welcome page sets Themes.EQUA on mount, ensuring consistent branding during onboarding.
  8. Checklist tracks completion across 9+ setup tasks: org details, members, cap table, securities, legends, convertibles, plans, roles, billing/subscription.
  9. Checklist is permission-aware: Tasks only appear if the user has the relevant permissions (e.g., cap table tasks require viewCapTable).
  10. AI onboarding is optional: Users can follow the traditional flow without engaging the Equanaut pipeline.
  11. AI onboarding pre-registration: Onboarding context can be created before the user has an account, then linked after signup.
  12. Onboarding context expiry: AI onboarding contexts expire after a set period if not completed.
  13. Showcase corrections: Users can edit AI-extracted data before the organization is finalized.
  14. First login detection: The system checks for a pending AI onboarding context on first login and presents the welcome message and setup results if found.

7. Acceptance Criteria

  • New user with 0 orgs is redirected to the welcome page
  • Welcome page displays three feature panels and “Build Profile” / “Skip” actions
  • Build Profile form pre-populates from existing profile data
  • Profile photo upload works with PNG/JPG/JPEG
  • Submitting profile navigates to PIN setup page
  • PIN validation requires exactly 4 numeric digits with matching confirmation
  • Skipping profile or PIN navigates correctly to the next step
  • “All Set” page offers “View Portfolio” and “Onboard New Organization” actions
  • Onboarding checklist appears on organization dashboard
  • Checklist items reflect actual completion status from API
  • Checklist expand/collapse state persists via Redux
  • Checklist only shows tasks the user has permission to complete
  • Company info form collects all required fields and generates a scratch card reward
  • AI onboarding: user can create context pre-registration with email + description
  • AI onboarding: context links to user after signup
  • AI onboarding: analysis extracts entities, equity, and security types
  • AI onboarding: clarifying questions appear when confidence is low
  • AI onboarding: showcase displays extracted data with inline editing
  • AI onboarding: first login detects pending context and shows welcome message

8. Risks