Skip to main content
The [TRANSFER:] tag forwards the active call to a different phone number. Nixflex supports both cold and warm transfers, controlled per-agent.

Cold vs warm at a glance

Configuring transfer type

Transfer type is set per agent via the transfer_type field on the agent (cold or warm). It applies to every transfer that agent performs — inbound calls, outbound calls, and batch campaigns all use the same setting.
Each agent has one transfer type. If you need cold for some callers and warm for others, create two agents with the same prompt and voice but different transfer_type, then attach them to different phone numbers (or pick the right agent when starting an outbound call).

How to trigger a transfer

The agent emits the [TRANSFER:] tag when the system prompt tells it to. The tag never gets spoken — the engine strips it before audio plays.
You can also list multiple numbers in the prompt. The agent will try the first one; if it does not answer, it automatically tries the next one without asking the caller for permission.
This auto-fallback is built into the AI behavior — no extra configuration required.

Cold transfer flow

  1. The agent says: “Hold on, I’ll put you through to our manager now.” then emits [TRANSFER:+44...].
  2. The engine waits for the audio to finish, then closes its stream.
  3. The telephony provider dials the destination, 10-second timeout.
  4. If picked up: the caller and destination are connected directly. The AI steps out. The call record gets ended_reason: transferred.
  5. If no answer / busy / failed: the caller reconnects to the AI. The agent is told about the failed attempt and either tries the next number or offers a callback.

Warm transfer flow

  1. The agent says: “Let me get the manager on the line for you, one moment.” then emits [TRANSFER:+44...].
  2. The engine dials the destination on the same call - the caller hears normal ringing, 10-second timeout.
  3. When the destination picks up, they hear a short whisper in your agent’s voice — either the static transfer_whisper you configured, or an AI-generated 1–2 sentence summary from the conversation. The caller keeps hearing ringing while the whisper plays.
  4. After the whisper, the destination is connected directly to the caller.
  5. If the destination doesn’t answer: the caller reconnects to the AI. Same fallback behaviour as cold transfer.

Customizing the warm whisper

By default, the agent auto-generates the whisper from the live conversation. To override with your own briefing, set transfer_whisper on the agent:
Leave it null (default) for auto-generation. Auto-generation gives the human richer context but adds a couple seconds of latency.

Telling the agent when to transfer

Be specific in the prompt about transfer triggers and which number maps to which scenario:
The agent reads these rules every turn and applies them automatically.

When the caller hangs up during transfer

No special handling needed. The call simply ends. The call record reflects what happened:
  • Transfer completed and either party hung up → ended_reason: transferred
  • Caller hung up while waiting for the destination → ended_reason: caller_hangup

Failure handling — what really happens

Older docs sometimes describe “transfer failed → caller dropped.” That is not how Nixflex works. On any transfer failure (no answer, busy, invalid number, network error), the caller reconnects to your agent and the agent resumes the conversation. It knows the transfer was attempted and can:
  • Try another number from the prompt automatically.
  • Apologize and offer a callback.
  • Take a message.
You don’t have to script this. The agent handles it conversationally.

Billing and recording during transfers

Billing stops the moment a transfer connects. The ringing before the answer and the entire transferred conversation are free — you pay only for the AI’s part of the call. If a transfer doesn’t connect, the call simply continues with the AI and is billed normally throughout. The recording always runs to the very end of the call, so a transferred call’s recording is longer than its billed duration — the difference is the free portion.

Cold or warm — which to pick

Cold transfer

Pick when: the destination already knows what to expect — a generic support line, a manager who handles all overflow, an after-hours line.Faster, simpler, no context shared.

Warm transfer

Pick when: the destination needs context — a specialist, a senior staff member, a high-touch situation.Slower but higher-quality handoff.