# AI Voice Agent + SIP trunk: SIP BYE / end call handling

**URL:** <https://community.retellai.com/t/ai-voice-agent-sip-trunk-sip-bye-end-call-handling/764>\
**Category:** Support Help\
**Created:** [February 5, 2026, 11:32am UTC](https://community.retellai.com/t/ai-voice-agent-sip-trunk-sip-bye-end-call-handling/764 "2026-02-05T11:32:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Emanuele\_Pizzo](https://yyz2.discourse-cdn.com/flex008/user_avatar/community.retellai.com/emanuele_pizzo/32/483_2.png) [@Emanuele\_Pizzo](https://community.retellai.com/u/Emanuele_Pizzo)\
**Post date:** [February 5, 2026, 11:32am UTC](https://community.retellai.com/t/ai-voice-agent-sip-trunk-sip-bye-end-call-handling/764/1 "2026-02-05T11:32:16Z")

</div>

Hi everyone,  
I’m testing several **AI voice agent platforms over SIP trunking** (ElevenLabs, VAPI, and now RetellAI) and I’m running into a recurring issue around **SIP call termination handling**.

In short:

- When the SIP provider sends a **BYE** (caller hangs up), the AI session **doesn’t always terminate immediately** and may continue until an internal timeout.

- When the AI agent ends the conversation (end call), a **SIP BYE is not always sent** toward the SIP provider, leaving the call active on the SIP side.

- In many cases there’s **no explicit API** to force a SIP BYE, so the usual workaround is using end-of-call webhooks and handling SIP teardown in your own PBX/SBC.

Questions:

- Does RetellAI handle **inbound and outbound SIP BYE** automatically?

- Is there any API or control to explicitly terminate the SIP call?

- Has anyone implemented reliable **call transfer / human handoff** (SIP REFER / re-INVITE) with AI agents?

Any real-world experience or architectural advice on achieving **deterministic call control** with AI + SIP would be greatly appreciated.

---

<div class="post-metadata">

**Author:** ![support2](https://yyz2.discourse-cdn.com/flex008/user_avatar/community.retellai.com/support2/32/15_2.png) [@support2](https://community.retellai.com/u/support2)\
**Post date:** [February 5, 2026, 11:32am UTC](https://community.retellai.com/t/ai-voice-agent-sip-trunk-sip-bye-end-call-handling/764/2 "2026-02-05T11:32:46Z")

</div>

Based on the available documentation, here’s what I can confirm about Retell AI’s SIP handling:

**SIP Integration Methods**

Retell AI supports two primary methods for SIP integration[(1)](https://docs.retellai.com/deploy/custom-telephony):

1. **Elastic SIP Trunking** (recommended) - Connect your telephony provider’s SIP trunk directly to Retell
2. **Dial to SIP URI** - Your system dials calls to Retell’s SIP server at `sip:sip.retellai.com`[(1)](https://docs.retellai.com/deploy/custom-telephony)

**SIP Server Details**

Retell’s SIP server supports multiple transport methods[(1)](https://docs.retellai.com/deploy/custom-telephony):

- TCP (Recommended): `sip:sip.retellai.com;transport=tcp`
- UDP: `sip:sip.retellai.com;transport=udp`
- TLS: `sip:sip.retellai.com;transport=tls`

Media encryption via SRTP is supported when using TLS transport[(1)](https://docs.retellai.com/deploy/custom-telephony).

**Call Transfer Capabilities**

Retell AI does support call transfer functionality[(1)](https://docs.retellai.com/deploy/custom-telephony)[(2)](https://www.retellai.com/blog/best-vapi-alternatives-for-enterprise-voice-ai). When using SIP trunking, you can configure your provider to allow SIP REFER for cold transfers with the transferee’s number showing as caller ID[(1)](https://docs.retellai.com/deploy/custom-telephony). However, the documentation notes that different telephony providers may or may not honor custom SIP headers in the REFER request - specifically, Twilio does not honor custom SIP headers in REFER requests[(3)](https://retell.discourse.group/t/help-on-twilio-did-questions/24).

Retell also supports warm transfer capabilities natively[(2)](https://www.retellai.com/blog/best-vapi-alternatives-for-enterprise-voice-ai), which enables seamless handoff to human agents[(2)](https://www.retellai.com/blog/best-vapi-alternatives-for-enterprise-voice-ai).

**Webhooks for Call Events**

Retell provides webhooks that push real-time data for events including `call.started`, `call.ended`, and `call.analyzed`[(4)](https://www.retellai.com/glossary/webhook). These webhooks are event-driven HTTP callbacks secured with signatures[(4)](https://www.retellai.com/glossary/webhook).

**Important Note on SIP BYE Handling**

I don’t have explicit documentation about how Retell handles inbound SIP BYE messages or whether there’s an API to explicitly send outbound BYE messages. The available sources don’t detail the specific SIP signaling behavior you’re asking about.

For deterministic call control and explicit SIP teardown, I recommend checking out Retell’s telephony partners mentioned in the documentation, particularly Jambonz, which is described as “a SIP server that supports static IP address, mutual TLS, and can be used to connect to Retell’s SIP server to manipulate the SIP call flow”[(1)](https://docs.retellai.com/deploy/custom-telephony).

Would you like me to provide a general answer based on common SIP/VoIP practices, or would you prefer to reach out to Retell’s support channels for specific implementation details?

\*\*
