Five9

View as Markdown

Five9 supports AI agent integrations through the AI Agent Connect program, where Synthflow is a certified AI provider in the VCC platform. Once activated, Five9 routes calls from a workflow to Synthflow, where your AI agent handles the conversation. When the agent finishes, the Five9 Handoff action returns the call with X-Headers your workflow routes on.

AI Agent Connect is available only on the Synthflow Enterprise plan and must be activated by your Synthflow account manager.

Prerequisites

  • A Five9 account with admin access and an active domain. Configuring the integration requires knowledge of the platform and IVR scripting.
  • The activation SKUs 548-0132 and 548-0133 added to your Five9 account. Ask your account team to include them.
  • A Synthflow account on the Enterprise plan with a deployed agent.
  • AI Agent Connect activated by Five9. Contact your Five9 account team to begin the program. They enable the integration on their side before you can configure call routing.
  • A workflow, built in collaboration with Five9, that routes calls to Synthflow.

Exchange credentials

Onboarding is a two-way exchange handled with your Five9 implementation team. They provision the phone numbers and call routing; you provide the Synthflow credentials they need to reach your agent and retrieve call data.

Five9 provides to you:

  • A range of ten pseudo phone numbers allocated to your account. These numbers exist only to route calls to your agents and are not publicly dialable. You assign one number per AI agent in Synthflow.
  • Call routing for your domain and the VCC configuration. Call routing for the number range is not accessible in VCC and is managed by your connectivity project manager.

You provide to the implementation team:

DetailNotes
API URLThe Synthflow API endpoint, unique per customer.
API tokenA Synthflow API key sent as a Bearer token. The token is per customer and does not expire.
AI phone numberWhich of the assigned pseudo numbers maps to each AI agent.

Five9 uses the API URL and bearer token to retrieve data when a caller hangs up before the agent finishes. Keep the token secret and rotate it through the Synthflow dashboard if it is ever exposed.

Import the number into Synthflow

Import a phone number from your assigned range into Synthflow as a custom phone number. Use a separate number for each AI agent.

  1. In the Synthflow dashboard, go to Phone Numbers and click Import Phone Number.
  2. Configure the following fields:
FieldValue
Phone ProviderCustom
Phone NumberA number from the range assigned to your account
Friendly NameA label such as Five9
  1. Click Import to save the number.
  2. Open the agent you want to receive calls, go to the Configure tab, scroll to the Phone number section, select the number you imported, and click Save.

Build the workflow

Work with your implementation team to build a workflow in the Five9 VCC Administrator web console. The workflow routes calls to Synthflow for AI handling and defines how data flows back when the conversation ends. The team typically:

  • Creates a campaign and assigns a test DID.
  • Configures the call variables and imports the Synthflow IVR Transfer Template v1 script.
  • Sets the production API URL and key, and points the transfer-to number at your assigned AI phone number.

The workflow handles two outcomes:

  • Graceful end: The caller finishes the conversation normally. The Five9 Handoff action fires, passing collected data back via X-Headers on the SIP BYE. The workflow continues with the returned data.
  • Unexpected hangup: The caller disconnects before the AI agent completes the conversation. The Query module calls the Synthflow API with your bearer token to retrieve the data collected up to that point.

Five9 VCC Administrator showing the AI Agent Connect integration IVR script with the main flow and the StartOnHangup path

The exact workflow configuration depends on your contact centre setup and is done in collaboration with Five9.

Add the Five9 Handoff action

The Five9 Handoff action ends the Synthflow AI session and returns the call. When the action fires, Synthflow sends a SIP BYE with X-Headers that Five9 maps into call variables (CAVs), allowing the workflow to route based on values like intent. Each X-Header value can be a static string, a conversation variable, or a value generated at runtime by an information extractor.

  1. In the Synthflow dashboard, open the agent assigned to your Five9 number.
  2. Go to the Actions tab and click Add Action.
  3. Select Five9 Handoff.
  4. Set the Condition Description to tell the agent when to trigger the handoff (e.g. “When the user wants to end the call”).
  5. Define X-Headers using the X-Headers section. Each header is a key-value pair sent on the SIP BYE. Always include X-RouteType, X-RouteValue, and X-RouteReason; Five9 requires all three to route the returned call. You can set each value as:
    • Static: A fixed value (e.g. X-RouteType: skill).
    • Variable: A value from a conversation variable.
    • Extractor: A value the agent extracts from the conversation at runtime (e.g. X-RouteReason: Extract the reason for the call).

