Every feature, explained.
The first true line in your business — and a complete reference for every screen, engine, and action inside it. Use the index to jump to a section.
Layout (Dashboard)
Your daily snap-line — the first true line of the day.
- Hero summary
- Branded HVAC hero with live counts for new leads, qualified leads, scheduled visits, and outstanding invoices for the active tenant.
- Recent activity
- Quick links to the newest leads and any leads sitting in human-review for duplicates or low scores.
- Theme-aware
- Background, accent stripes, and stat chips re-skin instantly when you change the color theme from the header.
Leads
Capture, score, validate, and route every inbound opportunity.
- Quick paste intake
- Drop a freeform message (text, email, voicemail transcript) into the capture box. Snapline auto-parses phone, email, ZIP, address, and service request into structured fields.
- Triage chips
- Each lead card shows service type, urgency, budget band, and P·E·A verification dots (Phone, Email, Address) so you can scan the queue in seconds.
- Filters
- Filter by status, service, urgency, and verification state. Filters persist while you navigate.
- Lead detail
- Single-page command center: score, qualification fields, validation pipeline, site visit, audit log, notes, contact attempts, AI assessment, duplicate review, follow-ups, and Wendy outreach status.
Lead Qualification Engine
Deterministic scoring with a transparent reason trail.
- Scoring inputs
- Contact validity (phone/email format + verification), service-type match against tenant offerings, in-service-area ZIP, urgency, and budget signal.
- Recommendation
- Auto-classifies as Qualified, Needs Info, or Rejected. Crossing the 45-point outreach threshold arms Wendy SMS.
- Score deltas
- Every re-score logs the previous score, the new score, and the delta to the audit trail.
Validation Pipeline
New → Contacted → Qualified → Scheduled → Won/Rejected.
- Gated stages
- Each stage has required checks (e.g. contact verified before Qualified, site visit booked before Scheduled). The UI shows what's missing.
- Manual override
- Operators can force a stage with an audit-logged reason when the rules don't fit the situation.
Site Visits
Book the truck roll and notify the assigned tech.
- Booking
- Pick a date and time window, choose a technician from the tenant roster (defaults to on-call), and confirm.
- Auto stage advance
- Booking advances the lead to Scheduled and logs a notification entry for the assigned tech.
Duplicate Detection & Merge
Three-tier confidence: auto-merge, human review, ignore.
- Thresholds
- ≥90% auto-merges, 60–89% flags for human review, below 60% is ignored. Matching uses normalized phone, email, address, and name.
- Human override
- Reviewers can confirm a merge, mark as not-a-duplicate, or split a previously merged record.
Wendy SMS Outreach
Automatic follow-up the instant a lead is qualified.
- Trigger
- Fires when score ≥ 45 (outreach threshold). Templates adapt to service type, urgency, and time of day.
- Manual control
- Resend, pause, or cancel from the outreach panel. Every send is audit-logged.
Follow-up Engine
Outcome-aware email + SMS schedules.
- Schedules
- Qualified leads get a multi-step nurture; Needs-Info leads get a single info request; Rejected leads get a polite close-out.
- Overrides
- Skip steps, accelerate the cadence, or stop the schedule from the lead detail.
AI-Assisted Assessment
Second-opinion scoring with explanations.
- Recommendation
- Gemini-3 Flash reviews the full lead and recommends Qualified / Needs Info / Rejected with the top reasons.
- Transparent
- Reasons render inline; the deterministic score remains the system of record.
Notes & Contact Attempts
Every decision and call recorded with timestamps.
- Structured notes
- Pinned, plain, and decision-type notes appear in a unified timeline.
- Contact attempts
- Log call/SMS/email attempts with outcome; counters drive validation gates.
Audit Log
Color-coded timeline of every change.
- What's tracked
- Score changes, stage transitions, site-visit actions, outreach sends, follow-ups, AI assessments, duplicate merges, manual overrides, and email sends.
Customers
The book of business behind the leads.
- Records
- Local Corvallis demo accounts seeded from Pace Heating & Air, with address, contact, and invoice history.
Invoices
Branded PDFs and email-ready receipts.
- Tenant-branded PDFs
- Generated client-side with the tenant logo in header and footer — falls back to the Snapline mark when no logo is uploaded.
- Send with PDF
- Quote/bid/receipt emails can be sent with the matching PDF attached; the send is audit-logged on the related lead.
Email Templates
Quote, bid, and receipt — all rendering the tenant logo.
- Preview
- The Emails page renders live previews of each template with the active tenant's branding.
- Inline logos
- Logos resolve as inline data URIs or absolute URLs so they render reliably in every mail client.
Tenant Settings
Own your brand and contact info.
- Logo upload
- Upload a PNG/SVG (converted to a Data URL) — it propagates to the header, emails, PDFs, and the chip in the nav.
- Contact info
- Company name, address, phone, and reply-to email used by templates and the dashboard.
Color Themes
Chalk, Copper, Forest, Crimson, Violet, Mono.
- Instant
- Theme switcher in the header swaps accent tokens app-wide, persisted to local storage.
Branding System
Snapline brand for the SaaS, tenant brand inside the app.
- SaaS marks
- Snapline logo + mark used on the auth page, marketing surfaces, and as the universal fallback.
- Tenant marks
- Tenant logo renders in the app header chip, invoices, PDFs, and every outbound email.
Service Area
ZIP-based qualification for Pace Heating & Air.
- Corvallis core
- Local ZIPs score full points; nearby Willamette Valley ZIPs score partial; everything else fails the location check.
Authentication
Sign in to sync your chat history and protect actions.
- Email + Google
- Email/password sign-in plus Google OAuth on the /auth page.
- Header chip
- Shows your email and a one-click sign out when signed in.
Snap Assistant
Voice + text chatbot that knows Snapline top to bottom.
- Floating bubble
- Bottom-right bubble on every app page. Opens a chat panel with persistent history (one ongoing conversation per user, stored in Lovable Cloud).
- Text
- Standard typed chat. Press Enter to send, Shift+Enter for a newline.
- Push-to-talk
- Hold the mic button to talk; release to transcribe and send.
- Hands-free
- Toggle Hands-free to auto-listen with voice-activity detection: speak, pause, Snap replies aloud, then it starts listening again.
- Voice replies
- Toggle Voice replies to mute or unmute spoken answers.
Notifications
In-app toasts via Sonner for every meaningful action.
- Where
- Booking, score changes, outreach sends, validation errors, and assistant errors all surface as toasts.
Voice Stack
STT and TTS through the Lovable AI Gateway.
- Speech-to-text
- Client encodes mic audio to WAV and POSTs to the server route, which proxies the Gateway transcription model.
- Text-to-speech
- Assistant replies are streamed back as MP3 and played through the chat panel.