Contracts
E-sign, review, and download your service agreements — all in one place.
URL: portal.yourcompany.com/contracts
What This Screen Is
The Contracts page in the customer portal is where customers review, sign, and download their service agreements. It replaces the friction of printing, scanning, and emailing PDFs with an inline e-sign flow that takes under two minutes. Both parties get a legally binding signed copy the moment the customer submits their signature — no follow-up needed.
One-time, irreversible action. Signing a contract is permanent. Customers can read and download at any time, but can only sign once — and once signed, the terms cannot be modified through the portal. Any scope changes go through the contractor's CRM change order flow.
Contract List View
Customers see all contracts ever sent to them in a single list, sorted by date with the most recent on top. Each row shows the contract name, the associated project, the date it was sent, and its current status. Pending contracts surface a prominent Review & Sign button — no digging required to find what needs action.
Example contract rows:
- Service Agreement — Deck Build — Project: Deck Build — 88 Birchwood Ave · Sent May 13, 2026 · 3 pages — Pending Signature — [Review & Sign]
- Service Agreement — Roof Replacement — Project: Roof Replacement — 412 Lakeview Dr · Signed May 6, 2026 — Signed — [Download PDF]
- Maintenance Plan Agreement — Project: Annual Service — 34 Pinecrest Rd · Sent Mar 15, 2026 · Expired Apr 15, 2026 — Expired — [Contractor will resend]
E-Sign Flow
Clicking Review & Sign opens the contract inline — no popup, no redirect to a third-party tool. The customer reads the full document (scroll required before the sign controls appear), checks the agreement box, draws or types their signature, and submits. Both parties receive a signed PDF copy via email the instant the signature is submitted.
E-sign mockup — Service Agreement — Deck Build (Page 2 of 3):
Document lines preview (scroll required) → "Scroll to the bottom to enable signing" notice → Checkbox: "I have read and agree to the full terms of this service agreement" → Signature area with Type / Draw tabs → "Marcus Johnson" (typed, script font) → "Your typed name is legally equivalent to a handwritten signature under the ESIGN Act" → [Sign & Submit] [Cancel] — "Signed copies sent to both parties by email"
Step-by-Step E-Sign Process
- Customer clicks Review & Sign from the contract list.
- Contract opens inline — customer scrolls through the full document. The sign controls are locked until the customer reaches the bottom of the final page.
- Customer checks: "I have read and agree to the full terms of this service agreement." The checkbox is mandatory — signing is blocked if unchecked.
- Customer enters their signature — either by typing their full name (rendered in a script font) or by drawing with their finger or mouse on the signature pad.
- Customer taps Sign & Submit.
- The system generates a PDF with the signature, the customer's name, timestamp, and IP address embedded as a legal record. This PDF is stored in the contractor's CRM and attached to the customer's portal.
- Both the contractor and the customer receive an email within seconds with the signed PDF attached.
- The contract row in the portal updates immediately to Signed with the signing date and a Download PDF link.
What the Contract Contains
Every contract sent from the CRM follows a standard structure. The contractor populates the job-specific details through the CRM — the portal renders the full document for the customer without any editing capability.
- Scope of Work — Detailed description of all services to be performed, materials included, and any explicit exclusions
- Start & End Dates — Scheduled project start date, estimated completion date, and conditions under which dates may shift
- Payment Schedule — Deposit amount (if any), milestone payments, final balance due date, and accepted payment methods
- Warranty Terms — Labor warranty duration, materials warranty (manufacturer vs. contractor), and claim process
- License & Insurance Info — Contractor's license number, general liability coverage limits, and workers' comp certificate details
- Change Order Terms — How additional scope requests are submitted, approved, and billed — protecting both parties from scope creep
Downloading Signed Copies
Every signed contract is permanently available for download from the Contracts page. Customers never need to dig through email to find their paperwork — the signed PDF is always one click away from the portal. The download link persists even if the project is archived or the job is years old. Unsigned contracts do not have a download link; only signed and completed documents are downloadable by the customer.
Expired Contracts
A contract expires if the customer hasn't signed within the validity window set by the contractor (typically 7, 14, or 30 days). Once expired, the Review & Sign button is removed and the contract is marked Expired. The customer cannot sign an expired contract — it's locked.
When a contract expires, the contractor is notified automatically and can choose to resend the same contract (which resets the expiry window) or update the terms first and then resend. The customer receives a new notification when a fresh contract is ready for their signature. Expired contracts remain visible in the customer's list for reference.
Privacy — Customer Data Isolation
Customers can only see contracts issued to them. It is architecturally impossible for a customer to access another customer's contract — each document is scoped to a specific customer account at the database level. The URL for a contract does not expose or predict any other customer's document ID. All contracts are served over HTTPS with authenticated session tokens.
No cross-customer exposure. Contract IDs use randomly generated UUIDs, not sequential integers. Even if a customer guessed a URL, they would receive a 403 Forbidden response for any document not belonging to their account.
CRUD Operations
| Operation | Available | Notes |
|---|---|---|
| View Contract List | Yes | All contracts sent to this customer — pending, signed, and expired |
| Read Full Contract | Yes | Inline document view, no external app required |
| Sign a Contract | Yes | Once only — irreversible after submission. Pending contracts only. |
| Download Signed PDF | Yes | Available immediately after signing — permanently accessible |
| Sign an Expired Contract | No | Contractor must resend; customer cannot reactivate expired documents |
| Edit Contract Terms | No | Read-only. All term changes go through the contractor's CRM. |
| Delete a Contract | No | Contract records are permanent for both parties' legal protection |
| View Another Customer's Contract | No | Strict account-level isolation — 403 Forbidden on any unauthorized access |
| Download Unsigned Contract | No | Download is only available after signing |
| Request a Contract Change | No | Customer should message the contractor via the project Messages tab to discuss revisions |
Related Pages
- Customer Portal Overview — Full feature map of the customer-facing portal — technician tracker, payment methods, scheduling, and more
- My Projects — Customer Portal — Project status, shared photos, documents, and messaging — the customer's main project view
- Payment Methods — Customer Portal — Saved cards, auto-pay enrollment, and full transaction history
- Customer Onboarding — The 4-step flow that sets up card-on-file, contract signing, and portal access before work begins