For commercial & mechanical contractors
Run the whole operation by the numbers that move it.
One platform for dispatch, agreements, equipment and the back office — on a single equipment record, running beside the accounting system you already trust.
Illustrative interface mock — not customer data
Beside your books, not inside them
Thermal runs field operations. Your accounting system runs the books.
Thermal is never a rebuild of QuickBooks, Xero, Sage Intacct, or Business Central inside a field-service shell — it connects beside whichever one you already run, pushing invoices, customers, vendors, and vendor bills out, and leaving the general ledger, payroll, and retainage-heavy construction accounting exactly where they are.
See how Thermal connects to your accounting system| Area | Thermal owns | Your accounting system / ERP owns |
|---|---|---|
| System of record | Customers, service sites, installed equipment, agreements, work orders, dispatch | General ledger, chart of accounts, financial statements |
| Money | Quotes, invoices, and payment status on the job | Payroll, retainage-heavy construction accounting, multi-entity consolidation |
| What syncs | Pushes invoices, customers, vendors, and vendor bills out | Stays the system of record for the books — Thermal does not post journal entries to your books |
QuickBooks Online syncEarly accessSage Intacct and Business Central adaptersOn the roadmap
Goal-driven operations
Set the number. Keep the work connected to it.
Commercial and mechanical contractors do not need another dashboard full of generic scores. They need a clear target and a trustworthy view of the operational records that move it.
Choose the scorecard
Save up to three north-star goals for the operation, then keep them visible at the top of the dashboard.
Read the records behind the number
Thermal calculates the available KPI values from work orders, appointments, invoices, time entries and service agreements in the selected reporting window.
Keep unknowns honest
When a metric has no source yet, the dashboard shows it as unavailable instead of filling the gap with a placeholder.
KPI dashboard
Your north-star goals
Measured from Completed work + callbacks
Measured from Closed time entries + capacity
Measured from Sent, partial & paid invoices
Evidence before interpretation
Compare the current value with your target, inspect the underlying work, and decide the next move with your team.
Every tech's whole day on one board.
The dispatch board lays each technician's day across a single timeline — jobs, live status, and a now-line that moves with the shift. Emergencies jump the queue, the unscheduled backlog waits on the left, and Thermal suggests the nearest certified tech for anything still open.
Illustrative interface mock — not customer data
Your maintenance revenue renews itself.
PM work orders generate on schedule, renewals surface before the contract lapses, and every visit links back to the equipment. When margin or age says it's time, the renewal and its numbers are right there on the agreement — you set the reprice and send it.
Illustrative interface mock — not customer data
Every decision is wired to a piece of equipment.
The unit is the spine of Thermal. Its age, run hours, refrigerant, warranty and every past visit live in one serialized record — so the system can connect a callback to a cause, and a tired RTU to a visit before it dies in July.
Tracking jobs tells you what happened. Tracking equipment tells you what to do next.
Illustrative interface mock — not customer data
Built for the truck, the attic, and no signal.
Dark by design — legible on a bright rooftop and easy on the eyes in a mechanical room. The tech gets the unit's full history, the most-likely fix from past calls, and the right line items — then captures photos, readings and signatures offline, syncing when the truck hits the road.
Illustrative interface mock — not customer data
Multi-branch
One system of record, scoped by branch.
Multi-branch is common at 10–200 technicians, and it's built into the same tenant — not a second instance you stand up per location.
Branch-scoped roles, enforced at the database
A technician's session is scoped to their home branch by default. Owners, dispatchers, and office roles see every branch unless you restrict them — enforced by Postgres row-level security, not just app logic.
Dispatch and scorecards roll up org-wide
Run dispatch and reporting across every branch from one board, then compare branch-by-branch when you need the detail — a caller with two or more live branches gets a branch selector, not a separate login per location.
Per-branch settings
Business hours, scheduling policy, and automation quiet hours are configurable per branch — a new branch inherits sensible defaults with no migration required to add it.
Migration & security
Two questions every buying committee asks first.
Migration
Bring your history over without a project of your own.
Export what you have, stage it for review, and approve what moves — customers, sites, equipment, service history, and agreements. Nothing commits until you say so, and we don't quote a fixed timeline or a specific source system here.
See how migration worksSecurity
Data isolation you can verify, not take our word for.
Tenant and branch isolation is enforced by Postgres row-level security at the database — tested against the real restricted role, not just documented as intent. We don't hold SOC 2, ISO 27001, or HIPAA certification today, and we say so plainly rather than dressing the page up with a badge.
See the security pageOne platform, priced per tech.
The whole system — not a starter kit with the real features gated behind add-ons. No penalty exit clause; your data is yours, any time.
For a single branch getting the whole operation onto one record.
For multi-branch shops running agreements and the full back office.
For larger operations with projects, subs and tailored controls.
Evaluating for procurement or IT review? See how Thermal handles security and data.
Run the whole shop. No traps.
One system of record across every branch, beside the books you already trust. See it on your own data in 30 minutes.