Call transfers hand the live call off to a human or another endpoint. You configure them with the call transfer action, which decides where the call goes, how it gets there, and what the recipient hears when they answer.

Synthflow supports four transfer types. The right one depends on where the call needs to land and how the destination is decided.
The settings that control how the transfer behaves once a destination is chosen, such as transfer modes, office hours, hold music, and timing, apply to every transfer type and are documented in the sections that follow.

Phone number transfers (or TEL), route the call to a standard phone number in E.164 format. The same action works across any telephony connection, since the destination is just a number.
Phone number transfers are confirmed to work with Twilio and Telnyx. For other carriers or self-hosted PBX setups, use a SIP transfer instead.

SIP transfers route the call to a SIP URI such as a PBX, softphone, or SIP trunk. They are the right choice when TEL handling is not supported by your carrier or when you need to attach metadata to the transfer leg via custom X-headers. They work with any SIP-compatible endpoint, including Asterisk-based PBX systems such as FreePBX.
For prerequisites, setup, custom X-headers, supported URI formats, and security, see the dedicated SIP transfers page in the Telephony section. For broader telephony context, see our available SIP integrations, how to direct SIP dialing, and how to forward calls to a SIP trunk.

Dynamic transfers resolve the destination at call time from a value that is either injected by a pre-call webhook before the call starts, or returned by a custom action during the call. Use them when the right destination depends on caller input, real-time CRM lookups, or scheduling logic.
The custom action returns one or more candidate destinations, the agent picks the right one based on the conversation, and the transfer action reads the chosen value via template syntax ({results.data.phone_number}) or a bare variable name (phone_number). The system detects this pattern and configures the transfer as dynamic, extracting and normalizing the phone number at runtime.
The walkthrough below illustrates this flow with a customer support routing example.
Create a custom action that queries your CRM or routing system for available agents.
Endpoint: https://api.yourcompany.com/get-available-agents
Request:
Response:
In the action settings, enable status, results, and results.data under Available Action Results so the agent can read the response.
Your custom action can handle failures gracefully by returning multiple potential destinations, ordered by priority:
The agent attempts transfers in priority order if earlier attempts fail.
available flag on each destination so the agent knows which ones are reachable.priority for retry behavior.transfer-failed-timeout instead of dropping the call.
Phone books let you manage multiple potential transfer destinations from one place. The agent picks a destination based on the conditions you configure, so you can change targets without modifying every transfer action that uses them. A phone book can hold up to 50 numbers.
To create one, add each phone number along with the transfer condition that should route to it (for example, “caller asks for billing”).

