Sub-accounts — the account IS the page

A roster of every builder account on the left; pick one and the whole right side becomes that account — plan, people, payments, contract, integrations, margins, notes and every word ever said to them.

What it is

The operating surface for one customer. Tabs run Overview, Onboarding, Success, Team & Permissions, Payment history, Contract & Exclusivity, Booking, Integrations, Comms & Margin, Demo data, Notes and Conversation. Selection lives in the URL so back, forward, refresh and shared links all land on the same account and tab, and switching accounts never reloads the page.

Also called: client list · tenant list · account manager · customer accounts · my account file

See it
Sub-accounts — the account IS the page
Prepared for
Ronan Petsch
1140 Ridge Line Rd · Fair Play
Shell package$33,616
Concrete & site$9,760
Doors & windows$6,506
Trim & finish$4,338
Total
$54,220
Signature
The two-pane Sub-accounts layout: roster left with a DEMO badge and a deletion countdown, tab bar and Overview panels right (TenantWorkspace in TenantModal.tsx). Sample data — no customer information appears here.
How it works
  1. 1The roster shows status, demo badge, message count and the last thing said, with a live countdown on any account scheduled for deletion.
  2. 2Clicking an account writes the org and tab into the URL and paints the workspace beside it.
  3. 3The roster collapses to a thin rail so the account can take the width; the choice is remembered per browser.
  4. 4Each tab declares the capability it needs — a tab a staff member cannot use is not rendered at all.
  5. 5Every panel behind a tab is independently gated server-side.
  6. 6Last-known data is painted from a device cache immediately and replaced when the fetch lands.
Why we built it

The page header records the redesign: 'The first version led with the correspondence and hid the controls behind a button, which read as "a chat app with a settings link". Operating an account is the job; talking to them is one part of it.'. The tab gating carries its own reason: 'the alternative is a Payment-history tab that opens onto a 403, which reads as a broken product rather than as a boundary.'

The problem
  • Account facts and account correspondence lived in different places, so neither told the whole story.
  • Operating a customer meant opening a modal on top of a chat window.
  • A shared link to 'that account, that tab' did not exist.
Sound familiar?
What you get
One screen answers everything about a customer, including what was said to them.
Any staff member can be sent straight to the right tab of the right account by link.
Support sees only what their role allows, without hitting refusals.
What's inside
Account lifecycle status
One control that can express the whole vocabulary of account states — active, inactive, paused, suspended, banned, scheduled for deletion — with an optional reason logged alongside the change.
Plan changes and trial extensions
Move an account between plan tiers or push a trial out by a set number of days, both from the account's Overview with a branded confirmation.
24-hour scheduled account deletion
Deleting an account schedules it 24 hours out, shows a ticking countdown everywhere the account appears, and stays cancellable until the timer runs down.
Owner contact repair and password reset
Fix a wrong owner email or phone, issue a one-time sign-in link, or re-point the account at a different login when the stored one has gone stale.
Fix a customer's team and permissions from outside
Every user in a builder account with their role and their overrides, editable on the spot, so a 'my guy can't do X' call is fixed without impersonating anybody.
Crew repair tool
Inspect every crew in a builder's account from outside and fix the broken ones — install a lead, move the pending work to a crew that has one, rename, or delete an empty crew.
Create an account by hand
Create a builder account from the panel — name, subdomain, plan and optional owner — without making the customer go through the public signup first.
Payment history for one account
Every payment a builder has made, one row per invoice, expandable into line items, receipt, branded invoice, refunds and failed attempts — scoped strictly to that account's own subscription.
The signed agreement on file
The signup record behind an account: who signed, when, the frozen document version, the initialled sections, and a link to the full signed agreement.
Onboarding checklist per account
The checklist that turns a provisioned account into a running one — half of it ticking itself from real events, the rest owned by a named person with a due date.
Integrations setup done for you
The agency wires a builder's back-end integrations from the panel — auto-detecting the pipeline, mapping stages by name — and controls which integrations that builder ever sees.
Per-account messaging pricing dial
The only screen that ever shows base cost and markup: per-rate pricing for one account, plus month-to-date usage with revenue, cost and margin.
Customer messaging safety switch
Put one account's outbound customer email and text into live, redirected or off, so a test window cannot reach a real homeowner.
Demo accounts with volume presets
Mark a sub-account as a demo, then fill it at low, medium or high volume with invented people, projects and purchase orders that every board reads as real data.
Internal notes on an account
A running internal note stream on each builder account, with author and time, that the customer never sees.

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 →