Twilio Voice configuration
Optional in-app VOIP for users on the Premium plan.
Teleperson supports Twilio Voice as an optional in-app VOIP layer. When configured, Premium-tier users can place calls to verified phone numbers directly from the side panel without leaving the browser. This is distinct from the Voice Concierge, which is an ElevenLabs-powered AI agent.
What you configure
In the Voice tab of the Admin Dashboard:
| Field | Purpose |
|---|---|
| Twilio Account SID | Your Twilio account's SID. |
| Token endpoint URL | A serverless endpoint you operate that mints short-lived Twilio access tokens for end users. |
| Default caller ID | The verified Twilio number used as the From number for outbound calls. |
| Allowed regions | Country/region codes the calling feature is enabled in (e.g. US, CA). |
Why a token endpoint
Twilio access tokens are short-lived (hours, not weeks) and must be minted server-side with your Twilio Account SID + Auth Token. To keep secrets out of the extension, you operate a small endpoint that:
- Authenticates the calling user (via Teleperson's
X-TLE-Token). - Verifies the user is on a plan that has VOIP enabled.
- Mints a Twilio access token scoped to that user's identity.
- Returns the token to the extension.
A reference implementation lives at
supabase/functions/twilio-mint-token/
in the repo. Deploy it to your Supabase project and paste its URL here.
Plan gating
VOIP is a Premium feature in the default Teleperson plan model. The plan
gating happens in the token endpoint — free-tier users get a 403 rather
than a token. The extension's UI reads the user's plan from their profile
and hides the Call button proactively, but the server-side check is the
authoritative gate.
Per-call audit
Every successful call appends an entry to voice_call_log:
user_id_hash, to_number_hash (SHA-256 of E.164 form), duration_seconds,
outcome (answered, voicemail, failed). The raw destination number is
not logged — only its hash. This is consistent with the rest of Teleperson's
telemetry posture.
Related
- Voice Concierge → — the AI alternative.
- ElevenLabs Voice AI config → — companion to this page.