Skip to contentSkip to navigationSkip to topbar
On this page

Checklist for setting up Twilio Flex



Overview

overview page anchor

When you begin using Twilio Flex, it's important to plan ahead so you can build an instance that meets your organization's needs and takes full advantage of what Flex has to offer. This checklist helps ensure that you've covered everything you'll need to do before, during, and after setting up Flex.

As an IT professional, network admin, or developer, you can use the following checklist to plan, build, test, and launch your contact center from start to finish. Since the checklist is extensive, you'll likely need to work with others in your organization to gain access to certain platforms and complete all steps.


Get to know Twilio's products

get-to-know-twilios-products page anchor

Flex relies on a variety of Twilio products to deliver its functionality. When you set up Flex, you're not only configuring Flex, but other key services and features, too. These include:

  • Channels: Configure channels for customer communication, like voice or webchat.
  • Studio: Build automated routing, IVRs, and customized responses for calls and conversations.
  • TaskRouter: Route tasks to the right agents based on agent skills.
  • Flex Plugin library: Install pre-built Flex plugins to add functionality.
  • Flex Insights: Enable Insights to track, measure, and analyze performance in Flex.

This list summarizes the steps you'll take to set up Flex. We recommend completing each category in the order shown.

Step 1: Planning and requirements

step-1-planning-and-requirements page anchor
  • Plan your Flex instance
  • Meet hardware, software, and network requirements
  • Engage developers to help you build

Step 2: Account and environment setup

step-2-account-and-environment-setup page anchor
  • Create your Flex accounts
  • Set up your environments
  • Configure communication channels
  • Customize your IVR flows

Step 3: Routing and onboarding

step-3-routing-and-onboarding page anchor
  • Set up rules for routing tasks to agents
  • Onboard agents and supervisors

Step 4: Reporting and integrations

step-4-reporting-and-integrations page anchor
  • Set up analytics and reporting
  • Integrate your tools with Flex
  • Customize the agent and supervisor Flex UI experience

Step 5: Deployment and post-launch

step-5-deployment-and-post-launch page anchor
  • Scale
  • Test and QA
  • Prepare training and documentation
  • Prepare to go live
  • Launch and maintain your Flex instance

Step 1: Planning and requirements

step-1-planning-and-requirements-1 page anchor
TaskDetails
Choose your channelsConfirm with stakeholders which Conversations channels to use with Flex:
  • Voice
  • SMS/MMS
  • WhatsApp
  • Webchat (beta)
  • Email
  • Facebook Messenger (beta)
Learn about agentsFind out the number of agents, their roles, and any specific requirements depending on their tier levels and expertise. You can modify agent roles and Studio flows later on in the process.
Identify tools to integrateFind out if there are any existing CRMs, databases, or tools that you need to integrate with Flex.
Review compliance and securityReview any compliance requirements for your industry, such as GDP and HIPAA, and make sure the system meets security standards. To see the sub-processors we use, see Twilio Sub-Processors(link takes you to an external page).

Meet hardware, software, and network requirements

meet-hardware-software-and-network-requirements page anchor
TaskDetailsTips
Get agent workstations readyHardware: Ensure each agent's computer meets the minimum hardware requirements. For example, make sure each agent has a modern processor, sufficient RAM, and a quality headset with a microphone.Flex doesn't require a specific headset, but make sure to use one that your browser supports. If agents work in the same room, noise canceling headphones and headsets with directional microphones can be helpful.
Software: Confirm that all workstations have updated operating systems and necessary software, such as supported web browsers and plugins.If you want to run Flex using virtual desktop infrastructure (VDI), Twilio supports Citrix and Azure (Beta).
Check internet connectivityBandwidth: Verify that all agents have an internet connection with sufficient bandwidth to handle voice, video, and data traffic simultaneously.Optionally, you can run a Twilio Network Test(link takes you to an external page) and record the results. For advanced testing, use the Voice Diagnostics SDK(link takes you to an external page).
Latency and stability: Test network latency and stability to make sure you have a reliable connection, especially for real-time interactions like voice calls.
Redundancy: Decide whether you need a backup internet connection to ensure high availability and minimize downtime.
Configure your networkFirewall settings: Make sure your firewall rules allow traffic to and from Twilio's IP addresses and services. The firewall and network requirements depend on Flex and the other Twilio products you use.

