Menu

Expand
Rate this page:

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

View checklist

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.

Environment/Networking Setup

  • Assess existing/anticipated equipment
    • Desktop/Virtual Desktop
    • Agent headsets, and capability to connect to a supported endpoint
  • Run Twilio Network Test and record results
  • Wired vs wireless network? Do you need/handle network changes?
  • Do you need some form of Interconnect?
  • Review Flex UI requirements
  • Determine whether your firewall supports DNS rules (for allowing Twilio traffic)

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

  • Create Agent runbook - things like checking agent network connectivity and procedures for using the Flex UI.
  • Review browser requirements again (Flex requires up-to-date version of Chrome)

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

  • Ensure audio drivers are working properly
    • CallerID needs for outbound calling (callerId can fail)
  • Create basic troubleshooting guides for agents around enabling audio

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
    • Particularly important if TaskRouter worker limit is increased
  • 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?
Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Community Forums or browsing the Twilio tag on Stack Overflow.

        
        
        

        Thank you for your feedback!

        We are always striving to improve our documentation quality, and your feedback is valuable to us. Please select the reason(s) for your feedback or provide additional information about how we can improve:

        Sending your feedback...
        🎉 Thank you for your feedback!
        Something went wrong. Please try again.

        Thanks for your feedback!

        Refer us and get $10 in 3 simple steps!

        Step 1

        Get link

        Get a free personal referral link here

        Step 2

        Give $10

        Your user signs up and upgrade using link

        Step 3

        Get $10

        1,250 free SMSes
        OR 1,000 free voice mins
        OR 12,000 chats
        OR more