1 Email Invite
2 Account Setup
3 Wizard Steps
4 Complete
Email Invite
9:41

Welcome Email

Magic Link
Personalized invitation with secure login link. Expires in 7 days.
Secure Token
SHA-256 hashed, single-use token validates contractor identity.
Account Setup
9:41

Create Account

Personal Info
First name, last name, and password. Pre-filled from admin invitation.
Clerk Auth
Secure signup via Clerk. Session token stored locally.
Business Profile
9:41

Business Details

Company Info
Business name, DBA, EIN, office address, and service radius.
Licenses
Trade licenses, insurance certificates, and bonding documents.
Team Members
Add team members with roles and contact information.
Services & Pricing
9:41

Service Selection

Service Categories
Select from 20+ service categories with sub-specialties.
Pricing Setup
Set base rates, hourly rates, and minimum job sizes.
Coverage Area
Define service radius and preferred zip codes.
Pro Tip
Complete all sections to unlock your contractor dashboard. You can update any section later.
Complete
9:41

All Set!

Profile Active
Your contractor profile is live. Start receiving job leads and bid on projects.
Next Steps
Schedule your verification call and explore the contractor dashboard.
Invite & Setup
9:41
Contractor Intake
Email Invite
Magic link invitation with secure token. Contractor clicks to start the onboarding wizard.
Account Setup
Clerk-powered signup: name, password, email verification. Pre-filled from admin invite.
Token Validation
SHA-256 hashed token validates identity. Single-use, 7-day expiry. Admin generates via API endpoint.
Session Created
After signup, Clerk session established. Token consumed and contractor linked to account.
Profile & Services
9:41
Business Setup
Company Profile
Business name, DBA, EIN, office address, service radius. Multi-location support for larger companies.
Services & Pricing
Service categories, sub-specialties, base rates, hourly rates, and minimum job size requirements.
Documents & Licenses
Upload trade licenses, insurance certs, bonding docs. Auto-verification against state databases.
Team Members
Add team members with roles (owner, admin, estimator, field tech). Set permissions and contact info.
Review & Launch
9:41
Final Review
Profile Review
Summary of all entered information. Verify business details, services, and documents before submission.
Coverage Map
Visual map showing service area with radius overlay and preferred zip codes.
Activation
Profile submitted for review. Schedule verification call. Receive approval notification when ready.
Dashboard Access
After approval, full access to contractor dashboard: bids, messages, pricebook, and analytics.
Step 1 — Magic Link Email
Email Invite

intakeMagicLinkTokens — SHA-256 hashed token, 7-day expiry. Admin generates via POST /v1/admin/intake/magic-link


Step 2 — Account Setup
Setup Page
onboarding.3bids.io/setup?token=abc123&contractor=k57...

Create Your Account

Set up your login to start building your 3Bids business profile.

First Name *
Mike
Last Name *
Johnson
Password *
••••••••••••
Confirm Password *
••••••••••••
Create Account & Continue

SetupPage — web/contractor/intake/app/setup/page.tsx. Validates token → Clerk signup → linkContractorAccount → redirect to wizard


Step 3 — Welcome & Complexity
Complexity Selector
onboarding.3bids.io/contractor/k57.../intake

Tell us about your business

We’ll tailor the setup experience to match your business size and needs.

Solo
Just me. I handle everything from estimates to cleanup.
6 sections · ~10 min
Growing
Small team with roles, commissions, and a pricebook.
9 sections · ~25 min
Enterprise
Multi-location ops with complex pricing, jargon, and SOPs.
11 sections · ~45 min
Continue as Growing

WelcomeSection — wizardComplexity: “solo” | “growing” | “enterprise”. Determines visible sections via getSectionsForComplexity()


Step 4 — Profile
Owner Profile
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company
Portfolio
Services
Team
Commissions
Pricebook
Documents
Review
12% complete
Section 2 of 11

Owner Profile

Basic info about the business owner. This helps us personalize your experience.

Personal Information
First Name *
Mike
Last Name *
Johnson
Phone *
(330) 555-0142
Years of Experience
12 years
Bio
Licensed plumber with 12 years of residential and commercial experience in Northeast Ohio. Specialize in kitchen and bathroom remodels, tankless water heaters, and emergency repairs.

