User Flow Mickael Rutembya · Flow Atlas

Owner leads

/owner/leads/

Owner browses call qualifications, filters by score and tier, and opens a lead detail.

User intent

What the visitor is trying to do

« I want to see every incoming qualification, understand which ones match our ideal client profile best, and prioritise my follow-up actions. »

Entry points

ElementDestination
Dashboard "Leads"/owner/leads/
Lead detail "Assess"/owner/leads/<pk>/

Flow

Adjacent routes — click a node to open it.userflow
flowchart LR Start(["Owner arrives"]) --> Dashboard["/owner/"] Dashboard --> Leads["/owner/leads/"] Leads -->|Sort by fit| LeadList["Ranked lead list"] LeadList -->|Open highest fit| LeadDetail["/owner/leads/<pk>/"] LeadDetail --> Assess["Submit assessment"] LeadDetail --> GenerateContract["Generate contract"] Assess --> LeadDetail GenerateContract --> Contract["/owner/contracts/<ref>/"] LeadDetail --> QuoteDetail["/owner/quote/<ref>/"] QuoteDetail --> PaymentLink["Issue payment link"] click Dashboard "https://mickael-umt.com/owner/" "Open Dashboard" click Leads "https://mickael-umt.com/owner/leads/" "Open Leads" click LeadDetail "https://mickael-umt.com/owner/leads/1/" "Open Lead Detail" click QuoteDetail "https://mickael-umt.com/owner/quote/DEV-202608-0001/" "Open Quote" click Contract "https://mickael-umt.com/owner/contracts/CTR-202608-0001-01/" "Open Contract"

Screen inventory

IDScreenUser task
O3Leads listBrowse qualifications, filter by score and tier
O4Lead detailReview answers, benchmarks, quote, and assessment
O5Quote detailReview input payload, JSON results, expense settlements
O6Contract viewInspect generated contract, references, linked leads

Flow scenario

Scenario O2

Owner triages a high-fit lead

Trigger

  • New CallQualification row is created from the public form
  • Owner opens the leads list
  • Top unhandled lead has a predicted fit score of 85+

Experience

  1. The leads list shows the lead ranked first with a radar chart of avatar fit.
  2. Owner opens the lead detail to review answers, benchmarks, and the market quote.
  3. Owner submits a structured assessment with risk, quality, and contract levers.
  4. Owner clicks "Generate contract" and a PDF is rendered with a unique reference.
  5. Owner issues a payment link from the quote detail and sends it to the buyer.

Trust and safety rules

  • All owner routes require is_staff; unauthenticated access redirects to /owner/login/.
  • Internal quote results are restricted to superusers or users with billing.view_internal_result.
  • Contract generation is a POST action; no GET endpoint exposes the generation action.
  • Audit events record every assessment, contract generation, and payment link issuance.

Interaction rules

  • Unhandled leads appear first, then sorted by highest predicted fit score.
  • The lead detail page shows the predicted economics and portfolio position before owner input.
  • Owner assessment recomputes the portfolio snapshot in real time.
  • Contract references are deterministic: CTR-YYYYMM-<pk>-<revision>.

Result states

StateWhat the owner seesWhat happens next
UnhandledLead at top of list with no assessmentOwner opens detail
AssessedLead detail with owner input and updated portfolio scoreOwner may generate contract
ConvertedContract generated, payment link issuedBuyer receives link and pays