Custom integration concept · one page

Houston Heating & Air Conditioning, Inc.: estimate form + call tracking + dispatch + QuickBooks → one three-location view

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

THEIR SYSTEMSINTEGRATION LAYER (AZURE)WHAT THE FAMILY SEES Website estimate form (repaired WordPress)town · service line · phone · time submitted Call tracking — one number per shop(252) 524-5828 · Greenville · OBX (252) 717-3855 Dispatch: Housecall Pro / Jobber / FieldEdgebooked jobs · techs · tune-ups · contracts — (to confirm) QuickBooks (Desktop or Online)invoices · A/R aging · revenue by class — (to confirm) Google Business Profile ×3 + county permitsreviews · rating · installs by county (public records) webhookAPI / nightly exportAPI · CSV Azure Functions — lead & job collectorsnormalise town / hub / service line; de-duplicate call + form Azure SQL — one small warehouseleads · jobs · invoices · contracts · reviews, keyed by hub Power Automate — rules & nudgestune-ups due in 60 days · A/R > 30 days · new review Dataverse — contract & customer masterone customer record across three shops and two LLCs Microsoft 365 sign-in · each owner sees their hubnightly refresh · leads hourly Power BI executive dashboardleads → booked → sold by hub, town, service line;margin, A/R, capacity — the sample you've seen Automated alerts (text / Teams)Monday tune-up list per dispatcher;A/R over 30; new Google review to answer Family portal (Power Apps)Aaron sees OBX only; Jerry sees the whole book;contract renewals with one tap Website sync (with Evolve)live review count on the site; form status;maintenance-plan signups straight into Dataverse

As-is vs to-be

TodayWith the integration
LeadsPhone rings; form emails (currently 500 error). No count by shop → every call and form logged with town, hub, source, outcome.
Close rateKnown by feel per estimator → booked-to-sold by hub and service line, weekly.
Revenue mixOne QuickBooks P&L for the whole company → HVAC / electrical / refrigeration by hub, with A/R aging.
Tune-upsContracts renewed when the customer calls → 60-day due list pushed to dispatch; renewal rate tracked.
Reviews154 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.