ProfileSection — firstName, lastName, phone, yearsExperience, bio. Manual save via “Save & Continue” → contractorBusinessProfile



Step 5 — Portfolio
Project Portfolio
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company & Branding
Portfolio
Services & Ops
Team & Roles
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Employee Onboard
Review & Submit
38% complete
Section 5 of 13

Portfolio

Showcase your best work to attract more customers. Add projects with photos, descriptions, and categories.

No Projects Yet

Add your best completed projects to build trust with homeowners. Include before/after photos for maximum impact.

Add Your First Project
Before & After
Side-by-side comparisons build credibility and showcase transformation quality
10 Photos Max
Upload up to 10 photos per project. Drag to reorder, first image becomes the cover.
Categorize
Tag projects by service type so homeowners find relevant work fast.

PortfolioSection — Project cards with ImageUploader (up to 10 photos), before/after, category select, description. Empty state shown → "Add Your First Project" triggers modal form

Step 5 — Company & Branding
Company Info (Sub-step 1 of 3)
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company
Portfolio
Services
Team
Commissions
Pricebook
Documents
Review
35% complete
Section 4 of 11

Company & Branding

Tell us about your business so we can set up your 3Bids presence.

Basic Info
Contact & Location
Branding
Business Details
Business Name *
Johnson’s Plumbing & Mechanical
Legal Name
Johnson Plumbing LLC
EIN
XX-XXXXXXX
Years in Business
12 years
Business Model
Residential
Commercial
New Construction
Emergency
Remodel
Typical Job Range
$500
to
$25,000

CompanySection — 3 sub-steps: Basic Info → Contact & Location → Branding. businessName, legalName, einNumber, businessModelTypes, typicalJobRange


Step 6 — Services & Operations
Services Offered
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company
Portfolio
Services
Team
Commissions
Pricebook
Documents
Review
52% complete
Section 6 of 11

Services & Operations

What services do you offer, where do you work, and when are you available?

Services Offered
Service Area
Business Hours
Select Your Services
Plumbing
Water Heaters
Drain Cleaning
Bathroom Remodel
Kitchen Remodel
HVAC
Electrical
Roofing
Painting
Emergency Repairs
Sewer Line
Fixture Installation
Gas Line
7 services selected
AI Extraction Available
Upload your website URL or service brochure and we’ll auto-populate your services list.

ServicesSection — 3 sub-steps. servicesOffered[], serviceAreas[], serviceRadius, businessHours, blockedDates


Step 7 — Documents & SOPs
Document Uploads
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company
Portfolio
Services
Team
Commissions
Pricebook
Documents
Review
88% complete
Section 10 of 11

Documents & SOPs

Upload verification documents and business materials. Our AI will extract structured data automatically.

Verification Documents
Contractor License.pdf
248 KB · Uploaded 2 min ago
Verified
Liability Insurance.pdf
312 KB · Uploaded 1 min ago
Verified
W-9.pdf
98 KB · Uploaded just now
Processing
Business Documents
Gemini AI Extraction
Uploaded documents are analyzed by Gemini to extract services, procedures, team info, and pricing data.
Employee Handbook 2026.pdf
1.2 MB · 24 pages
AI Analyzed
Service Pricebook.xlsx
340 KB · 156 items
AI Analyzed
Drop files here or click to upload
PDF, DOCX, XLSX · Max 25 MB

DocumentsSection — contractorBusinessDocuments + contractorIntakeDocuments. intakeAiExtractionJobs runs Gemini on each upload → extractedServices, extractedProcedures, extractedTeamInfo


Step 8 — Review & Submit
Configuration Summary
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Profile Photo
Company
Portfolio
Services
Team
Commissions
Pricebook
Documents
Review
100% complete
Final Step

Review & Submit

Everything looks good. Review your configuration summary and submit for setup.

Summary
Submit
Profile
Mike Johnson · 12 yrs experience
100%
Company & Branding
Johnson’s Plumbing & Mechanical · 3 colors · Logo uploaded
100%
Services & Operations
7 services · 15-mile radius · Mon-Sat 7am-6pm
100%
Team & Roles
8 members · 4 roles · 3 earn commission
100%
Commission Rules
Tiered structure · 3 base rates · 2 bonus rules
100%
Pricebook
156 items · Per-service pricing
100%
Documents
5 files · 2 AI-analyzed · All verified
100%
Submit Intake for Review

