posted in
How do you handle provider accounts and billing when going multi-tenant with an outbound AI voice dialer?
I run an outbound AI voice system in production for one client. Dashboard, dialer, CRM sync, calendar booking, spend caps, the whole thing on a single server.
Now I need to support 5 to 10 more clients, each with their own dashboard and their own dialing. I understand the application side, one codebase, tenant id on everything, per-tenant config and limits. What I am unsure about is the provider layer.
The stack is Telnyx for telephony, Vapi for the voice agent, and GoHighLevel as the CRM.
Two models I can see:
1. I hold the master accounts and create a sub-account per client. Telnyx Managed Accounts, Vapi Organizations, GHL sub-accounts. I bill the client for usage and keep a margin. I carry the float and the fraud risk. Each client owns their own Telnyx and Vapccess. No float, no billing risk, no marginon usage, and I manage 5 to 10 sets of credentials.
Questions for anyone who has done this:
- Which model did you land on, and what made you pick it?
- If you went with sub-accounts, how did you handle a client who runs up spend or gets numbers flagged? Did per-tenant caps in your own queue turn out to be enough?
- Telnyx Managed Accounts appears to be gated behind a higher plan tier. Is that worth moving up for, or did you find another way?
- For anyone billing usage through, how do you reconcile provider costs to tenants when the provider only retains call detail for a limited window?
Not looking for a Kubernetes answer. Ten tenants, not ten thousand.
TLDR: expanding a proven system, not designing a dialer from scratch

