> ## Documentation Index
> Fetch the complete documentation index at: https://www.bolna.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Production readiness checklist for voice AI agents

> Everything to verify before a Bolna Voice AI agent starts calling real customers: telephony, compliance, quality, observability, concurrency, cost, and failure handling.

Run this before the first campaign, not after the first incident. Each item links to the page that does the work.

## Telephony and numbers

* [ ] Production number is provisioned — [bought from Bolna](/docs/buying-phone-numbers), or on your own [Twilio](/docs/twilio), [Plivo](/docs/plivo), [Exotel](/docs/exotel), [Vobiz](/docs/vobiz) account or [SIP trunk](/docs/sip-trunking/byot-setup)
* [ ] Inbound calls are routed to the right agent — [Route inbound callers](/docs/agent-setup/inbound-tab)
* [ ] Caller ID displays correctly at the destination, including internationally
* [ ] For India: DLT and number-series requirements met — [India DLT compliance](/docs/compliance-application/introduction); [Truecaller verification](/docs/truecaller-verification) if branding matters

## Conversation quality

* [ ] At least 20 test calls made on the production configuration — [Test before you call real customers](/docs/production/test-before-calling-customers)
* [ ] Interruption and latency settings tuned on real calls — [Tune interruptions and speed](/docs/agent-setup/engine-tab)
* [ ] Transcriber verified against your actual vocabulary and languages — [The agent mishears words](/docs/troubleshooting/agent-mishears-words)
* [ ] Escalation path tested end to end — [Transfer a call to a human](/docs/tool-calling/transfer-calls)
* [ ] Agent behaves sensibly on voicemail, wrong numbers, and silence — [End a call automatically](/docs/outbound/hangup-calls)

## Compliance and guardrails

* [ ] Calling-hour restrictions enabled — [Set guardrails and quiet hours](/docs/outbound/calling-guardrails)
* [ ] Do-not-call handling in place — [Block unwanted callers](/docs/customizations/block-incoming-callers)
* [ ] Recording, retention and data-residency requirements confirmed — [Security and data handling](/docs/concepts/security), [Where your data lives](/docs/enterprise/data-residency)

## Observability

* [ ] Webhook endpoint live, with all three Bolna IPs whitelisted — [Get results with webhooks](/docs/post-call/polling-call-status-webhooks)
* [ ] Your handler acts on `completed`, not `call-disconnected`
* [ ] Extractions defined for the fields the business actually needs — [Extract data from conversations](/docs/prompting/using-extractions)
* [ ] Someone owns a daily review of failed calls — [Calls fail or drop early](/docs/troubleshooting/calls-fail-or-drop-early)

## Scale and cost

* [ ] Concurrency requirement calculated and provisioned — [Plan concurrency](/docs/enterprise/concurrency-management)
* [ ] Cost per call measured on real traffic, not estimated — [Control cost per call](/docs/production/control-cost-per-call)
* [ ] Wallet balance monitored, with an alert before it can block calls
* [ ] Retry policy defined — [Handle failures and retries at scale](/docs/production/failures-and-retries-at-scale)

## Access

* [ ] Team members invited with the right roles — [Manage your organization and team](/docs/enterprise/organization)
* [ ] Client or business-unit separation set up if needed — [Manage multiple clients](/docs/enterprise/sub-accounts)
* [ ] API keys rotated out of anything shared during development

***

<Tip>
  Ship the first campaign small and deliberately: a few hundred calls to a known segment, reviewed manually the same day. The checklist catches configuration gaps; only real traffic catches prompt gaps.
</Tip>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.