In Salesforce, the Service Agent is one type of AI Agent available in Agentforce. After creating and deploying it to a Salesforce experience (community) site, end users or customers can easily interact with the agent to raise requests or get support.
To route the request from the site to the service AI agent, we create an Inbound Omni-Channel Flow in Salesforce Agentforce. This flow automatically routes incoming requests to the right agent.
Now, what if the end user or customer wants to talk with a human agent instead of an AI agent? So, this time, to route the request from the AI agent to the human agent, we can create an outbound omnichannel flow in Salesforce Agentforce.
In this article, we wil learn about how to escalate or transfer customer chat from an Agentforce AI to a human agent in Salesforce so that your support team can handle complex questions and improve customer satisfaction.
Understand the Concept of Chat Transfer in Salesforce
Before we go into configuration, it is important to understand what “chat transfer” really means in Salesforce.
Chat transfer simply means that the conversation starts with an AI agent, and when certain conditions are met, the system hands it over to a human support agent.
The customer does not need to restart the conversation. The human agent can see the full chat history and continue from where the AI left off.
This process is also called:
- Escalation
- AI to Human Handoff
- Chat Routing
- Live Agent Transfer
Why do we need to Escalate or Transfer Chat from an AI Agent to a Human Agent in Salesforce?
Let’s understand this in a practical way.
Imagine a customer wants to request a refund for a damaged product. The AI agent can provide general information about the refund policy, but it cannot approve refunds or process payments.
In this situation, if there is no transfer mechanism, the customer will feel stuck and frustrated.
Another example is when a customer types, “I am very unhappy with your service.” This is a negative sentiment.
Even if AI understands the message, it is better to involve a human agent who can handle emotions carefully.
So chat transfer improves:
- Customer satisfaction
- Issue resolution speed
- Trust in the company
- Overall service quality
Without proper escalation, AI alone cannot deliver a complete customer service experience.
High-Level Architecture of AI to Human Transfer in Salesforce
Now, let’s understand what happens technically inside Salesforce.
When a customer starts chatting through Messaging or Web Chat, a Messaging Session record is created in Salesforce.
The Agentforce AI agent responds based on configured topics and actions. If a specific condition is met.
For example, the customer requests a human, then an action is triggered.
This action usually calls a Flow. The Flow updates the Messaging Session and routes it to a Queue.
Omni-Channel then assigns this session to an available human agent based on the routing configuration. The agent receives a notification in the Service Console and accepts the chat.
So technically, we are using:
- Messaging Session
- Service Channel
- Queue
- Routing Configuration
- Omni-Channel
- Flow
- Agentforce Action
All these components work together to complete the transfer.
Transfer Chat from Agentforce AI to Human Agent in Salesforce
Below are the prerequisites we need to configure before transferring customer requests from an AI agent to a human agent in Salesforce Agentforce.
1. Create a Queue in Salesforce
This is the fallback queue. It is used when the AI Agent or channel is unavailable.
In such cases, the incoming request is automatically routed to this fallback queue, ensuring it is not lost and can still be handled by human agents.

2. Create Service Channel in Salesforce
A Service Channel in Salesforce is a way to connect customer requests from various sources, including email, chat, social media, or web forms, into Salesforce.
It automatically creates and routes these requests (called cases or work items) to the right agent or queue. This enables faster and more organized customer support.

3. Create Outbound Omni-Channel Flow in Salesforce Agentforce
Now, let’s create the Outbound Omni-Channel Flow in Salesforce Agentforce to route incoming customer requests from the customer to the human agent.
The above prerequisites and Omni-Channel configuration will be used to set up the Onbound Omni-Channel Flow.
First, navigate the AI agent that you created. For that, in Quick Find, search for Agentforce Agents -> Click on the AI agent for which you want to route the request.
Here, I have opened my service AI agent and then opened it in builder. After that, you will see the Connection option, which includes the Outbound Omni Channel flow.

To create the flow, go to Setup -> in Quick Find search for ‘Flows‘ -> click the New Flow button -> select Start From Scratch -> Next, click the New Flow button, and then choose Omni-Channel Flow from the flow type.