The Transfer Settings tab controls how the handoff feels to the recipient and the caller, and how the transfer recovers when something goes wrong. These settings apply to every transfer type.
The controls available for each mode:
Shows the original caller’s number to the recipient instead of the Synthflow agent’s number.
Only works with numbers purchased directly from the Synthflow dashboard via the Twilio integration. Numbers from your own Twilio account, third-party providers, or custom SIP imports will cause the transfer to fail.
Waits for a live human to answer before playing the whisper message or summary, so the briefing doesn’t reach voicemail, an IVR, or empty air. The Human Detection Timeout (30 seconds to 30 minutes) sets how long the AI waits; if no human is detected in that time, the fallback behavior is triggered.
Human detection relies on hearing enough speech to distinguish a live person from silence, a beep, or an IVR menu. If the transfer recipient answers with only a brief “Hello,” the model may not have enough audio context to confirm a human is on the line. Ask your transfer recipients to use a longer greeting, for example “Hello, this is Sarah, how can I help you?” so the detector can classify the response reliably.
Controls how the AI summarizes the conversation for the recipient. Auto generates the summary automatically. Custom lets you define a prompt that guides what the summary covers, for example account numbers, issue categories, or caller sentiment.
The short whisper text the recipient hears before being connected. Supports variables.
Let the recipient ask questions and accept or decline the call before connecting.
Keeps recording the call after the handoff. Off by default.
These fields shape what the caller hears during the handoff:
The Human Availability schedule restricts transfers to specific days, time ranges, and timezones. When disabled, transfers are attempted at any time. When enabled, you set per-day availability hours, pick a timezone, and provide a “Human not available” message that the agent uses when a caller asks to be transferred outside of those hours, for example “There is no-one available to take your call at the moment. Please try again later.”
Use this when your destination is staffed during business hours only, or when out-of-hours calls should fall back to a message instead of a transfer attempt.
Background music plays while the call is being transferred so the caller hears something other than silence. Toggle Enable Background Music in the action settings and pick a music type from the available options (Classical, Ambient, Modern Jazz). You can preview each option before saving.
Background music is not available during cold transfers.
The Advanced Settings tab fine-tunes timing and DTMF behavior.
The Extension field does not work for cold transfers.
Every transfer produces one of five outcome states, tracked in your call records and available via the API. Use these states to monitor transfer performance, configure fallback behavior, and debug issues.
How the agent responds to a failed transfer depends on the transfer mode:
Cold transfers cannot recover from failures. If reliability is critical, use warm transfers to allow graceful fallback behavior.
For warm transfers, you can configure fallback behavior:
transfer-failed-timeout.When you configure a call transfer action, you can type placeholders with angle-bracket names, for example <case_id> or <department>, directly in the fields below. Each distinct name becomes an input variable on that transfer action.
After you attach the transfer to an agent, open it from the agent’s Actions tab and map each input: bind it to a fixed value or to any variable your agent or flow already provides (collected during the call, system fields, pre-call data, another action’s results, and so on).
You can introduce those placeholders here on the transfer action:
Example: On a SIP transfer action, the SIP Headers section sets header X-Reference to <queue_ref>. That defines one input variable named queue_ref. After the same transfer is added to a flow, the Input variables panel lists queue_ref. Here it is mapped to data returned by an earlier action result of a custom action, so the receiving side gets a stable correlation id on the SIP leg without hard-coding it in the action template.

A cold transfer connects the caller to the destination immediately without briefing the recipient. A warm transfer first plays a private whisper message or AI-generated summary to the recipient, then connects the caller. Warm transfers also support human detection, retries, and fallback behavior; cold transfers do not.
Only on cold transfers, which use SIP REFER to pass the caller’s number through. Warm transfers create a new call leg over SIP INVITE, so the receiving party sees the Synthflow agent’s number instead. Caller ID passthrough also depends on your telephony provider supporting SIP REFER.
Warm transfers create a new outbound call leg from Synthflow, so the receiving party sees the agent’s number by default. Enable Preserve original caller ID (Twilio-via-Synthflow numbers only) to override this behavior.
Enable Human Detection on the warm transfer so the whisper or summary is only delivered when a live human is detected on the line. Use the Human Detection Timeout to control how long the AI waits before marking the transfer as failed.
Warm transfers can retry or fall back to alternate behavior on transfer-failed-timeout, transfer-failed-connection-error, transfer-cancelled, or transfer-screening-rejected. Cold transfers cannot recover from a failure: if the destination does not answer, the call ends.
Yes for SIP-compatible endpoints (PBX systems, SIP trunks, softphones such as Asterisk and FreePBX). TEL URI transfers are confirmed to work with Twilio and Telnyx; for other carriers or self-hosted PBX setups, use a SIP transfer instead.
Switch the transfer mode to warm so Synthflow uses SIP INVITE instead, or configure your PBX to accept SIP REFER from Synthflow’s IP range. SIP INVITE is universally supported.
Not at this time. Use IP-based ACLs against Synthflow’s outbound IP addresses to secure inbound traffic.
Yes. Pre-call webhook variables are resolved before the call connects; custom action results are resolved during the call. You can use either (or both) anywhere a transfer field accepts variables.
A phone book is a static list of destinations curated in the Synthflow UI; the agent picks one based on conditions you configure. A dynamic transfer fetches the destination at runtime from your own systems, which is the right choice when the target depends on real-time data such as on-call schedules or CRM ownership.
Yes. Any valid phone number can go into a phone book, including numbers assigned to your other Synthflow agents. This lets you build transfer flows between agents.
There is no limit on the number of phone books. Each phone book can contain up to 50 phone numbers.
Yes. The same number can appear in multiple phone books with different transfer conditions in each.
The agent does not transfer the call and continues the conversation normally.