ReviewSection — 2-step: Summary → Submit. Dry-run validation, then marks contractorIntakeStatus.status = “complete”


Step 9 — Admin Pipeline
Intake CRM
app.3bids.io/admin/intake

Contractor Intake Pipeline

12 contractors in pipeline · 3 awaiting review

Generate Magic Link
2 Not Started
3 Link Sent
4 In Progress
3 Complete
Contractor Status Progress Complexity Last Activity Actions
Mike Johnson Complete
100%
Growing 2 min ago Approve
Sarah Chen In Progress
65%
Enterprise 1h ago View
Tom Henderson Link Sent
0%
Solo 3 days ago Resend
Lisa Park Approved
100%
Growing Yesterday View

AdminIntakePipeline — GET /v1/admin/intake/list with filters. contractorIntakeStatus tracks not_started → link_sent → in_progress → complete → approved

Data Architecture — Contractor Intake Wizard

Schema Tables

  • contractorBusinessProfile — Master profile (50+ fields)
  • contractorBusinessDocuments — SOPs, handbooks + AI analysis
  • contractorIntakeDocuments — Pricebooks, team lists, avatars
  • contractorJargon — Terminology dictionary
  • contractorIntakeStatus — Progress tracking + status FSM
  • intakeMagicLinkTokens — SHA-256 hashed, 7-day expiry
  • intakeAiExtractionJobs — Gemini document analysis
  • intakeQaReviews — Validation before go-live

Key Endpoints

  • POST /v1/admin/intake/magic-link — Generate invite
  • GET /v1/admin/intake/list — Pipeline CRM view
  • PATCH /v1/admin/intake/{id} — Update status / approve
  • validateSetupToken — Token hash + expiry check
  • linkContractorAccount — Shadow → real clerkId
  • getIntakeOpsSnapshot — Full canonical snapshot
  • getIntakeProgress — Section-by-section status

MCP Tools

253 tools across intakeData (5), onboardingWizard (22), extendedOnboarding (23), complexPricing (56), enterpriseCommissions (47), + service types, regions, roles.

Status FSM

not_started → link_sent → in_progress → complete → approved


Step 2b — Owner Photo
Owner Photo Upload
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
12% complete
Section 2 of 12

Owner Photo

Add the business owner’s headshot before the team delegation flow begins.

Owner Details
Owner Photo
Your Profile Picture

Take a quick headshot now. On phones, this can use the front camera instead of making you dig through uploads.

Drop your photo here
or click to browse
PNG, JPG, or WebP up to 5MB
Pro Tip
A professional headshot builds trust with homeowners. Natural lighting, clean background, and a friendly expression work best.

ProfilePhoto — MediaUpload circle variant. Drag-and-drop or click to browse. onUpload → convex intake/uploads.generateUploadUrl


Step 3a — Delegation Plan
Delegation Plan
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
18% complete
Section 3 of 12

Delegation & Roles

Plan delegation, create roles, and map your internal roster.

Delegation Plan
Role Definitions
Internal Roster
How big is your team?
Just Me
2–5
6–10
11–25
26–50
51–100
100+
How should we import your team?
Manual Entry
Add team members one by one
Bulk Import
Upload a CSV or spreadsheet
AI Extraction
Extract from documents automatically

TeamSection — teamSize picker + importMode selector. Complexity gating: roster tab only for growing/enterprise


Step 3b — Role Definitions
Role Definitions
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
22% complete
Section 3 of 12

Delegation & Roles

Define the roles in your business and their permissions.

Delegation Plan
Role Definitions
Internal Roster
Roles in Your Business
Lead Technician
3 people • Can fulfill • Earns commission
Fulfill
Commission
Sales Rep
2 people • Can sell • Can quote • Earns commission
Sell
Quote
Commission
Office Manager
1 person • Can quote
Quote
Add Role

TeamSection.roles — roleName, count, canSell, canFulfill, canQuote, earnsCommission. Dynamic add/remove with permission chips


