Structuring Inbound Email Flows with Advanced Skill-Based Routing
Executive Summary & Architectural Context
In modern contact centers, email is no longer a simple FIFO (First In, First Out) bucket. Customers send highly complex, multi-lingual requests with attachments, expecting rapid resolution. If an enterprise relies solely on direct-to-queue email routing, an English-only agent might be served a 4-page technical contract written in German, destroying SLAs as the agent fumbles with Google Translate before manually transferring the interaction.
The architectural solution in Genesys Cloud is the Inbound Email Flow combined with Skills-Based Routing. By intercepting the email inside Architect before it hits a queue, you can parse the email’s domain, subject line, and body content, apply appropriate ACD skills (Language, Product, Tier), and guarantee the email is routed to the exact agent qualified to handle it.
This masterclass details the engineering patterns for building intelligent email routing flows, utilizing logical parsing, and setting up dynamic bullseye fallbacks for digital channels.
Prerequisites, Roles & Licensing
- Licensing: Genesys Cloud CX 2 or 3.
- Roles & Permissions:
Architect > Flow > Edit(specifically Email flows).Routing > Email Domain > Edit.
The Implementation Deep-Dive
1. Intercepting the Email via Domain Configuration
Before Architect can touch an email, the domain must point to a flow.
- Navigate to Admin > Contact Center > Email.
- Select your provisioned domain (e.g.,
support@mycompany.com). - In the routing table, assign the
supportaddress to your new Architect Inbound Email Flow (do not assign it directly to a queue).
2. Building the Parsing Logic in Architect
When the email enters the flow, you have access to the Email object variables: Email.Subject, Email.Message.bodyValue, and Email.FromAddress.
Pattern A: Domain-Based VIP Routing
If the sender’s email domain belongs to your biggest client, route them to the VIP queue.
- Add a Decision node.
- Expression:
Contains(Email.FromAddress, "@megacorp.com") - If True, use a Transfer to ACD node targeting the
VIP_Queue.
Pattern B: Keyword-Based Skill Assignment
If the subject line contains words indicating a cancellation, assign the Retention skill.
- Add a Decision node.
- Expression:
Contains(ToLower(Email.Subject), "cancel") OR Contains(ToLower(Email.Subject), "refund") - If True, add an Update Skills node.
- Select the
Retention_Specialistskill.
3. Language Detection (The Advanced Pattern)
While Genesys Cloud offers native language detection via third-party integrations (AppFoundry), you can build rudimentary detection for specific regional inbox routing using Regex.
- Add a Decision node to check the top-level domain (TLD) of the sender.
- Expression:
EndsWith(Email.FromAddress, ".de")(Germany). - If True, use an Update Skills node to apply the
Germanlanguage skill. - Transfer to the
EMEA_Supportqueue.
4. Handling Attachments Safely
Emails with attachments (specifically .exe or .zip files) pose a severe security risk to agents.
- Add a Decision node to check for attachments.
- Expression:
Email.HasAttachments == True. - If True, you can route the email to a specialized “Tier 2 Triage” queue where agents are trained on security protocols, OR you can strip the attachments using a Data Action before transferring the email to standard agents.
Validation, Edge Cases & Troubleshooting
Edge Case 1: The “No Match” Fallback Trap
If an email subject line doesn’t match “Cancel”, and the domain isn’t “@megacorp”, and the TLD isn’t “.de”, what happens?
- The Trap: If your email flow does not have an explicit catch-all
Transfer to ACDnode at the very bottom of the logic tree, the flow will end, and the email will be disconnected (essentially deleted). - Solution: Always, without exception, place a
Transfer to ACDnode targeting aGeneral_Supportqueue at the absolute end of the flow.
Edge Case 2: Bullseye Routing on Emails
Bullseye routing (expanding the skill rings) works on emails exactly as it does on voice. However, the time-in-ring must be drastically adjusted.
- Troubleshooting: A voice call might expand rings every 60 seconds. An email SLA is typically 24 hours. If you set your email bullseye rings to 60 seconds, an email requiring a specialized
Germanskill will strip theGermanrequirement after 1 minute and route the German email to an English agent. - Solution: Adjust the queue’s bullseye ring timers for email to be measured in hours (e.g., 14400 seconds / 4 hours) before stripping specialized skills.
Official References
- Inbound Email Flows: Genesys Cloud Resource Center: Inbound Email flows overview
- Email Flow Variables: Genesys Cloud Resource Center: Email flow variables
- Bullseye Routing for Digital Channels: Genesys Cloud Resource Center: Bullseye routing