Tip: When contacting Plivo Support, include: Call UUID, timestamp (with timezone), phone numbers involved, and hangup cause. Find these in Voice > Logs > Calls.
Why are my outbound calls failing?
| Hangup Cause | Meaning | Solution |
|---|---|---|
destination_country_barred | Country not enabled | Enable in Voice > Geo Permissions |
unknown_caller_id | Non-Plivo caller ID | Use a Plivo-rented number |
dno_caller_id | Number on DNO list | Use a different caller ID |
out_of_credits | Insufficient balance | Add credits to account |
Why are inbound calls not reaching my application?
Checklist:- Number not assigned - Verify the number is linked to an application in Phone Numbers > Active
- Answer URL misconfigured - Check URL is correct in application settings
- Server unreachable - Ensure your answer URL is publicly accessible (not localhost)
- SSL certificate invalid - Use valid HTTPS certificate
- Server timeout - Server must respond within 15 seconds
Why do I have one-way audio on calls?
One-way audio typically indicates a firewall or NAT issue. Checklist:- Open firewall ports - RTP media uses UDP ports 10000-30000
- Whitelist Plivo IPs - See Plivo IP Addresses
- Check NAT settings - Symmetric NAT may require TURN server
- Test from different network - Isolate if issue is network-specific
| Type | Ports |
|---|---|
| SIP Signaling | 5060 (UDP/TCP), 5061 (TLS) |
| Media (RTP) | 10000-30000 (UDP) |
Why are my recordings missing?
Checklist:- Recording enabled? - Verify
record=truein API call or<Record>XML element - Call too short - Very short calls may not produce recordings
- Check callback - Recording URL is sent to
recording_callback_url - Still processing - Recordings may take a few minutes after call ends
- Storage location - Check Voice > Logs > Recordings in console
| Issue | Solution |
|---|---|
| Recording not enabled | Add record=true parameter or <Record> XML |
| Callback URL failing | Verify your server returns HTTP 200 |
| Recording URL expired | Download promptly or use Recording API |
| Call had no audio | Check for one-way audio issues |
Why do I get “Invalid Answer XML” or “Error Reaching Answer URL”?
Error Reaching Answer URL - Your server returned non-2xx HTTP response:- Server not running or crashed
- URL not publicly accessible (localhost won’t work)
- Firewall blocking Plivo requests
- SSL certificate invalid
- Response timeout (must respond within 15 seconds)
- XML syntax error (missing closing tags, invalid characters)
- Missing
<Response>root element - Using unsupported XML elements
- Wrong content-type header
Why do I get “Violates Media Anchoring” error for India calls?
India PSTN regulations require both call legs to originate and terminate within India. Requirements:| Call Type | Requirement |
|---|---|
| Outbound | Your application server must be hosted in India |
| Inbound | Answer URL server must be in India |
| Conference | All participants must be in India; no mixing PSTN with WebRTC |
- Your server is outside India
- Call bridges to international destination
- Conference mixes India PSTN with non-India participants
Why are my calls to [country] failing with “destination_country_barred”?
Geo permissions control which countries you can call. By default, only US or India is enabled (based on account currency). To enable a country:- Navigate to Voice > Geo Permissions in console
- Find the country and toggle to enable
- For high-risk destinations, additional approval may be required
How do I find call logs and debug information?
- Navigate to Voice > Logs > Calls in Plivo Console
- Filter by date, number, or Call UUID
- Click on a specific call to view:
- Hangup cause and code
- Call flow timeline
- Debug logs (XML requests/responses)
- Error messages
Why is my caller ID not displaying correctly?
Common causes:| Issue | Cause | Solution |
|---|---|---|
| Caller ID blank or “Unknown” | Using non-Plivo number | Use Plivo-rented number as from |
| Caller ID shows wrong number | Call transfer not preserving CLI | Set callerName in Dial XML |
| International caller ID not showing | Carrier doesn’t support | Varies by destination carrier |
Why do I get “Endpoint Not Registered” errors?
This means the SIP endpoint or Browser SDK client is not connected. Checklist:- Endpoint online? - Check status in Voice > Endpoints
- Correct credentials - Verify username/password in SIP client
- Internet connectivity - Confirm device has stable connection
- Multiple registrations - Same endpoint can register on multiple devices
- HTTPS required (secure context)
- Microphone permission granted
- Use endpoint credentials, not Auth ID/Token