Step 3c — Internal Roster
Internal Team Roster
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
25% complete
Section 3 of 12

Delegation & Roles

Map your team members to their roles.

Delegation Plan
Role Definitions
Internal Roster
Internal Team Roster
First Name Last Name Email Role
Carlos Martinez carlos@mjplumbing.com Lead Technician
Sarah Kim sarah@mjplumbing.com Sales Rep
Dave Thompson dave@mjplumbing.com Lead Technician
Add Team Member

TeamSection.members — firstName, lastName, email, roleId. Growing/enterprise only. Supports bulk CSV paste.


Step 4a — Invite by Role
Team Invites
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
28% complete
Section 4 of 12

Team Invites

Invite role owners to complete their parts of setup. Each person gets their own magic link.

Invite by Role
Review Submissions
Invite Team Members by Role

Send magic links to your team members so they can complete their own profile setup. Each person fills out their section independently.

Lead Technicians (3)
Carlos Martinez, Dave Thompson, +1 more
Send Invites
Sales Reps (2)
Sarah Kim, +1 more
Send Invites
Office Manager (1)
Invite sent • Awaiting response
Sent
Auto-approve submissions?
When enabled, employee profiles are approved automatically. Otherwise, you review each submission manually.

EmployeesSection.invite — Magic link generation per role group. Growing/enterprise only. Links sent via transactional email.


Step 4b — Review Submissions
Submission Review
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
30% complete
Section 4 of 12

Team Invites

Review and approve employee submissions before they’re added to the roster.

Invite by Role
Review Submissions
Pending Submissions (2)
CM
Carlos Martinez
Lead Technician • Submitted 2h ago
Reject
Approve
SK
Sarah Kim
Sales Rep • Submitted 45m ago
Reject
Approve
Approved (1)
JR
Jenny Rodriguez
Office Manager • Approved yesterday

EmployeesSection.submissions — Approve/reject employee profiles. Auto-approve toggle available on previous step.


Step 8a — Commission Basics
Commission Setup
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
58% complete
Section 8 of 12

Commission Rules

Set up how your team earns commissions. Define structure, rates, and bonus rules.

Basics
Base Rates
Bonus Rules
Review
Does your team earn commissions?
Yes
No
Commission Structure
Simple
Tiered
Custom
Upload commission document (optional)
PDF, Excel, or Word — we’ll extract the rules

CommissionSection.basics — hasCommissions toggle, commissionStructure selector, optional doc upload. Growing/enterprise only.


Step 8b — Base Rates
Commission Base Rates
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
62% complete
Section 8 of 12

Commission Rules

Define the base commission rate for each role and job type.

Basics
Base Rates
Bonus Rules
Review
Base Commission Rates

Set the default percentage or flat rate earned per job by role.

Lead Technician — Standard Jobs
Default rate for all completed work
8%
Lead Technician — Emergency/Rush
Premium rate for urgent work
12%
Sales Rep — Referral Jobs
Bonus for customer referrals
10%
Add Rate Rule

CommissionSection.rates — CommissionRuleBuilder. Per-role rates with job-type variants. Supports percentage or flat amount.


Step 8c — Bonus Rules
Bonus Rules
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
65% complete
Section 8 of 12

Commission Rules

Define bonus rules that reward performance beyond base rates.

Basics
Base Rates
Bonus Rules
Review
Bonus Rules

Reward top performers with additional bonuses beyond base commissions.

5-Star Review Bonus
+$25 flat
Per 5-star review received from customer
Monthly Target Bonus
+2%
On all jobs when monthly target of $10,000 is met
First Job Bonus
+$50 flat
One-time bonus for first completed job
Add Bonus Rule

CommissionSection.bonuses — BonusRuleCard component. Types: first_job, review, volume, multi-service. Flat amount or percentage.


Step 8d — Review & Apply
Commission Review
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
68% complete
Section 8 of 12

Commission Rules

Review your complete commission structure before moving on.

Basics
Base Rates
Bonus Rules
Review
Commission Summary
3
Base Rate Rules
3
Bonus Rules
Ready to Apply
Example Calculation — $1,000 Job
Job Value $1,000.00
Base Commission (8%) $80.00
5-Star Bonus (if earned) +$25.00
Total Payout $105.00

