Houston Heating & Air Conditioning, Inc.: estimate form + call tracking + dispatch + QuickBooks → one three-location view
BI Consulting ServicesMicrosoft Partner · Mooresville, NC
The problem
Houston runs three shops — Grifton, Greenville and Wanchese on the Outer Banks — across HVAC, electrical and commercial refrigeration, and the only reliable view of how each is doing arrives when the QuickBooks books close. Calls come to the office phone, the website estimate form (once repaired) lands in an inbox, and nobody can say at a glance how many of last week's Kinston calls became booked jobs, what the OBX close rate is, or which maintenance-contract customers are due a tune-up before the first freeze. The family knows the answers by feel; the numbers should agree with the feel.
What changes on day one
Every lead is counted — tracked phone numbers per shop plus the website form flow into one lead table with town, source and service line.
Mike sees three columns, not one — leads, booked, estimates, sold and average ticket by Grifton / Greenville / OBX, updated daily.
Margin by service line — HVAC vs electrical vs commercial refrigeration revenue and A/R from QuickBooks, not a year-end guess.
Tune-up list before peak — contract customers due in the next 60 days, by town, pushed to the dispatcher every Monday.
Review and A/R alerts — a text when a new Google review lands, and when any commercial invoice passes 30 days.
How the pieces connect
As-is vs to-be
Today
With the integration
Leads
Phone rings; form emails (currently 500 error). No count by shop → every call and form logged with town, hub, source, outcome.
Close rate
Known by feel per estimator → booked-to-sold by hub and service line, weekly.
Revenue mix
One QuickBooks P&L for the whole company → HVAC / electrical / refrigeration by hub, with A/R aging.
Tune-ups
Contracts renewed when the customer calls → 60-day due list pushed to dispatch; renewal rate tracked.
Reviews
154 reviews nobody is reminded to answer → alert on each new review; velocity per shop on the dashboard.
Phased approach
DiscoveryWeeks 1–2
Confirm dispatch tool (or none), QuickBooks edition and who owns the three Google listings.
Agree the hub / town / service-line coding and the five numbers Mike wants on page one.
Depends on Evolve's site repair and call-tracking numbers being live.
BuildWeeks 3–7
Form webhook + call-tracking collector into Azure SQL; QuickBooks connector; dispatch API or nightly export.
Power BI model and the three-hub dashboard; Power Automate tune-up and A/R rules.
Dataverse customer master with the two-LLC mapping.
Go-liveWeeks 8–9
Parallel run against last month's QuickBooks totals; reconcile to the dollar.
Mike, Jerry and Aaron onboarded; alerts to the dispatcher's phone.
Monthly review with Evolve so marketing spend follows the towns that convert.
Also worth knowing: BICS runs private AI servers — a chat assistant over your own job history and manuals that never leaves your network — and builds Power Apps for field crews (tech check-in, photo capture, contract renewal on the customer's porch), all on the same Azure footing so nothing here is throwaway. Power BI is the primary delivery and needs Power BI licences; a no-licence custom web version is the fallback.