What it unlocks
- Provision phone numbers into your own Twilio account instead of Kapso’s shared account
- Support multiple countries in the same project
- Keep reusable project-owned pools per country
- Use project-owned pre-verified numbers for faster onboarding
Plans
- Enterprise: included
- Pro, Team, Platform: available as a
$400/moadd-on on the existing project subscription - Free and Legacy: visible in the UI, but cannot be enabled
How custom Twilio works
Configure this in Project settings → Custom Twilio. You add Twilio credentials at the project level. Once active, Kapso uses that Twilio account for number search, provisioning, and pool maintenance for that project. You can configure:- a default country
- multiple allowed countries
- per-country overrides for regulatory bundle and address data
Custom Twilio changes phone ownership. These numbers belong to the project’s Twilio account, not Kapso’s shared pool.
What to set
Required
Account SID: the Twilio account Kapso should use for search and provisioningAuth token: required for webhook validation and for Twilio client auth when API keys are not used
Optional
API key SIDAPI key secret
Country configuration
Allowed countries: the ISO country codes this project is allowed to provision inCountry overrides: per-country regulatory values used when Twilio requires them
Allowed countries to keep provisioning scoped to the countries you actually support.
Use country overrides when a specific country needs different regulatory setup than your project default. In v1, the main fields are:
Bundle SIDAddress SID
Why these fields matter
Account SIDdecides which Twilio account owns the numberAllowed countriescontrols where setup links and embedded signup are allowed to provisionBundle SIDandAddress SIDare how you satisfy country-specific Twilio compliance requirements- pool settings decide whether onboarding can use a ready pre-verified number or has to fall back to live provisioning
How project pools work
Project pools are Twilio-only in v1. Each project can keep multiple pools, with one pool per country. A pool config includes:countryenabledtarget pool sizepost disconnect behavior
What each pool setting does
Country: which country this pool coversEnabled: whether Kapso should actively maintain the poolTarget pool size: how many ready project-owned numbers Kapso should keep available for that countryPost disconnect behavior: what happens after a WhatsApp config is removed from a pool-managed number
Pre-verified project pools
When a pool has ready numbers for a country, Kapso can pass those pre-verified numbers into the onboarding flow and skip the normal OTP step. This only works when the project uses:- custom Twilio
- Kapso-managed Meta credentials
- an enabled pool with ready numbers for the requested country
Embedded signup behavior
Kapso resolves the number path in this order:- Matching project pool with a ready pre-verified number
- Live provisioning through the project’s Twilio account
- Standard Kapso behavior when custom Twilio is not enabled
- if a matching pool exists, onboarding can skip OTP
- if no matching pool exists, onboarding still works
- pooled and non-pooled countries can coexist in the same project
Setup links behavior
Setup links use the same logic as embedded signup. If a setup link requests a country that has a ready project pool, Kapso uses that project-owned pre-verified path. If the setup link requests a country without a pool, or the pool is empty, the setup link still works. Kapso falls back to live Twilio search and provisioning for that country.Disconnect behavior
Each pool has a default disconnect policy:mark_unavailable: keep the number on the project, but do not reuse it for WhatsApp againreturn_to_pool: keep the number on the project and make it reusable by that same project’s pool
Typical setup
- Enable the add-on, or use Enterprise
- Add custom Twilio credentials
- Add allowed countries
- Create one pool per country you want pre-verified capacity for
- Set target size and disconnect behavior
- Use embedded signup or setup links normally
When to use it
Use Bring your own Twilio when you need:- local non-US numbers
- numbers billed directly to your Twilio account
- project-owned reusable inventory
- instant onboarding from your own pre-verified pool

