A checklist for building with Twilio Flex Building a contact center requires significant planning. This checklist is a starting point for project planning and getting your contact center operational.
Feel free to add, remove, and modify items from the list - we can't wait to see your Flex contact center!
Airtable The content on this page is here to be relatively easy to read - but the most up-to-date version (and, in our opinion, the most useful version) is the Airtable base version (pwd:lets-build-with-flex
). You can download the Airtable base as a CSV to use in your own project management workflow.
Plan Build Test/Iterate Launch
Environment/Networking Setup
Channels
Identify important
channels
Determine whether traffic will be inbound and/or outbound on each channel
Clarify
call recording
needs (as they relate to Work Force Management/
Work Force Optimization
)
Do you have an existing relationship with a SIP Carrier?
Routing
Document pain points and limitations in existing call routing strategy
Establish a routing style/routing rules (establish skills, activities, queue expressions, etc)
Learn about timeouts and confirm that they map to expected SLAs
Discuss potential race conditions for routing (If-Match and Etag headers?)
IVR/Studio
Learn about
Studio
Determine whether you need custom flows, or if the existing Messaging and Voice flows adequately serve your needs
Outline IVR and consider any need for machine intelligence in your IVR (e.g., with DialogFlow)
Is there a need for professional voice talent for IVR recording?
User management
Billing
CRM
Determine CRM needs for your agents (if any).
Identify what level of integration between Flex/CRM is possible and desired. Do you want to
embed the CRM in Flex as an iframe, or vice-versa
? Or perhaps create a custom plugin with a dedicated UI that leverages CRM functionality via API?
Plugins/Hosting
Outline what functionality needs to be added.
Establish a corresponding Plugin architecture
based on Plugin limits
Are you using Twilio Flex plugins or self-hosted Flex UI?
Best practices for release management (dev/stage/prod)
Have plans for testing functionality locally
Establish separate Flex accounts for stage/prod
Insights
Assess current WFM/WFO solutions, if they exist
Determine how existing solutions will need to change and/or phase out with Flex implementation
Scale
Develop a rollout plan (start with a key set of agents, then roll out to larger groups?)
Assess A2P 10DLC
concerns (if sending messages in the US)
Consider
global phone number requirements
for other geographies as needed
Determine what functions can rely on Twilio Serverless, and what logic should be offloaded to internal servers
Environment/Networking Setup
Node.js/npm installation for building your first Plugin
"npm install" package dependencies (and if required, install these for CI/CD setup)
Check accessibility of dev or prod environments (can they be reached in the form of webhooks from the internet, or will Twilio's traffic be denied?)
Other tools to check for compatibility: ngrok for webhook URLs in development environment: status callbacks, Twilio Functions/Twilio Studio
Channels
Acquire phone numbers and IDs to handle traffic at scale on each channel
Enable channels in different geographies with phone numbers and
handle geo-permissions
Routing
IVR/Studio
Implement IVR using Twilio Studio
Consider whether to build a conversational IVR/chatbot leveraging AI
Lay out your intents, "FAQs", data that needs to be gathered, defaults, fallbacks, etc
User management
Integrate SSO provider with Flex
Set up logic for provisioning/deprovisioning users
Configure roles for individual agents. Make sure agents/supervisors get the appropriate
role
when they log in with SSO.
Configure
skills
for individual agents.
Establish patterns for worker's unique friendly names (what do you do if you have Charlie Smith and Chloe Smith?)
CRM
Insights
Confirm that Task Attributes from routing step are
formatted correctly
to be consumed by Insights
Enable Insights using SSO. (Setting up different roles and attributes)
Add a WFO role for users to see WFO tab
Environment/Networking Setup
Channels
Test call recording (is it working as expected?) for inbound and outbound calls
Monitor message throughput across asynchronous channels
Insights
Handle data inconsistencies
Change agent statuses when they forget to log out, etc.
Debugging and troubleshooting
Plugins/Hosting
Integrate
Plugin CLI
with CI/CD and other internal tools
Establish release cadence and best practices
IVR/Studio
Gather customer and agent feedback, decide whether to collect more or less information earlier in the IVR for higher-quality conversations
Agent Experience/End User Guides
Scale
List of IPs
that should be added to allowlist to use different products in Flex.
Implement logic to catch any calls that fail to be added to
voice
/
message queues
Review existing rate limits and needed capacity for Twilio products
Investigate rate limits for any 3rd party integrations, and work with 3rd party sales/professional services to increase limits or improve efficiency
E.g., Caching tokens to prevent per-hour limits, increasing concurrency on a 3rd party API endpoint
Migrate Twilio Function prototypes to internal infrastructure/servers as necessary
Establish
practices for DevOps at scale
Billing
Have a valid payment method on file and confirm/establish payment plan
Validate that payment method is operational
Agent Experience/End User Guides
Ensure audio drivers are still working properly across different agent technology
Share troubleshooting guides with agents around enabling audio
Create End User guides for critical paths in using Flex (e.g., accepting tasks, making an outbound call)
Scale
Add VPN IP addresses to allowlist
Add IPs for other products to Twilio allowlists
Check Twilio API Concurrency at scale - does this need to be increased?