← ServiceFlow IQ

Help center

Documentation, guides, and FAQs. Searchable answers powered by the AI Co-Pilot in-app.

Getting started

Create your workspace in 5 minutes

Run the onboarding wizard at /onboarding/wizard. Pick your trades, set truck count, and AI Smart Start seeds 40-60 pricebook items in seconds.

Bring your data from another system

Settings → Import. Export a CSV from your old software, match the columns, and preview the result before anything saves. Import customers first — locations and contacts attach to them.

Invite your team

Settings → Users. Add email + role. If email delivery is configured the invitee gets a one-click accept link; if it is not, the invitation is still created — use Copy link on the pending row and send it however you like. The accept page sets their password directly, so no email is required to get someone working.

Connect QuickBooksNot yet available

Settings → Integrations → QuickBooks → Connect. The OAuth round-trip lands at /api/quickbooks/callback and stores the connection against your workspace.

Dispatch & scheduling

Capacity Planning

Dispatch → Capacity. Define daily hours + slots per service category and see which days are overbooked. The planner is advisory today — online booking and the dispatch board will let you exceed a cap.

AI dispatcher recommendations

AI Co-Pilot rail. Ask 'who should take the Smith install?' and the AI scores all active techs by skill + location + sold-hour history.

Cadences (Autoplays for FSM)

Settings → Cadences. Build multi-step sequences: estimate-sent + 48h → SMS follow-up, expiring membership + 14d → email + task.

Estimates & invoices

Multi-option (Good/Better/Best) estimates

Estimates → New → enable Multi-option. Up to 5 tiers per estimate. Customers approve via the portal.

Pricebook with sold hours

Settings → Pricebook. Each item has unit price + cost + sold-hours estimate. Items become commission-aware once pay rates are set.

Recurring billing

Customers → Agreements. Set billing cadence (monthly/quarterly/annual). The recurring-billing cron creates invoices automatically.

Payments

Accept card + ACH

Stripe Checkout powers payments. Invoices generate portal pay links your customer can pay by card or bank transfer. Tap to Pay is not available yet.

Wisetack consumer financingNot yet available

Prequalification for quotes $500-$25k at a fixed 3.9% transaction rate, with the operator paid in full on completion. The integration is wired to /api/financing/prequal; there is no button on an estimate that fires it yet.

Progressive billingNot yet available

Bill a percentage of a line across several invoices, so a big-ticket install can land in 25/50/25 milestones instead of one lump sum.

AI features

Co-Pilot chat

The assistant rail on the right of every screen — toggle it with Show AI / Hide AI in the top bar. Ask anything about your workspace; it can see your live jobs, customers, estimates and invoices. Bring your own API key from the key field in the panel itself.

Photo to estimate

Snap a photo of an HVAC data plate or damage. Claude vision returns brand/model/serial/age + suggested pricebook items.

Voice agent

Wire Vapi or Retell to /api/ai/voice-webhook. 24/7 inbound booking with Spanish auto-switch + membership recognition.

Mobile

Install on your phone

iOS Safari → Share → Add to Home Screen. Android Chrome → menu → Install app. Installs as a standalone app with its own icon.

Connectivity

ServiceFlow needs a connection to load and save work. The app shell is cached so it opens instantly, but changes are not queued offline — offline write support is on the roadmap, not shipped.

Security & compliance

Multi-factor authentication

Not available yet. MFA is planned; until it ships, protect accounts with a strong unique password and your identity provider's controls via Google sign-in.

Export or delete tenant data

Owner role only. GET /api/tenant/export for JSON bundle. POST /api/tenant/delete with confirmation phrase = tenant slug.

SOC 2 Type II

Controls mapping at docs/security/SOC2-controls.md. Type II observation window planned.

Words the app uses

Sold hours

The time a pricebook item takes PER UNIT — not per line. A line's time is the per-unit time × the quantity. A 2×4 commercial pane at 1m10s means 105 windows is about 2h03m, not one hour.

Par time

What a job should take: the sum of every line's sold hours, before anyone is assigned to it.

Speed factor / mod factor

How fast a crew or a person works relative to par. 1.0 is exactly par, below 1 is faster, above 1 is slower. Teams have one overall factor; technicians have one per service category. Assigning someone to a pricebook-timed job recalculates its duration and tells you: par 2h 03m → 1h 45m (×0.85).

Timing mode

Pricebook means the duration is derived from the line items and updates when you change them. Manual means you typed the times and nothing will ever rewrite them. Jobs created before this existed are treated as manual, so their schedules stay put.

Team vs technician

Jobs are scheduled onto TEAMS — a team is what owns a lane on the dispatch board. Technicians are assigned within that. This is why you need at least one team before the board or the week and month calendars show anything.

Service category

The type of work — Window Cleaning, Power Washing. Categories tie together four things: pricebook items, technician skills, technician speed factors, and capacity planning.

Cadence

How often a dispatch zone should be worked. It is advisory only: a cadence never creates a job, moves a job, or reschedules anything. It flags work that is overdue for its area.

Arrival window

The span you promised the customer, as opposed to the actual on-site duration. Moving a job outside its window warns you rather than blocking you.

Loadout

The list of what a given truck is supposed to be carrying, so you can check it against what is actually on board.

Sold Hours (the Team tab)

Despite the name, Team → Sold Hours is a plan-versus-capacity view built from scheduled job durations over the last seven days — not a record of finished work. Read it as “how full is next week”. For work actually done, use Reports → Job Completion Times.

Where completion figures come from

There is no separate time clock. When a technician taps Check in in the field app that stamps the start, and Mark complete stamps the finish. Late %, technician Score, Job Completion Times and Completion Efficiency are all calculated from those two taps — if crews don't use the field app, those reports are correctly blank.

Developers

Public REST API

Mint a key at /developers. Send requests with Authorization: Bearer sfi_…. 600 GETs / 120 POSTs per minute per key.

Webhook subscriptions

POST /api/webhooks/subscriptions with url + events. Delivery is HMAC-signed and retried with exponential backoff.

Bulk CSV migrator

For scripted migrations, POST /api/imports/csv with a targetTable and columnMapping (dryRun: true previews first). Most people should use Settings → Import instead.