User Flow Mickael Rutembya · Flow Atlas

Owner Setup

/owner/setup/

Initial owner configuration: create superuser, set active pricing profile, configure coefficients, destinations, and security parameters.

Flow intent

What the user is trying to do

« Set up the sovereign workspace for the first time: create credentials, activate a pricing profile, and configure billing parameters. »

Entry points

ElementDestination
Direct navigation /owner/setup//owner/setup/
Owner login first-time access/owner/setup/

Flow

Adjacent routes — click a node to open it.userflow
flowchart LR A["First-time owner"] --> B["Navigate to /owner/setup/"] B --> C["Create superuser credentials"] C --> D["Set active pricing profile"] D --> E["Configure coefficients"] E --> F["Set destinations"] F --> G["Configure security parameters"] G --> H["Setup complete"] H --> I["Redirect to /owner/"] I --> J["Owner dashboard accessible"] click B "http://localhost:8000/owner/setup/" "Open Setup" click I "http://localhost:8000/owner/" "Open Dashboard"

Screens

ScreenKey contentCTA
Setup formSuperuser creation, profile selection, coefficient grid, destinationsSave configuration
Owner dashboardActive profile, stats, admin links, security controlsLeads, Contracts, Quotes

Scenario

Scenario

Owner initialises sovereign workspace

Trigger

  • New deployment of the sovereign stack
  • Owner accesses /owner/setup/ for the first time
  • No active pricing profile exists yet

Experience

  1. Setup page loads with form to create superuser.
  2. Owner enters username, email, password.
  3. Owner selects or creates active pricing profile.
  4. Coefficients and destinations are configured.
  5. Security parameters set: local calculation, no public config endpoint.
  6. Setup complete → redirect to /owner/ dashboard.

Trust and safety rules

  • Setup route is staff-only and never indexed.
  • Superuser credentials are created server-side with proper hashing.
  • Pricing profiles are stored in local SQLite — not exposed via public API.
  • Setup can only be run once per deployment (idempotent).
  • Audit log records all configuration changes.

Interaction notes

  • Form uses Django CSRF protection.
  • POST to /owner/setup/ creates superuser and profile.
  • Redirect to /owner/ on success.
  • If setup already completed, redirects to dashboard.

Result states

StateWhat the owner seesWhat happens next
Fresh installSetup form with empty fieldsComplete setup → access dashboard
Already configuredRedirect to dashboardNo action needed
Setup successConfirmation messageRedirect to dashboard with full access
Setup failureError messageRetry setup or contact administrator