SmartBuild estimator connection

Each account connects its own SmartBuild login, and every estimator call is proxied server-side with that account's credentials so no tenant can ever see another's jobs.

What it is

A username and encrypted password stored on the account row, resolved per request with a short cache. All estimator traffic — project lists, estimates, job data, pricing, colours, doors and windows, starting models, outputs — flows through a single proxy route that authenticates, injects the token and forwards. Accounts without credentials get an empty but structurally valid response on reads and an explicit 503 on writes.

Also called: SmartBuild login · post frame estimating software · connect my estimator

See it
SmartBuild estimator connection
CustomerBuildingAmountStatus
Delia YoderHobby Shop$3,100Sent
Delia YoderEquipment Storage$7,280Sent
Ivy BrubakerRiding Arena$2,910Sent
Ivy BrubakerHobby Shop$7,850Open
Ivy BrubakerEquipment Storage$3,290Approved
The SmartBuild card in Settings → Integrations with username, masked password and a connected dot. Rendered by src/components/settings/IntegrationsTab.tsx. Sample data — no customer information appears here.
How it works
  1. 1Admin enters username and password in Settings → Integrations; the password is encrypted at the boundary.
  2. 2The proxy resolves credentials for the caller's account (environment variables remain a bootstrap path for the original single-tenant account).
  3. 3A login token is fetched and cached per credential for 23 hours.
  4. 4The upstream call is made with the token; the body is passed through regardless of status because the estimator returns useful JSON on some non-2xx codes.
  5. 5Unconnected accounts read as empty rather than erroring.
Why we built it

The proxy header states the multi-tenant rule and its failure mode: 'Per-org scoped — each tenant uses their own SmartBuild username/password... Tenants without SmartBuild credentials get an empty response on reads and a 503 on writes — never another tenant's data.' The credentials resolver documents why the Settings UI is the source of truth: it 'lets the platform owner manage creds without a Vercel redeploy.'

The problem
  • Estimator credentials were environment-level and single-tenant.
  • An unconnected account produced errors instead of an empty state.
  • Rotating a password required a redeploy.
Sound familiar?
What you get
Each builder's estimator data is reached only with their own login.
Credentials are managed in Settings without a deploy.
The dashboard renders cleanly before anything is connected.
What's inside

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →