https://retellai.com/?utm_source=discord&utm_medium=seo logo
I'm building a voice AI product and want to pass t...
# ❓・ai-evy-support
r
@AI Evy I'm building a voice AI product and want to pass through the caller's number on warm transfers to supervisors. I'm using Twilio and getting 403 "Caller ID is unauthorized" when setting From + PAI on outbound SIP INVITE. Has anyone here gotten caller ID override to work with Twilio? Is Elastic SIP Trunking the right product for this, or should I be looking at SIP Domains / Programmable Voice SIP?
a
Thanks for tagging me @radioactive11. I'll look through relevant sources and get back to you shortly.
### Answer Retell AI supports caller ID override for warm transfers, and Elastic SIP Trunking with Twilio is the recommended approach. [(1) ]() [(2) ]() For the caller ID configuration on warm transfers, you can set it to show the User's Number (the original caller's number) to the transfer destination. [(1) ]() Here's what the documentation states about how this works for warm transfers specifically: - For warm transfer, Retell uses SIP DIAL and sets the
from
and
P-Asserted-Identity
headers to the user's number. - Retell Twilio numbers support showing user's number on both warm and cold transfer. However, there's an important caveat: "If caller id override is not supported, the transfer would fail." The 403 "Caller ID is unauthorized" error you're seeing suggests the telephony provider isn't accepting the caller ID override. A few things to verify: 1. Ensure your number is properly imported via Elastic SIP Trunking - This is the recommended integration method for custom telephony with Retell AI. [(2) ]() 2. Verify your Twilio SIP trunk configuration - The termination and origination URIs need to be correctly configured, and authentication must be set up properly (via IP whitelisting or credentials) . [(3) ]() 3. Check Twilio's caller ID verification requirements - Twilio may require the caller ID number to be verified or owned within your account for outbound calls. Elastic SIP Trunking is indeed the right product for this use case when integrating with Retell AI. [(2) ](
ony)
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
​ To learn more, see the sources I considered: [[1] Call Transfer Node](https://docs.retellai.com/build/conversation-flow/call-transfer-node) [[2] Custom Telephony Overview](https://docs.retellai.com/deploy/custom-telephony) [[3] AI in SIP Calling & Telephony Solutions | Retell AI](https://www.retellai.com/blog/integrating-ai-with-sip-trunking-and-modern-telephony) ​