---
schema: 4
type: case
id: 13
title: "One platform, many client voice agents, no per‑client code"
description: "The multi-tenant foundation we start client builds from: onboard a client with configuration, and swap vendors without touching the core."
created: 2026-10-20
updated: 2026-10-20
attributes:
  channels: [website]
  status: published
  motif: platform
  kind: own
  client: "h1902y"
  year: 2026
  state: "In build"
  stack: ["Next.js", "TypeScript", "Supabase", "Postgres", "Retell", "Vercel"]
  timeline: "In active build"
  featured: true
---

## Problem

Every voice-agent project was starting from zero: sign-in, data, tenancy and the vendor connections. That is where most of the first weeks go.

## What we built

- Each client is a tenant: rows in the database plus validated configuration, with draft and published versions
- Row-level security keeps each tenant’s data separate in Postgres
- A vendor-free core. Vendors such as Retell, Salesforce, email and telephony are plugs behind clear boundaries, enforced by a lint rule
- A single command onboards a new client from a configuration file
- Industry playbooks (real estate and dental so far) so a new agent starts from a tested script

## Outcome

- 167 automated tests passing
- Six recorded design decisions covering tenancy, plugs and pricing
