Accounts on another CRM's texting don't get a phone module

One rule decides whether an account has an in-house phone, and every surface — dock, launcher, token, automations — obeys it.

What it is

A single derivation: an account is on the other CRM when its live SMS binding is that CRM and it has no active in-house SMS or voice binding of its own. Those accounts get no phone dock, no launcher, no voice token and no call-driven automations. Everyone else does.

Also called: phone doesn't show up · no dialer for my account · GHL texting

See it
Accounts on another CRM's texting don't get a phone module
🔒ridgelinepostframe.com/project/phone-101
Riding Arena
Framing · on schedule
Two header screenshots side by side: one with the phone icon, one without, for accounts on different providers. PhoneLauncher.tsx. Sample data — no customer information appears here.
How it works
  1. 1A pure function over the account's provider bindings, shared by the browser and the server
  2. 2The client hides the launcher, the dock and the incoming banner entirely
  3. 3The softphone mints no token and creates no device
  4. 4The server-side lookup fails OPEN on a query error, because a transient read failure should not take a working builder's phone away
  5. 5Callers gating a WRITE use the explicit-false check instead
Why we built it

A builder whose texting runs through a connected CRM has no carrier sub-account, no line and no calling identity, so the in-app phone cannot work for them — but the dock, the launcher and the pipeline automations each decided that for themselves. Two definitions of "does this account have a phone" means two answers, and the one that drifts is the one that silently advances a lead's stage for a builder who never placed the call. One rule now decides, and every surface obeys it.

The problem
  • Dead phone UI for accounts with no telephony
  • Two definitions of the same capability drifting apart
  • Automations firing for accounts they do not apply to
Sound familiar?
What you get
No dead controls
One rule, one answer, everywhere
A transient database error never removes a working phone

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 →