Synthflow Five9 Handoff action configuration showing the condition description, the required X-RouteType, X-RouteValue, and X-RouteReason headers, and the headers preview

X-RouteType, X-RouteValue, and X-RouteReason are required on every handoff. X-RouteType sets the kind of interaction Five9 routes to, X-RouteValue sets the destination, and X-RouteReason records the outcome. Any additional headers are optional and up to your workflow.

Data exchange

Data flows in both directions over SIP X-Headers. Five9 sends call metadata to your agent when the call starts, and Synthflow returns collected data when the Handoff action fires. Limit custom headers to 10 in each direction and roughly 500 characters in total to avoid packet fragmentation and call-quality issues.

Metadata sent to Synthflow

These system call variables arrive on the outbound SIP INVITE. Your implementation team can add more by editing the SetHeaders module.

HeaderDescription
call.ANICaller’s number
call.DNISDialed number
call.call_idCall identifier
call.session_idSession identifier
call.campaign_nameCampaign name
call.campaign_idCampaign identifier
call.domain_idDomain identifier
call.start_timestampCall start time

Data Synthflow sends back

The Handoff action sends X-Headers on the SIP BYE. Five9 maps each one into a call variable in a <Synthflow> variable group, then routes on the values. Send the three required route headers, plus any custom headers your workflow needs:

HeaderMaps toPurpose
X-RouteTyperoute_typeThe kind of interaction to route to, such as a skill transfer or phone transfer
X-RouteValueroute_valueThe destination, such as a skill name or phone number
X-RouteReasonroute_reasonShort outcome description for reporting

You do not need to send call data such as the transcript or end-call reason as headers. Synthflow captures that data on the call and Five9 can retrieve it from the Synthflow API after the call ends.

Keep header values compact. Five9 accepts roughly 500 characters of headers in total, so prefer short identifiers or summaries over long free-form values.

Call transfers

Direct call transfers from Synthflow are not supported on Five9 trunks. The integration does not allow Synthflow to initiate transfers to external numbers or SIP endpoints during a call.

To transfer a caller to a live agent or another destination, use the Five9 Handoff action to return the call to the workflow, then route it from there using Five9’s built-in routing and queue logic. The X-RouteType and X-RouteValue headers tell the workflow where to send the call.

FAQ

Contact your Five9 account team to begin the AI Agent Connect program and add the activation SKUs 548-0132 and 548-0133 to your account. Five9 activates the integration on their side, then you work together to build a workflow that routes calls to Synthflow. Five9 does not resell Synthflow, so you procure and configure the AI agent directly with Synthflow.

Your Synthflow API URL and an API key sent as a Bearer token, plus the mapping of each assigned AI phone number to an agent. The token is per customer and does not expire, so keep it secret and rotate it if it is exposed.

No. The integration does not support direct call transfers from Synthflow. Use the Five9 Handoff action to return the call to the workflow, then handle routing with Five9’s built-in queue and transfer logic.

Add X-Headers to the Five9 Handoff action. Each header is a key-value pair sent on the SIP BYE when the AI session ends. Five9 maps these headers into call variables that your workflow can route on. Keep headers to 10 or fewer and about 500 characters in total to avoid call-quality issues.

Every handoff must send X-RouteType, X-RouteValue, and X-RouteReason. X-RouteType tells Five9 the kind of interaction to route to, X-RouteValue sets the destination, and X-RouteReason records the outcome. Any other headers you add are optional and up to your workflow.

Static values are fixed strings. Variable values reference conversation variables. Extractor values are extracted by the agent from the conversation at runtime, such as summarizing the reason for the call.

If the caller disconnects before the agent triggers the Five9 Handoff action, the Query module calls the Synthflow API with your bearer token to retrieve the data collected up to that point.