CommissionSection.review — Summary stats + example $1,000 job calculation. Status indicator: ready to apply vs incomplete.


Step 9a — Pricing Model
Pricing Model
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
72% complete
Section 9 of 12

Pricebook & Pricing

Set your default pricing model and optionally import an existing pricebook.

Pricing Model
Service Pricing
Modifiers
Import Existing Pricebook?
Yes, I have one
No, build from scratch
Upload your pricebook
PDF, Excel, or CSV — we’ll extract pricing automatically
Default Pricing Model
Flat Rate
Per Square Foot
Hourly
Cost + Markup

PricebookSection.model — hasPricebook toggle, file upload, pricingModel selector. AI extraction for uploaded pricebooks.


Step 9b — Service Pricing
Service Pricing Grid
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
75% complete
Section 9 of 12

Pricebook & Pricing

Set the base price and pricing type for each of your selected services.

Pricing Model
Service Pricing
Modifiers
Service Pricing

Set the base price for each service you offer. Prices shown to homeowners during bidding.

Service Base Price Pricing Type
Plumbing
$150.00
Flat Rate
Water Damage
$3.50
Per Sq Ft
General Handyman
$85.00
Hourly

PricebookSection.pricing — Per-service basePrice and pricingType. Grid populated from servicesOffered selection.


Step 9c — Modifiers & Bundles
Pricing Modifiers
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
78% complete
Section 9 of 12

Pricebook & Pricing

Add modifiers that adjust your base pricing — surcharges, discounts, and bundles.

Pricing Model
Service Pricing
Modifiers
Pricing Modifiers

Add markups, discounts, or surcharges that adjust base pricing.

Weekend Surcharge
Markup • Percentage
+15%
Senior Discount
Discount • Percentage
-10%
Emergency Fee
Surcharge • Flat
+$75
Add Modifier

PricebookSection.modifiers — Type (markup/discount/surcharge), name, amount, amountType (% or flat). Also supports service bundles at enterprise tier.


Step 10b — Business Documents
Business Documents
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
82% complete
Section 10 of 12

Documents & SOPs

Upload optional business documents to speed up onboarding.

Verification Docs
Business Docs
AI Extraction
Optional Business Documents

Upload any additional documents that help us understand your operations. These are optional but speed up onboarding.

Standard Operating Procedures
SOP documents, checklists
Employee Handbook
Policies, procedures
Org Chart
Team structure diagram
safety-manual.pdf
2.1 MB • Uploaded
Done

DocumentsSection.business — Optional doc grid: SOP, handbook, org chart, safety manual. 2-column grid with upload/uploaded states.


Step 10c — AI Extraction Review
AI Extraction Review
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
85% complete
Section 10 of 12

Documents & SOPs

Review data extracted by AI from your uploaded documents. Approve or reject each item.

Verification Docs
Business Docs
AI Extraction
AI Document Extraction
We analyzed your uploaded documents and extracted the following data. Review each item and approve or reject.
Completed
Extracted Data (6 items)
Business License #
OH-PLB-2024-38291
95% confidence
Insurance Provider
State Farm — Policy #SF-847261
92% confidence
Expiration Date
March 2025 — May be expired
72% confidence

DocumentsSection.extraction — AI-extracted fields with confidence badges. Approve/reject per item. Enterprise tier. Powered by Gemini extraction.


Step 12b — Submit for Review
Submit for Review
onboarding.3bids.io/contractor/k57.../intake
Welcome
Profile
Delegation & Roles
Team Invites
Company & Branding
Portfolio
Services & Ops
Commission Rules
Pricebook & Pricing
Documents & SOPs
Jargon & Terms
Review & Submit
95% complete
Section 12 of 12

Review & Submit

Final validation passed. Submit your intake for team review.

Summary
Submit
Validation
All checks passed
Your intake is ready for submission
3 service types
12 zip codes
3 team roles
6 documents
Ready to Submit!

Your intake will be reviewed by our team. You’ll receive an email once your account is activated.

Submit Intake for Review
Download Submission Summary

ReviewSection.apply — Validation results, preview cards, submit button. Download summary available post-submission.