# How to Transfer Conversations Between AI Agents in ZazzyAgent

You don't need one AI Agent to handle every type of customer conversation.

A better approach for many businesses is to create specialized agents.

For example:

**Sales Agent**

Handles product questions and buying decisions.

**Order Support Agent**

Handles existing orders.

**Appointment Agent**

Handles bookings.

**Customer Support Agent**

Handles complaints and support requests.

[ZazzyAgent](http://zazzyagent.com) can transfer a conversation from one AI Agent to another when the customer's needs change.

## The transfer action

Use:

```text
##transfer_agent## : 18
```

The number represents the selected AI Agent.

Use `##` autocomplete to choose the target agent.

## Example: Sales to Support

Suppose the customer starts with:

> Which laptop should I buy?

The Sales Agent handles the conversation.

Later:

> I already ordered one last week. Where is it?

That's no longer a product-recommendation question.

Your Sales Agent can transfer the conversation:

```text
If the customer changes from product research
to an existing-order question,
transfer the conversation to the Order Support Agent.

##transfer_agent## : 18
```

## Why use multiple AI Agents?

Specialization gives each agent a clearer job.

Instead of:

> You handle sales, support, appointments, refunds, orders, complaints, products and everything else.

you can create:

**Sales**

→ Products and purchases

**Support**

→ Problems and complaints

**Orders**

→ Existing orders

**Appointments**

→ Scheduling

Each agent can have its own knowledge and actions.

## Example: Ecommerce setup

### Sales Agent

Knowledge:

*   Products
    
*   Features
    
*   Pricing
    
*   Shipping
    
*   Returns
    

Actions:

*   Recommend products
    
*   Save preferences
    
*   Add sales labels
    

### Order Agent

Knowledge:

*   Shipping policy
    
*   Returns
    
*   Refund policy
    

Actions:

*   Order lookup
    
*   Human handoff
    

### Support Agent

Knowledge:

*   Support policies
    
*   Escalation rules
    

Actions:

*   Human assignment
    
*   Internal notes
    
*   Follow-ups
    

## Transfer based on conversation topic

A transfer condition should be explicit.

Example:

```text
If the customer asks about an existing order,
transfer to Order Support.

##transfer_agent## : 18
```

Don't use:

> Transfer whenever the customer mentions orders.

A customer might say:

> Do you sell products with free delivery?

That doesn't necessarily require order support.

## Transfer after identifying the intent

AI can understand the conversation before transferring.

Example:

> I want to buy this.

Stay with Sales.

> Where is my order?

Transfer to Order Support.

> I want to cancel my order.

Transfer to the appropriate support/cancellation workflow.

## Tell the agent what NOT to transfer

This is just as useful.

Example:

```text
Do not transfer general shipping-policy questions
if the answer is available in your knowledge.

Transfer only when the customer is asking about
a specific existing order or needs account-specific help.
```

This prevents unnecessary transfers.

## What should happen after transfer?

The receiving agent should understand its own job.

For example, the Order Support Agent might immediately ask:

> What's your order number?

The customer shouldn't have to explain everything from the beginning when the previous agent already collected the relevant information.

Where appropriate, use saved customer information and the conversation context.

## Don't create overlapping agents

Bad structure:

**Order Support Agent**

**Order Help Agent**

**Order Questions Agent**

Those responsibilities are too similar.

Better:

**Sales Agent**

**Order Support Agent**

**Customer Support Agent**

Each has a clear purpose.

## AI agent transfer vs human handoff

They're different.

### Transfer to another AI

```text
##transfer_agent## : 18
```

Use when another specialist AI should handle the conversation.

### Assign to a human

```text
##assign_human_member## : 335
```

or:

```text
##assign_human_role## : 3
```

Use when a person should take over.

## Example: Three-layer support

```text
Customer
   ↓
General AI Agent
   ↓
What does the customer need?
   ↓
Sales ─────→ Sales Agent
Order ─────→ Order Agent
Support ───→ Support Agent
```

This keeps each agent focused.

## Common problems

### Wrong agent receives the conversation

Make the transfer conditions more specific.

### Customer gets transferred too often

Add explicit rules for when **not** to transfer.

### Agent never transfers

Check:

*   Condition is clear.
    
*   Target agent is selected.
    
*   Action is configured.
    
*   Conversation actually matches the transfer condition.
    

## Best practice

Don't create multiple agents simply because you can.

Create another agent when there is a genuine difference in:

*   Responsibility
    
*   Knowledge
    
*   Actions
    
*   Customer journey
    

When those differences exist, specialized agents can make a complex AI system much easier to manage.

[zazzyagent.com](http://zazzyagent.com)