Using the document links in this row, add domains that Flex uses to your allowlist for VPNs and proxies. Make sure your firewall supports DNS rules.
Without DNS rules, you can still use Twilio, but you'll need to allow more traffic. You can do so by allowing all the outgoing traffic towards Twilio subnets and allowing related traffic back in. You can decide how to allow the traffic based on the supported features of your firewall devices. You can use these tools to check for compatibility:
  • ngrok for webhook URLs in your development environment
  • Status callbacks
  • Twilio Functions and Twilio Studio
Quality of Service (QoS): To maintain call quality, configure QoS settings to prioritize voice and video traffic over other types of network traffic.
Learn about InterconnectDecide whether your contact center should use Twilio Interconnect in production.Interconnect lets you connect to the Twilio network directly instead of over the Internet. This improves latency and speed. Interconnect may also be helpful for your business if you need a higher level of security and reliability.

Engage developers to help you build

engage-developers-to-help-you-build page anchor
TaskDetails
Identify developer resourcesAssign a developer or development team to handle Flex customizations, integrations, and API configurations. The number of developers you need depends on how you plan to build and customize Flex.
Skill assessmentMake sure that developers are familiar with Twilio APIs, JavaScript, and any other relevant technologies for Flex customization.
Development planningWork with developers to plan the customizations you need, including workflow modifications, integrations, and any other custom features. Before deciding on a custom feature, check if there's a pre-built Twilio plugin that meets your needs.

Step 2: Account and environment setup

step-2-account-and-environment-setup-1 page anchor

We recommend the following environments:

  • Development: Use this environment to write code and create customizations.
  • Staging: When planned development is complete (or reaches another milestone you identify), use your staging environment to test, perform quality assurance, and create bug fixes. Flex should behave as it would in production.
  • Production: This is your live contact center with SLAs or SLOs in place for your customers. Aim for high stability and performance with security in place.

Depending on your development practices, you may choose to have additional environments like test or user acceptance testing (UAT) environments.

For each environment, you'll need to set up an account. Note that account pricing costs(link takes you to an external page) depend on usage. For staging, we recommend using an Active User Hour billing model, since this environment isn't used regularly post-launch. The same goes for test or UAT environments, if you use them. With Active User Hour pricing, you only pay for time spent using an environment.

Create your Twilio Flex accounts

create-your-twilio-flex-accounts page anchor
TaskDetails
Create your Twilio Flex accountsSet up a Twilio account for each of your environments (development, testing, and production). Make sure to choose Flex during account setup.
Set up billingSet up the appropriate billing and payment methods(link takes you to an external page) for each account.
Invite other adminsDesignate system administrators who will have access to configure and manage Flex. Send them invites via Twilio Console.

Set up a staging environment

set-up-a-staging-environment page anchor

When setting up a staging environment, keep in mind that your future production setup should closely mirror what you have in staging. While you can set up your environments to suit your business needs and processes, this checklist and the remainder of the document is geared towards staging, and you should test with staging before rolling out to production.

TaskDetails
Provision a staging environmentSet up a separate staging environment for testing and development purposes.
Configure environmentConfigure the staging environment with the same channels, integrations, and workflows you will use for production.
Add test dataPopulate the staging environment with test data to simulate real-world scenarios during development and testing.
Implement version controlImplement version control for any custom code and configurations to ensure changes can be tracked and rolled back if necessary.

Configure communication channels

configure-communication-channels page anchor
TaskDetails
Purchase phone numbersPurchase phone numbers(link takes you to an external page) for voice, SMS, and WhatsApp services. Or, find out about porting your existing numbers.
Twilio numbers have geo-permissions and may have different regulations depending on the country.
Make sure to enable channels with appropriate phone numbers, IDs, and geo-permissions(link takes you to an external page).

US phone numbers: If you're sending messages in the US, review A2P 10DLC concerns(link takes you to an external page).
VoiceConfigure the Voice channel, including IVR if required. Optionally, turn on Flex Dialpad for outbound calls and set up call recording(link takes you to an external page).
SMSSet up SMS messaging, including any templates or automated responses, using these resources:
WhatsAppIntegrate WhatsApp messaging by setting up API connections and approvals: WhatsApp Business Platform with Twilio Manage Conversations WhatsApp Addresses Console(link takes you to an external page)
WebchatDuring Flex setup:

Before launching Flex:
  • Add the Webchat widget to your businesses website.
