Checklist for setting up Twilio Flex
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.
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.
- Plan your Flex instance
- Meet hardware, software, and network requirements
- Engage developers to help you build
- Create your Flex accounts
- Set up your environments
- Configure communication channels
- Customize your IVR flows
- Set up rules for routing tasks to agents
- Onboard agents and supervisors
- Set up analytics and reporting
- Integrate your tools with Flex
- Customize the agent and supervisor Flex UI experience
- Scale
- Test and QA
- Prepare training and documentation
- Prepare to go live
- Launch and maintain your Flex instance
Task | Details |
---|---|
Choose your channels | Confirm with stakeholders which Conversations channels to use with Flex:
|
Learn about agents | Find 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 integrate | Find out if there are any existing CRMs, databases, or tools that you need to integrate with Flex. |
Review compliance and security | Review 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. |
Task | Details | Tips |
---|---|---|
Get agent workstations ready | Hardware: 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 connectivity | Bandwidth: 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 and record the results. For advanced testing, use the Voice Diagnostics SDK. |
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 network | Firewall 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:
|
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 Interconnect | Decide 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. |
Task | Details |
---|---|
Identify developer resources | Assign 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 assessment | Make sure that developers are familiar with Twilio APIs, JavaScript, and any other relevant technologies for Flex customization. |
Development planning | Work 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. |
Review Twilio partners | If you need help with development, consider working with a Twilio partner. You can find a list of partners on the Twilio Partner Network. |
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 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.
Task | Details |
---|---|
Create your Twilio Flex accounts | Set up a Twilio account for each of your environments (development, testing, and production). Make sure to choose Flex during account setup. |
Set up billing | Set up the appropriate billing and payment methods for each account. |
Invite other admins | Designate system administrators who will have access to configure and manage Flex. Send them invites via Twilio Console. |
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.
Task | Details |
---|---|
Provision a staging environment | Set up a separate staging environment for testing and development purposes. |
Configure environment | Configure the staging environment with the same channels, integrations, and workflows you will use for production. |
Add test data | Populate the staging environment with test data to simulate real-world scenarios during development and testing. |
Implement version control | Implement version control for any custom code and configurations to ensure changes can be tracked and rolled back if necessary. |
Task | Details | ||
---|---|---|---|
Purchase phone numbers | Purchase phone numbers 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. US phone numbers: If you're sending messages in the US, review A2P 10DLC concerns. | |||
Voice | Configure the Voice channel, including IVR if required. Optionally, turn on Flex Dialpad for outbound calls and set up call recording. | ||
SMS | Set up SMS messaging, including any templates or automated responses, using these resources: Before sending an SMS, make sure to turn on permissions for selected countries under Messaging Geographic Permissions in Console. | ||
Integrate WhatsApp messaging by setting up API connections and approvals: | |||
Webchat | During Flex setup:
| ||
Enable 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 communications | Create custom logic to track the status of outbound calls or use delivery receipts to get status information about messages. This lets you catch calls or messages that fail. |
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.
Task | Details |
---|---|
Implement pre-agent handling (IVR) using Studio | To 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 Dialogflow | Implement 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 in your IVR. |
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.
Task | Details |
---|---|
Set up basic TaskRouter resources | Create 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 workflows | Set 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. |
Manage task timeouts | To prevent prolonged customer wait times on incoming Flex calls and to avoid incurring additional PSTN inbound connectivity charges, follow the steps in Manage task timeouts for active calls. |
Advanced Review the Mutation and Conflict Resolution guide | To handle Task Mutation and avoid potential race conditions for routing, use If-Match and Etag headers for task versioning. |
Task | Details |
---|---|
Integrate your SSO provider with Flex | Configure 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 agent | Assign skills to each agent so you can set up skills-based routing. |
Create agent profiles | Set up profiles for each agent, including their contact details and communication preferences. |
Check hardware and software | Make sure audio drivers work properly during calls. |
Task | Details |
---|---|
Verify TaskRouter data | Make 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 Insights | Enable Insights using SSO. Add identity attributes and roles for Flex Insights. |
Configure the feed for Workforce Management Real-Time Adherence | Use this feed to monitor and report on real-time agent activities. |
Optional Use the TaskRouter API to get data for custom reporting | If 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. |
Task | Details |
---|---|
CRM integration | Connect 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 integration | Integrate Flex with your company's email systems and calendars. |
Increase rate limits for integrations | If 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. |
Task | Details |
---|---|
Set up agent desktop | Customize the agent desktop interface to match your agents' workflow needs. |
Optional Install pre-built plugins from the Plugin Library | If you want to add more Flex functionality, review the Twilio-developed plugins from the Flex Plugin Library and install any plugins that meet your needs. Some popular prebuilt plugins include:
|
Optional Build a custom plugin | Before building a new plugin, establish a plugin architecture based on plugin resource limits. |
Install the tools needed for Flex plugin development:
| |
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:
|
Task | Details |
---|---|
Review rate limits | Review existing rate limits and capacity for Twilio products. This is important if you plan to increase the TaskRouter worker limit.
|
Develop Twilio Functions | Use 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.
Task | Details |
---|---|
Perform end-to-end testing | Test all communication channels in both staging and production environments. Validate that tasks are routed to the correct agents according to the defined logic. |
Troubleshoot errors | Familiarize 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 plan | Choose the level of support you'd like to receive. |
Switch to paid Flex plan | Before production, make sure you have upgraded the Twilio trial account and switched onto a paid Flex plan. |
Task | Details |
---|---|
Training for agents and admins | Agents: 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 handover | If you need to transfer knowledge to the IT team for ongoing support, make sure developers document any customizations they've made to Flex. |
Create documentation | Develop user guides and reference materials for ongoing support and training. Suggested topics:
|
Task | Details |
---|---|
Backup and contingency planning | Make 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 plan | Consider starting with a key set of agents first, then roll out to larger groups. |
Develop a communication plan | Notify all stakeholders of the go-live date and any processes that they should know about. |
Final review and approval | Conduct a final review with stakeholders to get approval to go live. |
Launch Flex | Officially go live with Twilio Flex for your agents. |
Task | Details |
---|---|
Monitor system performance and user feedback | Closely monitor system performance and agent activity during the initial phase. |
Establish a channel for issue escalation | Establish a communication channel (like a Slack or Teams channel) where agents can escalate issues with the contact center. |
Gather feedback | Collect feedback from agents and stakeholders for any adjustments. |
Ongoing support and optimization | Provide ongoing support, address any issues, and optimize the system as needed. |
Learn how Flex updates are released | By 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 features | Visit the Twilio Changelog and subscribe to the RSS feed. |