First, we need to create a New Resource. This variable will store the record ID of the Messaging Session whenever a customer raises a request.
By passing this record ID to the flow, Salesforce can route the request to the correct human agent for processing.
As you click the Resource Type dropdown field, you will see various resources, such as Variable and Text Template. Here, we need to select the Variable.
Now we need to provide the details for the following fields:
- API Name: I have provided the name recordId, which accepts the Messaging Session record ID.
- Description: This description will be reflected in the Agentforce builder as an instruction for the agent when we assign the action to them.
- Data Type: Text.
- Availability Outside the Flow: We must check the Available for input option. So that this variable can accept the ID.

Now we need to retrieve the contact records to assign the contact to the case. For that, we need to add the Get Records element and enter a Label and API Name.
Then we need to select the object from which we want to retrieve record details. Here, I have chosen the Contact object, which stores all contacts and their details.

Then we need to create the case record to store the case history between the customer and a human agent.
For that, we need to add the Create Records element and enter a Label and API Name.

Then we need to link the created case record ID to the Messaging Session record.

To route customer requests from the public site to human agents, we have an element in the omnichannel flow called Route Work. Add that element and provide a Label to it.
In the Record ID Variable, select the (recordId) variable we created, which means whenever a record is created in the messaging session object after a customer request. That record ID we have passed here.
Then, in the Service Channel, select “Messaging,” and in the “Route To” field, select the Queue.
After selecting the queue, you will see the name of the created queue and the route to human agents. Here, we selected Messaging Queue.

We are ready to save the flow. Click the Save button. For that, we need to enter the Flow Label; the API Name will automatically populate as we click the text box. Then click Activate the flow.

Next, navigate to the Service AI agent and click the Connection tab. In the Outbound Omni-Channel Flows, click the Edit button and select the omnichannel flow we created.

In this way, we can create the Onbound Omni-Channel Flow in Salesforce Agentforce.
4. Add Conversation to Record Page in Salesforce
After creating the flow and adding it to the service agent to talk with the customer or end user, we need to add the Conversation window to the record page so that the agent can chat and view customer details in one place without switching screens.
To add the Conversation window, go to the object where you want to add it, open any record, click Setup -> Edit Page, and in the Lightning App Builder search for “Conversation” in the Components panel and drag it onto the page.

Proof of Concept
Now open the site where you deployed the service agent, and you will see the same Conversation window available to customers or end users to start a chat.
In the image below, you can see that as a customer or end user, we requested the Service Agent to “Transfer Request to Human Agent,” and immediately the service agent disconnected with a “Transferring” status.

Then, in the Salesforce org, if any user is available in the queue that we created, a transfer request will be sent to them. That user must then accept the request to initiate a chat with the customer.

As soon as the human agent from the queue accepts the customer’s request, the customer can see the name of the human agent they are now chatting with.

In this way, we can transfer customer requests from an AI agent to a human agent in Salesforce Agentforce, allowing your support team to handle complex questions and enhance customer satisfaction.
Conclusion
I hope you have got an idea about how to transfer customer requests from an AI agent to a human agent in Salesforce Agentforce.
In this article, we learned how to smoothly hand over a customer conversation from an AI agent to a human agent in Salesforce Agentforce.
This setup helps your support team handle queries more efficiently. It also ensures customers get the right help at the right time.
You may like to read:
- Create an Apex Class & an LWC Component in Salesforce from Agentforce Vibe
- Record Summary Prompt Template in Salesforce Agentforce
- Call Apex Methods from LWC Using @AuraEnabled in Salesforce
- Invoke Agentforce Prompt Template From Salesforce Flows
- What is Agentforce Data Library in Salesforce?

Shubham is a Certified Salesforce Developer with technical skills for Building applications using custom objects, approval processes, validation rule salesforce flows, and UI customization. He is proficient in writing Apex classes, triggers, controllers, Apex Batches, and bulk load APIs. I am also familiar with Visualforce Pages and Lighting Web Components. Read more | LinkedIn Profile