EmailEnable email in Flex.
Authenticate your corporate email domain with Twilio.
Create email addresses to receive inbound email in Flex.
Facebook Messenger (Beta)Connect your Facebook page to receive and respond to messages in Facebook Messenger:
Track outbound communicationsCreate custom logic to track the status of outbound calls(link takes you to an external page) or use delivery receipts to get status information about messages. This lets you catch calls or messages that fail.

(Optional) Customize your IVR flow

optional-customize-your-ivr-flow page anchor

The out-of-the-box Studio flows for Flex send inbound calls and conversations directly to an agent queue. If this behavior fits your needs, you can skip this step. However, you'll likely want to build your own Interactive Voice Response (IVR) to handle customer inquiries before Flex sends them to an agent.

TaskDetails
Implement pre-agent handling (IVR) using StudioTo create an automated telephony system that gathers information to route incoming calls, build an IVR using Twilio Studio.
Optional Add AI capabilities to your IVR with DialogflowImplement Twilio's Dialogflow CX Connector, an integration with Google's Dialogflow CX. You may benefit from this integration if you're building for a medium-to-large contact center and want to include the AI capabilities of Google's Conversational Agents(link takes you to an external page) in your IVR.

Step 3: Routing and onboarding

step-3-routing-and-onboarding-1 page anchor

Set up rules for routing tasks to agents

set-up-rules-for-routing-tasks-to-agents page anchor

Decide what routing rules you need, and learn how to set them up in TaskRouter. Define skills so you can assign skills to specific agents later.

TaskDetails
Set up basic TaskRouter resourcesCreate queues to logically divide the tasks in TaskRouter. Next, define skills for your contact center. You'll add skills to individual agents in the following steps. Use these links to get information about basic TaskRouter resources: Note Setting up worker skills and custom attributes may require work with your SSO integration.
Define routing logic with workflowsSet up routing logic to direct calls and conversations messages to the appropriate agents based on skills and availability. Work with a developer to build custom workflows for different interactions, like customer inquiries or support tickets. Use these links to get information about workflow resources: Note When configuring timeouts for workflows, make sure they map to expected SLAs.
Advanced Review the Mutation and Conflict Resolution guideTo handle Task Mutation and avoid potential race conditions for routing, use If-Match and Etag headers for task versioning.

Onboard agents and supervisors

onboard-agents-and-supervisors page anchor
TaskDetails
Integrate your SSO provider with FlexConfigure roles for each agent. Make sure agents and supervisors get the appropriate roles when they log in with SSO.
Establish patterns for workers’ unique friendly names. For example, decide how to handle workers with the same name or initials.
Decide what to do when someone joins or leaves the contact center workforce.
Configure skills for each agentAssign skills to each agent so you can set up skills-based routing.
Create agent profilesSet up profiles for each agent, including their contact details and communication preferences.
Check hardware and softwareMake sure audio drivers work properly during calls.

Step 4: Reporting and integrations

step-4-reporting-and-integrations-1 page anchor

Set up analytics and reporting

set-up-analytics-and-reporting page anchor
TaskDetails
Verify TaskRouter dataMake sure task attributes from routing are formatted so that Flex Insights can consume them.

Optionally, add additional TaskRouter data to enhance your Insights reports.
Enable Flex InsightsEnable Insights using SSO. Add identity attributes and roles for Flex Insights.
Configure the feed for Workforce Management Real-Time AdherenceUse this feed to monitor and report on real-time agent activities.
Optional Use the TaskRouter API to get data for custom reportingIf you want to create custom reports to gather analytics based on your business needs, consume the TaskRouter API or TaskRouter events to get data to power those reports.

(Optional) Integrate with external tools

optional-integrate-with-external-tools page anchor
TaskDetails
CRM integrationConnect Twilio Flex with your company's CRM to synchronize customer data and interaction history.

Here are some ways you can integrate Flex with your CRM:
Email and calendar integrationIntegrate Flex with your company’s email systems and calendars.
Increase rate limits for integrationsIf needed, work with third-party sales or professional services teams to increase certain rate limits for any third-party integrations you use.

For example, you may want to ask if you can cache tokens to prevent per-hour limits or increase concurrency on a third-party API endpoint you use.

Customize agent and supervisor experience in Flex UI

