Configuring Zoho Desk AI Agents for Ticket Drafting
This guide outlines the steps to configure UltraCart's AI agents to integrate with Zoho Desk. By setting up these agents, you can automate the analysis of incoming support tickets and generate draft responses grounded in real-time UltraCart store data.
The AI agents do not send emails directly to customers. Instead, they create ticket drafts within Zoho Desk, allowing your support team to review, edit, and approve responses before they are sent.
Prerequisites
Before configuring the AI agents, ensure the following are established:
A Zoho Desk Account: You must have an active Zoho Desk account with admin privileges.
UltraCart-Zoho Desk Integration: The base integration between UltraCart and Zoho Desk must be successfully configured. Please refer to the Zoho Desk Integration Guide to complete this step.
AI Agents: At least one AI Agent available in UltraCart - Setting Up AI Agents
Conceptual Overview
It is important to understand how Zoho Desk concepts map to UltraCart's AI setup:
Zoho Departments: Broad functional areas within your support organization (e.g., "Customer Support," "Sales," "Technical Issues").
Zoho Classifications: Specific categories or tags used within Zoho to define the nature of a ticket (e.g., "Refund Request," "Shipping Delay," "Product Question").
UltraCart AI Classification Routine: A set of natural language instructions provided in UltraCart that tells the AI how to read an incoming ticket and assign it to the correct Zoho Classification.
UltraCart AI Agents: Virtual assistants configured to handle specific Departments and Classifications. They use detailed instructions to draft policy-compliant responses.
Step-by-Step Configuration
Step 1: Configure Departments and Classifications in Zoho Desk
The foundation of the routing system exists within Zoho Desk. You need to define the structure that UltraCart will read.
Log in to your Zoho Desk account.
Navigate to Setup (gear icon).
Departments: Under General, ensure your desired departments are created.
Classifications: Depending on your Zoho Desk configuration, setup specific fields or tags to represent ticket classifications (e.g., under Customization > Fields for a specific department). These are the values UltraCart will import.
Note: Ensure your Departments and Classifications are distinct and clearly named, as this simplifies the AI training process later.
Step 2: Navigate to Zoho Desk Settings in UltraCart
Log in to your UltraCart backend.
Navigate to Configuration > Integrations > Zoho Desk.
The configuration page below will load, reflecting the departments and classifications pulled from your Zoho Desk account.
Step 3: Define AI Classification Instructions
The "AI Classification" section is where you train the "dispatcher" AI. Its sole job is to look at a new ticket and decide which Zoho classification it belongs to.
In the large text area provided, write natural language prompts instructing the model on how to identify classifications.
Example Classification Instructions:
**Role:** You are the primary support ticket dispatcher for a nutritional supplement company. Your task is to analyze the content of incoming emails, determine the customer's primary intent, and assign the ticket to exactly **ONE** of the following Classifications.
**Priority Protocol:** If a ticket contains multiple issues, you must prioritize assignment based on the following order of urgency:
1. **Highest Priority:** Adverse Reactions or Allergy Alerts (health & safety concerns)
2. Financial Disputes (chargebacks, fraud claims)
3. Product Defects or Damages (broken glass, open seals)
4. Delivery Problems
5. Account Access Issues
6. Subscription Changes
7. Lowest Priority: General Questions or Feedback
**Critical Time-Based Rules:** Before assigning general categories, apply these specific rules based on timing mentioned in the ticket:
* **The "Order Lockdown" Rule:** If a customer wants to modify an order (e.g., change address, cancel a single non-recurring order) and states the order was placed *within the last 4 hours*, classify this immediately as **Shipment Or Delivery** so the warehouse can catch it. If the order was placed *more than 4 hours ago*, classify it as **Subscription Modifications** (as it's likely too late to stop the current shipment).
* **90-Day Guarantee:** If a customer requests a refund for their first order within a 90-day window mentioning the money-back guarantee, classify as **Refunds Or Returns**.
**Classification Definitions:**
Use the following criteria to assign the final classification:
* **Adverse Reactions Or Allergy Alerts:** Assign this classification if the customer mentions *any* negative physical reactions after taking a product (e.g., nausea, headaches, jitters, rashes), fears of an allergic reaction to ingredients, or general safety concerns. This is the highest priority category regardless of other content.
* **Chargebacks Or Payment Disputes:** Assign this if the customer explicitly mentions terms like "chargeback," "dispute with bank," "fraudulent charge," or "unauthorized transaction."
* **Subscription Cancellations:** Assign this for requests to *permanently* end a monthly supplement plan, stop future auto-ships, or complaints about unexpected recurring billing. Do not use this for temporary pauses.
* **Subscription Modifications:** Assign this for requests to adjust existing subscriptions, such as pausing/skipping next month's delivery, changing delivery frequency, swapping out supplement types in their bundle, or updating a payment method.
* **Shipment Or Delivery:** Assign this for issues involving lost packages, tracking numbers not updating, items damaged in transit (broken bottles), or immediate order modifications caught within the 4-hour lockdown window.
* **Refunds Or Returns:** Assign this for standard return inquiries, exchange requests for different flavors/types, or claims under the 90-Day Guarantee.
* **Personalized Assessment Questions:** Assign this if the ticket mentions the online "Wellness Quiz," questions about their quiz results, or why specific vitamin packs were recommended to them based on their assessment.
* **Product Usage Or How-To:** Assign this for general questions about directions (e.g., "take with food?"), dosage recommendations, ingredient sourcing, or non-shipping defects (e.g., "safety seal was missing under the cap").
* **Account Or Technical Support:** Assign this for issues regarding login failures, password resets, or errors on the website checkout page.
* **Other:** Only assign this if the customer intent is completely unclear, or the content is corrupted or in a foreign language requiring translation. Step 4: Configure Agents and Routing Logic
In the Agents section, you define which AI persona handles which type of ticket based on the classification determined in Step 3.
The routing logic depends on how you check the boxes next to an agent's name:
Configuration | Behavior |
|---|---|
Department Checked, No Classifications Checked | The "Catch-All" Agent: This agent can be assigned any ticket that enters that specific department, regardless of its classification. |
Department Checked, Specific Classifications Checked | The Specialist Agent: This agent will only be assigned tickets that match the checked classifications within that department. It will not handle generic tickets. |
Best Practice for Routing: It is highly recommended to configure a "generalist" agent for a department (no specific classifications checked) to act as a fallback for tickets that don't fit narrow criteria, alongside "specialist" agents for complex workflows like Refunds or Technical Support.
Step 5: Define Individual Agent Ticket Instructions
Once an agent is assigned a ticket, it needs to know how to respond. This is controlled by Agent Ticket Instructions.
Click the link or button associated with configuring specific agent instructions (refer to the Ticket Instructions Configuration documentation for detailed steps on this interface).
Provide detailed prompts for that specific agent persona. This includes:
Tone: e.g., "Professional and empathetic," or "Direct and technical."
Policies: e.g., "We offer a 30-day return window. If the order date is older than 30 days, politely decline the return and explain the policy."
Data Usage: Instruct the agent on how to use inserted UltraCart data (like order status or tracking links) in the response.
Best Practices
Iterative Training: Your first set of classification instructions won't be perfect. Review how the AI classifies real tickets and refine the instructions in the "AI Classification" text area regularly.
Explicit Policy Instructions: When defining Agent Ticket Instructions, be extremely clear about your business policies. The AI only knows what you tell it. If a refund policy has exceptions, state them clearly in the prompt.
Human in the Loop: Remember that these agents draft responses. Your human support team is the final quality control gate. Encourage them to edit drafts before sending, as this provides a feedback loop to improve future instructions.