Skip to Content
TroubleshootingCall Transfer Not Working

Call Transfer Not Working

Your agent attempts to transfer calls but the transfer fails or doesn’t complete to the intended recipient.

Symptoms

  • Agent initiates a transfer but the call drops
  • Transfer completes but goes to the wrong number or voicemail
  • No error message, but the call simply disconnects
  • Caller hears silence or is returned to the agent instead of the transferred party
  • Transfer works in testing but fails in production

Common Causes

  1. Testing transfers on web calls — Web widget calls don’t support phone-to-phone transfers; transfers only work with real phone calls
  2. Using Workflow Transfer node — The Workflow Transfer method has a known persistent bug and should not be used
  3. Incorrect phone number format — Destination numbers missing country code prefix (e.g., missing +1 for US numbers)
  4. Model incompatibility — Older LLM models may not reliably initiate transfers

Quick Fix:

Use the Function Call Transfer method instead of the Workflow Transfer node.

  1. Go to Agent ConfigurationFunction Calls
  2. Enable the “Transfer Call” function
  3. Set up parameters: destination number, caller ID (optional), reason (optional)
  4. Update your workflow to call this function instead of using the Transfer node
  5. Save and test with a real phone call

How to Fix

Step 1: Use Real Phone Calls, Not Web Calls

  1. Do not test transfers using the web widget in your dashboard
  2. Instead, test with a real phone call to your agent’s phone number
  3. Have the agent transfer you to a real destination number
  4. Web calls have a different architecture that doesn’t support phone-to-phone transfers

Step 2: Switch from Workflow Transfer to Function Call Transfer

  1. Open your Agent Workflow
  2. Find any “Transfer Call” nodes that use the Workflow Transfer method
  3. Delete these nodes and replace them with Function Call Transfer:
    • Go to Agent ConfigurationFunction Calls
    • Enable the “Transfer Call” function
    • Set up parameters: destination number, caller ID (optional), reason (optional)
  4. Update your workflow to call this function instead of using the Transfer node
  5. Save and test with a real phone call

Step 3: Verify Phone Number Format

  1. When specifying a transfer destination number, ensure:
    • US numbers: Use format +1XXXXXXXXXX (e.g., +12125551234)
    • International: Always include the country code with + prefix (e.g., +447911123456 for UK)
    • No hyphens, spaces, or parentheses - only digits and the + prefix
  2. Double-check the destination number is:
    • A real, active phone number
    • Not a landline that doesn’t accept inbound calls
    • Not a number that requires special dialing codes
  3. Update your workflow with the correctly formatted number

Step 4: Ensure Model Compatibility

  1. Go to Agent SettingsModel Configuration
  2. Verify you’re using GPT 4.1 or GPT 4.1-mini
  3. If using an older model, upgrade to one of the recommended models
  4. Save changes and re-test the transfer flow

Step 5: Test the Full Transfer Flow

  1. Call your agent’s phone number from a real phone
  2. Request a transfer through your agent’s conversation
  3. Verify that:
    • The destination phone rings
    • The transfer completes without dropping the call
    • You’re connected to the intended recipient
  4. If transfer still fails, check your Dialora billing and phone number status

Prevention Tips:

  • Always test transfers with real phone calls, never the web widget
  • Use Function Call Transfer method only — avoid Workflow Transfer nodes
  • Create a standardized phone number format for all transfers (with country codes)
  • Maintain a list of valid transfer destinations and validate them regularly
  • Test transfer functionality weekly to catch issues early
  • Use GPT 4.1 or 4.1-mini for all production agents handling transfers