Onboarding Flow
Overview
The onboarding flow is how a new customer goes from a contact in your CRM to an active portal user who has reviewed their scope, signed their contract, and added a payment method. It's designed to be completed in a single sitting on any device — laptop or phone — in under 10 minutes.
The contractor initiates it; the customer completes it. Once onboarding is done, the portal is fully active and the job can proceed.
The 4 Steps
Step 1 — Contractor Sends Invite
The contractor creates the estimate and contract in the CRM, then clicks Send Portal Invite. The customer receives a branded email and/or SMS with a secure link. The link expires in 72 hours; if unused, the contractor can resend it from the contact record.
Step 2 — Customer Sets Up Account
The customer opens the link and creates their account using phone verification, magic link, or email + password. Profile fields: name, address, preferred contact method. Account creation takes under 2 minutes.
Step 3 — Review Scope & Estimate
The customer sees the full scope of work and itemized estimate. They can read line items, see the total, and ask a question via the messages feature. Approval or rejection is one click — approval moves both parties to Step 4.
Step 4 — Sign Contract & Add Payment Method
The customer signs the service contract via e-signature. Immediately after signing, they're prompted to add a credit or debit card. Auto-pay can be enabled at this step. Once both are complete, the onboarding is marked done and a confirmation is sent to both parties.
Status Tracking
| Step | Status Label | Contractor View |
|---|---|---|
| Invite not yet sent | Pending Invite | CTA: Send Invite |
| Invite sent, not opened | Invited | Resend available |
| Account created | Account Active | — |
| Estimate reviewed | Estimate Pending | Waiting on customer |
| Estimate approved | Estimate Approved | Proceed to contract |
| Contract signed + card added | Onboarding Complete | Portal is active |
CRUD Reference
| Object | Create | Read | Update | Delete |
|---|---|---|---|---|
| Portal Invite | ✅ | ✅ | — | ✅ (revoke) |
| Customer Account | ✅ | ✅ | ✅ | — |
| Estimate Response | ✅ | ✅ | — | — |
| Contract Signature | ✅ | ✅ | — | — |
| Payment Method | ✅ | ✅ | ✅ | ✅ |
| Onboarding Status | — | ✅ | — | — |
Notes
Revoking an invite deactivates the link immediately — the customer cannot complete onboarding after revocation. Onboarding status is visible on the contact record in the CRM and is included in the pipeline view. If a customer rejects the estimate, the contractor receives an in-app notification and can revise and re-send. A new estimate approval resets the onboarding step, not the account.