customize-agent-and-supervisor-experience-in-flex-ui page anchor
TaskDetails
Set up agent desktopCustomize the agent desktop interface to match your agents’ workflow needs.
Optional Install pre-built plugins from the Plugin LibraryIf you want to add more Flex functionality, review the Twilio-developed plugins from the Flex Plugin Library(link takes you to an external page) and install any plugins that meet your needs.

Some popular prebuilt plugins include:
  • Supervisor barge and coach
  • Dual channel call recording
  • Call recording pause and resume
Optional Build a custom pluginBefore building a new plugin, establish a plugin architecture based on plugin resource limits.
Install the tools needed for Flex plugin development:
  • Install Node.js and NPM.
  • Install npm install package dependencies. If required, install these for CI/CD setup.
Integrate the Flex Plugins CLI with CI/CD and other internal tools. Create a schedule and best practices for releasing plugins.

Before deploying your plugins, make sure to:
  • Test functionality locally in your development environment.
  • Establish separate Flex accounts for stage and production.

Step 5: Deployment and post-launch

step-5-deployment-and-post-launch-1 page anchor
TaskDetails
Review rate limitsReview existing rate limits and capacity for Twilio products. This is important if you plan to increase the TaskRouter worker limit.
Develop Twilio FunctionsUse the Serverless Toolkit to develop locally and deploy to Twilio Functions and Assets.
Determine which functions can rely on Twilio Serverless and what logic should be offloaded to internal servers.
Migrate Twilio Function prototypes to your internal infrastructure or servers, if needed.

In your staging environment (or UAT environment, if you use a separate one) perform user acceptance testing to make sure your customizations, integrations, and workflows function as expected. Have agents and stakeholders test the system to ensure it meets their needs before going live.

TaskDetails
Perform end-to-end testingTest all communication channels in both staging and production environments. Validate that tasks are routed to the correct agents according to the defined logic.
Troubleshoot errorsFamiliarize yourself with different types of Flex errors, and turn on the Debugger integration. You can also use the error logs in Console to monitor errors.
Plan how you’ll escalate technical issues internally and when to escalate issues to Twilio support. For example, for calls that have issues, establish how to report their call SIDs to a shift manager or team lead.
Select a support planChoose the level of support(link takes you to an external page) you’d like to receive.
Switch to paid Flex planBefore production, make sure you have upgraded the Twilio trial account and switched onto a paid Flex plan.

Prepare training and documentation

prepare-training-and-documentation page anchor
TaskDetails
Training for agents and adminsAgents: Provide training sessions for the agents to familiarize them with the Flex interface and workflows. For example, share tips for troubleshooting audio problems with your agents.
Admins: Train system administrators on managing and configuring Flex.
Developer handoverIf you need to transfer knowledge to the IT team for ongoing support, make sure developers document any customizations they’ve made to Flex.
Create documentationDevelop user guides and reference materials for ongoing support and training.
Suggested topics:
  • Checking agent network connectivity
  • Accepting a task
  • Making an outbound call
For examples of end-user documentation, refer to the following Flex articles:

Finalize your launch plan and go live

finalize-your-launch-plan-and-go-live page anchor
TaskDetails
Backup and contingency planningMake sure you have backup systems in place and a contingency plan for potential issues.

As you develop solutions, it can be helpful to document processes. You can also use the Twilio API to export and save configurations. For example, to export Studio flows, see Importing and Exporting Flows.
Develop a rollout planConsider starting with a key set of agents first, then roll out to larger groups.
Develop a communication planNotify all stakeholders of the go-live date and any processes that they should know about.
Final review and approvalConduct a final review with stakeholders to get approval to go live.
Launch FlexOfficially go live with Twilio Flex for your agents.

Maintain Flex in production

maintain-flex-in-production page anchor
TaskDetails
Monitor system performance and user feedbackClosely monitor system performance and agent activity during the initial phase.
Establish a channel for issue escalationEstablish a communication channel (like a Slack or Teams channel) where agents can escalate issues with the contact center.
Gather feedbackCollect feedback from agents and stakeholders for any adjustments.
Ongoing support and optimizationProvide ongoing support, address any issues, and optimize the system as needed.
Learn how Flex updates are releasedBy default, accounts are set up to have minor version updates automatically applied. This makes sure Flex stays up-to-date. Read about how we release Flex to understand what automatic minor version updates mean for your account.
Subscribe to changelog to stay current with new featuresVisit the Twilio Changelog(link takes you to an external page) and subscribe to the RSS feed.

Need some help?

Terms of service

Copyright © 2024 Twilio Inc.