> ## Documentation Index
> Fetch the complete documentation index at: https://onextel-09023014.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# WhatsApp Voice troubleshooting

> Fixes for the most common WhatsApp Voice problems: no call button, calls that fail, silent calls and one-way audio.

Start with the symptom you see, then follow the checks in order.

## The call button does not appear

| Likely cause | What to do |
| - | - |
| Calling is not yet enabled on the number. | Ask your OneXtel account team to confirm the number is configured. |
| WhatsApp has not refreshed the button yet. | Open the chat with the business number and tap its name once. This forces a refresh. Meta notes that changes can otherwise take a while to reach customers. |
| The customer is on an unsupported device. | WhatsApp calls to a business work on iPhone and Android. Web and desktop are not supported. |
| The business hours or call icon setting hides the button. | Ask your account team to check the number's calling settings. |

## The call fails straight away

| Likely cause | What to do |
| - | - |
| The number is not configured. | Confirm onboarding is complete and that a trunk is attached. |
| Your platform is not reachable from the gateway. | Check the firewall allows the OneXtel gateway addresses on your signalling port. |
| Your trunk is at its call limit. | Raise the maximum calls on the trunk, or attach a second trunk. |
| Your platform rejected the call. | Look in your platform's logs for the incoming INVITE and the response it gave. Busy and decline responses are passed back to the caller. |
| Every trunk failed. | The gateway tries each trunk in priority order. If all fail, the call is refused. Check each one. |

## Your platform answers with an error

When your platform refuses a call, the gateway records its answer: the status code, the reason text and the
server that sent it. Use the code to find the cause.

| Answer from your platform | What it usually means | What to do |
| - | - | - |
| `404`, for example "Does not match any SIP Trunks" | Your platform found no trunk, number or agent matching the address it was sent. | Check the identifier. Use a fixed SIP user, exactly as imported on your platform, including capital letters and any leading plus. The request line and the `To` header both carry it. |
| `401` or `407` | Your platform wants a username and password. | Username and password authentication of your trunk is not available yet. Allow the gateway's addresses by IP instead. |
| `403` | Your platform refused the source or the caller. | Check that the gateway's addresses are allowed, and any list of permitted callers. |
| `480`, `486`, `600` or `603` | Unavailable, busy or declined. For example a voice AI agent that is at its limit. | Passed back to the caller as it is, unless the trunk is set to try the next trunk. Check your platform's availability, and consider a backup trunk (see below). |
| `5xx`, or no answer | Your platform failed or did not respond in time. | The gateway tries the next trunk, if there is one. Check your platform's health. |

## The call rings for a long time and then fails

The caller hears ringing, then the call fails. In the gateway's record, your platform answered "Ringing" and then
either rejected the call (`486`, "Rejected" or "Busy") or never answered. The gateway delivered the call, so look at
your platform: the agent or queue it should reach may be unavailable, busy, at its concurrency limit, or out of
credit.

To keep callers from waiting, set up a fallback:

1. Attach a **backup trunk** to the number (a second platform, a human queue or voicemail) with a later priority.
2. On the main trunk, set a **ring limit** of a few seconds.
3. Turn on **try the next trunk** so a rejection moves on too.

See [Failover and fallback](/guides/whatsapp-voice/connect-your-voice-platform#failover-and-fallback).

## The call connects but there is silence

This is the most common problem. The call is established, but neither side hears anything.

<Steps>
  <Step title="Does your platform send audio first?">
    WhatsApp waits for the business side to send the first audio packet. Make your platform start
    sending a greeting, music or silence the moment it answers.
  </Step>

  <Step title="Is audio allowed through your firewall?">
    Allow the OneXtel gateway to send audio to the address and port in your SDP answer, and to receive from you.
  </Step>

  <Step title="Is the address in your SDP reachable?">
    Behind NAT, advertise your public audio address, not a private one.
  </Step>

  <Step title="Did you accept a codec the gateway offered?">
    Your SDP answer must pick a codec from your trunk's accepted list.
  </Step>
</Steps>

## Audio goes one way only

* If the caller hears you but you do not hear them, check that your platform accepts audio from the gateway's
  address and that symmetric RTP is on.
* If you hear the caller but they do not hear you, check that your platform sends audio to the address and port
  in the gateway's SDP, not to the signalling address.

## Keypad tones are not recognised

Customers can press keys on a keypad during a call, and the key presses are passed to your platform as RFC 4733
telephone-events. If your platform does not react to them, check that:

* your SDP answer includes `telephone-event/8000`, using the payload type from the gateway's offer, and
* your platform reads RFC 4733 events. It will not see the digits as audio tones or as SIP INFO messages.

See [Protocols and media](/guides/whatsapp-voice/protocols-and-media#keypad-tones-dtmf).

## The call drops after a while

Check that your platform answers every re-INVITE and does not use a session timer that the call fails to
refresh. If calls end at a regular interval, tell your account team the interval.

## Reporting a problem

Send your OneXtel support contact:

1. Your WhatsApp Business number.
2. The date, time and timezone of the call.
3. What the caller experienced, in a sentence.
4. The `X-WA-Number` value from your platform's log of the INVITE, if you have it.

OneXtel can then find the call record, which shows how far the call got, how it ended, and whether audio flowed
both ways.

### What OneXtel can see

For every call the gateway keeps a timeline of the SIP messages, for troubleshooting:

* the call arriving from WhatsApp,
* the INVITE sent to your trunk, with the request line and `To` header, and
* each reply from your platform, with its status code, reason text and server name.

Audio, credentials and full caller numbers are not included, and the timeline is kept for 30 days. Ask your
OneXtel support contact to look up a call by number and time.

## Related

* [Connect your voice platform](/guides/whatsapp-voice/connect-your-voice-platform)
* [Protocols and media](/guides/whatsapp-voice/protocols-and-media)


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