Use this article to build a phone workflow that routes inbound calls — including setting up an IVR (Interactive Voice Response) menu, collecting caller data, assigning calls to your team, and configuring deflection options like voicemail and callbacks. Before you start, make sure you've configured Intercom Phone and at least one phone number.
The screenshot below shows an overview of an example phone workflow in the Intercom Workflows builder, with steps flowing from the inbound call trigger through IVR reply options to call assignment.
If you selected Configure with a workflow when you set up call routing for your phone number, you’ll now need to build the workflow.
Note:
Phone number assignment in your phone settings controls whether inbound calls are routed through a workflow. If your workflow isn't being triggered, check that the phone number is set to Configure with a workflow in Settings > Channels > Phone and that calls are matched to the correct workflow.
The screenshot below shows another example of a completed phone workflow, illustrating how steps connect from the trigger through routing actions to call endings such as voicemail or hang-up.
Building phone workflows requires access to Intercom Phone. Contact your workspace admin if phone settings aren't visible in your workspace. You'll need Admin access to create and publish workflows.
The screenshot below shows the Fin AI Agent Workflows overview page, with the New workflow button visible in the top right.
Get started
Go to Fin AI Agent > Workflows and click New workflow.
The screenshot below shows the trigger selection screen in the workflow builder, with 'When customer calls' highlighted as the selected trigger.
Click Create from scratch and select the trigger “When customer calls”.
The screenshot below shows the trigger settings panel with the audience set to 'Leads and users'.
Configure your Workflow trigger settings
If you want to trigger the Workflow for anyone who dials in, select leads and users as the audience. Or you can create separate Workflows per audience segment.
The screenshot below shows the audience rules panel with 'Workspace phone number' selected as a condition for routing callers based on which number they dialed.
If you want to route users based on the phone number they called, you can do this by using the "Workspace phone number" attribute in the audience rules.
The screenshot below shows the Scheduling section of the trigger settings, with options to limit when the workflow triggers — for example, during office hours only.
You can also decide when this Workflow should trigger by enabling Scheduling. For example, you might want to trigger this Workflow during office hours only.
Click Save and close to start building your Workflow.
The workflow builder will open. Continue by adding the steps that define how your calls are handled — choose from the options in the sections below. When you're ready to go live, click Set live in the top right.
The screenshot below shows the Collect data step as it appears in the phone workflow builder.
Collect data in phone workflows
You can use the Collect data step in phone workflows to capture caller input and save it to a conversation data attribute (CDA). The value is stored automatically and appears in the conversation attributes panel when the call connects to a teammate.
In your phone workflow, click + Add step and select Collect data.
Select an attribute you want to save the caller's response to. Only supported CDA types are selectable — unsupported types appear greyed out.
Choose your input mode: Fixed-length digits, Variable-length digits, or Speech.
Fixed-length digits — the caller enters an exact number of digits (for example, a 9-digit account number). Use this for structured data where the length is always the same.
Variable-length digits — the caller enters any number of digits and confirms with # or *. Use this when the input length varies.
Speech — the caller speaks a free-form response, which is transcribed and saved as text. Use this for open-ended responses only — not for account numbers, IDs, or other structured data where accuracy is critical
Configure the prompt the caller will hear. Either type a message in the text field (it will be converted to speech) or click the microphone icon to upload a pre-recorded audio file (.mp3).
Click Save and close.
Important: Keep the following limitations in mind when using Collect data in phone workflows:
CDAs only — data can only be saved to conversation data attributes (CDAs). Standard person and company attributes are not supported and will appear greyed out in the attribute selector.
Unsupported attribute types — boolean, list, file, object, and relationship CDA types are not supported and are disabled in the UI.
Speech mode and numeric attributes — speech mode is not available for integer or decimal number attributes. Use fixed-length or variable-length digit modes for numeric data.
Speech transcription accuracy — speech is transcribed by Twilio. Accents, background noise, and poor call quality may affect accuracy. For structured data like account numbers or reference codes, digit modes are strongly recommended.
Re-prompting — if a caller provides invalid input, the workflow automatically re-prompts them. This behavior isn't configurable.
IVR options and routing
Use the Workflows builder to configure your phone call flow — add messages, IVR (Interactive Voice Response) reply options, branches, and routing actions. Each option is described in the sections below.
Tip: You can now define and maintain partial IVR workflows in a single place using Phone Reusable Workflows. This allows for improved consistency and easier updates across multiple phone lines. Learn more about Phone Reusable Workflows to enhance your IVR routing options.
Important:
When using phone reusable workflows during live calls, the system follows this sequence:
The original phone workflow pauses
The reusable workflow executes
The original workflow resumes
If the reusable workflow isn’t designed to return control cleanly, or if it duplicates actions from the parent workflow, this can result in:
Accidental call disconnections
Unexpected or repeated steps after the workflow resumes
Design reusable workflows carefully to avoid overlapping routing, hang-up, or voicemail actions.
Note: If a caller doesn't make a selection, IVR options are automatically repeated approximately 20 seconds after the last audio prompt finishes playing. This interval is fixed and can't be changed.
How to add messages to a phone workflow
In a phone workflow, the Message step converts text you type into speech played to the caller. Text-to-speech prompts are currently only available in English.
The screenshot below shows the Message step configuration panel with a text field where typed content is converted to speech during the call.
Tip: If you're using Fin Voice in the same workflow, be aware that Fin Voice uses a different voice engine to the text-to-speech used here. This means callers may notice a difference in voice between IVR messages and when Fin itself speaks. To keep things consistent, consider uploading a pre-recorded Audio Snippet (.mp3) that matches the tone and style of your configured Fin Voice.
Note: To provide prompts in German, set a language override in the workflow for the customer. This ensures the Messenger and automation language matches the desired language for phone call events.
Alternatively, you can upload an Audio Snippet you’ve recorded by clicking on the microphone icon in the text editor and selecting the audio file from your device.
The screenshot below shows the Message step editor with the microphone icon in the toolbar for uploading a pre-recorded audio file.
Note: The audio snippet must be in .mp3 (audio/mpeg) format.
The screenshot below shows the Branches step being added to a phone workflow via the + Add step dropdown.
How to route callers with branches
Branches are a great way to route customers down different paths depending on conditions that you set. To add a branch, click + Add step and select Branches from the dropdown.
The screenshot below shows an example phone workflow with two branch paths — one for calls during office hours and one for calls outside office hours, each with different routing steps.
For example, you can have a different message if a customer calls outside of your office hours.
Tip: To add a text-to-speech message to any branch path, click + Add step in that branch and select Message.
Important: If you have call recordings turned on for your workspace, please ensure you include a text block within your phone workflow telling customers their call will be recorded. We recommend including this as a message before the call is assigned, but its placement is up to you.
The screenshot below shows the branch condition configuration panel with 'Office hours' selected, including options for during or outside of default or team office hours.
How to trigger branches based on office hours
When you select "Office hours" as the branch condition, you can configure whether this is during or outside of your default or team office hours. This ensures your team's availability aligns perfectly with your operational needs for each branch of the IVR.
The screenshot below shows the + Add step dropdown with the Reply options step highlighted.
How to set up IVR reply options
Use reply options for customer input. To add a reply option, click + Add step and select Reply options from the dropdown.
The screenshot below shows the Reply options configuration panel with the introduction message field, where text is entered to be converted to speech for the caller.
Enter an introduction message which will be converted to speech, or upload an Audio Snippet you’ve recorded. This message should introduce and match the reply options you give below.
The screenshot below shows individual reply options mapped to keypad numbers, for example 'For support press 1'.
Now enter the reply option for each key, e.g. “For support PRESS 1”.
Make sure your introduction message matches the reply options, as the introduction message will be what your customer hears on the phone.
Click the + Add button for:
Reply option - add another reply option for a different path.
The screenshot below shows the + Add button options within the Reply options step, including Reply option, Start over button, and Save reply value to attribute.
Start over button - add a start over option for customers to go back to the start of the Workflow
Save reply value to attribute - Save the reply option each customer selects as attributes for reporting and downstream visibility — including linking to a list-type conversation data attribute (CDA) so the reply buttons auto-populate from your data.
Link to a conversation data attribute
Link the reply buttons step to a list-type conversation data attribute (CDA). The CDA's options auto-populate as reply buttons — no manual entry needed. When a caller makes their selection, that value is written directly to the conversation, giving downstream steps and teammates full visibility into what the customer chose. This removes the need for longer branching workflows just to capture caller intent.
Language selection mode
Select Language selection as the mode to pre-populate the reply buttons with options from Intercom's 47 supported languages. When the caller makes their selection, their chosen language is written to the conversation's language system-defined attribute using the locale code (e.g., "en"). This opens the door for auto-translation in future workflow steps.
The screenshot below shows the Hold and assign call action step in the workflow builder.
How to assign and route calls
Once a caller makes a selection in a Reply options step, use the action paths in the workflow builder to define what happens next. For example, select Hold and assign call to route the call to your team. The call rings to an available teammate; if they decline, it moves to the next available teammate.
This step must come at the end of a path.
The screenshot below shows the Hold and assign call configuration panel with a dropdown to select the team inbox.
Tip: A call will be part of a conversation you can view on the Help Desk. This means standard conversation actions can also be applied, such as tag conversation, mark as priority, add note, set conversation data, etc.
Click on the Hold and assign call widget to select the team.
The screenshot below shows the unanswered call configuration options, where you set the conditions for when a call is treated as unanswered.
Selecting the dropdown to 'Assign to' will present a list of Team inboxes rather than individual Teammates.
You can also select when the call is considered 'unanswered' by configuring which conditions must be met. Then click Save and close.
The screenshot below shows the available call deflection options for unanswered calls, including sending to voicemail, forwarding, or assigning to another team.
Now decide what happens if the call is unanswered. Unanswered calls can be assigned to another team or you can choose one of the available call deflection options (e.g. send to voicemail or forward call to a secondary team).
You must include a call ending step, such as Send to voicemail, Forward call, or Hang up, to ensure calls are properly concluded within your designed flow.
Answer calls in the queue before automatic assignment
You can answer calls in the queue before they get automatically assigned. This feature gives teammates more control over assignment by being able to manually pick up high-priority calls.
In the conversation view you will see an ‘Answer’ button available on call cards
The call starts as soon as you click Answer
Tip: You can auto-close abandoned phone calls via the dedicated toggle in Settings > Channels > Phone. It applies globally at the workspace level — it can't be configured per team or inbox.
The screenshot below shows the Send to voicemail configuration panel with a field to customize the voicemail greeting.
How to send calls to voicemail
The Send to voicemail step can be used to deflect calls to voicemail (e.g. when the team is unavailable, or is out of office hours). Click on the Send to voicemail widget to customize the voicemail greeting which will be played when an end user is transferred to voicemail.
The screenshot below shows the voicemail step follow-up actions panel, where you can add rules or post-voicemail actions.
The voicemail greeting can support multiple languages.
Choose to set follow-up actions, or add rules based on information you’ve collected during the Workflow.
How to offer callers a callback
The Request callback step lets you offer callers the option to request a callback rather than waiting on hold. Add it to your phone workflow as a call overflow option — useful when your team is busy, out of office, or the wait queue is too long.
The screenshot below shows the Request callback step card as it appears in the phone workflow builder.
In these scenarios, you can offer your customers an option to request a callback or stay in the queue and wait on hold (or offer other deflection options). If the customer requests a callback, they will keep their place in the call queue and the callback request will be shown to teammates in the inbox.
Add the Request callback step to your Workflow, then inform the customer that a callback will be requested using a pre-recorded audio file or text-to-speech prompt.
In order to make callbacks, you need to have outbound calls enabled for phone numbers you’ll want to make outbound calls from. You can turn this on from your phone number settings.
Note: By default, callbacks go out from the number the customer originally called. You can change this by enabling Use default outbound number for callbacks in Phone Settings.
When enabled, callbacks follow the same cascade as regular outbound calls: the teammate's personal default number first, then the workspace default, and finally the original conversation number.
Note: The Use default outbound number for callbacks toggle is workspace-wide. It applies to all callbacks across your workspace and cannot be configured per teammate or per phone number.
How to forward calls to an external number
You are able to use the Forward call action if you want to automatically forward the call to an external number, e.g. a live answering service or an external team.
The screenshot below shows the Forward call configuration panel with a field to enter the external phone number and options for post-transfer follow-up actions.
Forwarded calls will be charged as an outbound call to the receiving number.
Click on the Forward call widget to enter the external phone number, set follow-up actions after the call is transferred, or add rules based on information you’ve collected during the Workflow.
The screenshot below shows the Hang up step at the end of a workflow path in the phone workflow builder.
How to end calls with a hang-up step
Use this action to hang up the call for the customer. For example, you might like to add the Hang up action to a path if a customer calls outside of office hours.
The screenshot below shows the Hang up configuration panel with follow-up action options, such as closing the conversation after the call ends.
This step must come at the end of a path.
Click on the Hang up widget to set follow-up actions after the call ends (such as close conversation), or add rules based on information you’ve collected during the Workflow.
The screenshot below shows the Ask for call rating step in the workflow builder, positioned after the Hold and assign call step.
How to collect post-call ratings
Add the Ask for call rating step to immediately collect customer feedback at the end of a call with your team. This is super useful for gauging call satisfaction and providing valuable insights for continuous improvement.
The screenshot below shows the Ask for call rating configuration panel with a customizable text-to-speech field for the post-call feedback prompt.
Tip: Call ratings will be available in the Customer satisfaction report and in Custom reports.
Simply click on the Ask for call rating widget to customize the text to speech message which will be played when asking for feedback.
The message can support multiple languages.
Remember, you must include a call ending step, such as Send to voicemail, Forward call, or Hang up, at the end of each path to ensure calls are properly concluded within your designed flow.
In order for a teammate to be assigned a phone call, they must be a member of the team to which the call is routed.
You can apply SLAs (Service Level Agreements) to phone calls by adding an Apply SLA step to your phone workflow. See Phone SLAs (Speed of Answer) for setup details.
Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts


































