Workflows

The intelligence layer that gives Ensoras real decision-making power. Workflows control how Ensoras thinks, what it can do, and how it responds to every customer scenario.

What Makes Workflows Powerful

Workflows are not simple "if-then" rules. They are the core intelligence layer that transforms Ensoras from a basic chatbot into a reasoning agent that can look up data, make decisions based on what it finds, take actions, and craft responses informed by everything it learned during the conversation.

When a customer sends a message, Ensoras evaluates it against your active workflows, activates the ones that match, and then reasons through the combined instructions, tools, and actions from all matched workflows to produce an intelligent response. This is fundamentally different from traditional automation:

  • Traditional automation: "If message contains 'refund', send template response"
  • Ensoras workflows: "Understand the customer wants a refund. Look up their order in Shopify. Check the order value and date. If it's within 30 days and under $100, process it. If over $100, escalate to a human with all the context. Tag the ticket, adjust priority, and craft a response that references the specific order details."

This all happens in a single conversation turn, automatically.

Navigate to Automation > Workflows in your project sidebar.

How Workflows Work

Multiple Workflows Compose Together

When more than one workflow matches a message, their capabilities merge. If a customer says "I want to return my order and I'm really frustrated", both a "Refund Requests" workflow and a "Frustrated Customers" workflow might activate simultaneously.

Ensoras then has access to:

  • Instructions from both workflows
  • Tools from both workflows (order lookup + knowledge base search + escalation)
  • Actions from both workflows (tagging + priority change + team assignment + Slack notification)

It uses this combined toolkit intelligently. It might look up the order using tools from the refund workflow, then escalate with high priority as instructed by the frustrated customer workflow, tag the ticket with both refund-request and escalation, and send a Slack notification to the support lead.

Conversation-Aware Triggers

Ensoras Analysis triggers don't just look at the current message in isolation. They evaluate the entire conversation history. This means:

  • A customer who discussed order issues 3 messages ago and now simply says "can you just cancel it?" will still trigger the order management workflow
  • Escalation workflows detect building frustration across multiple messages, not just a single angry message
  • Follow-up questions about a topic remain in context even if the current message is vague

Workflow Structure

Every workflow has these components:

Basic Information

  • Workflow Name - A descriptive name (e.g., "Refund Requests")
  • Priority - Execution order: High, Medium, or Low. Higher priority workflows take precedence when multiple workflows activate.
  • Description - Internal notes for your team. This is not visible to Ensoras.
  • Active - Toggle to enable or disable the workflow

Trigger Configuration

The trigger defines when the workflow activates. Choose one of four strategies:

Ensoras Analysis (Recommended) - Describe in plain English when the workflow should trigger. Ensoras evaluates each message with full conversation context to determine if the workflow should activate.

Keyword - Match specific words. Choose "Any" (trigger if any keyword found) or "All" (all keywords must be present). Fast and simple, good for specific terms like product names.

Phrase - Match exact phrases. Choose exact match (entire message must equal the phrase) or partial match (phrase can appear anywhere).

Pattern - Match regex patterns for structured data like order numbers (/order\s*#?\s*\d{4,}/i) or email addresses.

Sensitivity (Ensoras Analysis only)

Controls how closely a message must match before the workflow activates:

  • Low sensitivity - Casts a wider net, good for general-purpose workflows
  • Medium (default) - Balanced matching for most scenarios
  • High sensitivity - Strict matching, use for high-impact workflows like escalation where false positives are costly

Workflow Instructions

This is the most important field. Instructions tell Ensoras what to do when the workflow activates. Ensoras reads these instructions and uses them to make decisions about tools, actions, and response content.

Write instructions like you would brief a senior support agent:

When this workflow triggers, look up the customer's order using Shopify.
Check the order status and value.

If the order is under $100 and was placed within 30 days:

  • Provide the refund policy from the knowledge base
  • Add the "refund-eligible" tag
  • Tell the customer you're processing their refund

If the order is $100 or more, or older than 30 days:

  • Escalate to a human agent
  • Set priority to High
  • Add the "manual-review" tag
  • Let the customer know a specialist will follow up

If you can't find the order:

  • Ask for the order number or email address
  • Search their previous tickets for context

Ensoras reads these instructions and then reasons about which tools to call and which actions to execute. It is not a script - Ensoras applies judgment. If the customer already provided their order number, it skips asking for it. If the knowledge base has specific return instructions for the product category, it includes those details.

Available Actions

Select which actions Ensoras can use when this workflow triggers. Ensoras will decide when to use each action based on the instructions and conversation context. Attaching an action does not mean it always runs - it means Ensoras can use it when appropriate.

Ensoras Tools Configuration

Select which tools Ensoras can use during the conversation. This is where the real power comes in. Tools let Ensoras gather live data before making decisions:

  • A Shopify tool lets Ensoras look up real order details, not just guess
  • A Knowledge Base Search lets Ensoras find the exact policy or answer
  • A Ticket Search lets Ensoras see if this customer has contacted before
  • A custom API Call tool lets Ensoras query your CRM, inventory system, or any external service

Tool results are returned to Ensoras in real-time, and Ensoras incorporates that data into its reasoning and response. When Ensoras looks up an order and sees it was delivered 45 days ago, it factors that into the refund decision.

Channel Configuration

Control which channels this workflow applies to. You can select any combination of your enabled channels (Widget, Email). Leave empty to activate on all channels.

A welcome greeting workflow might only apply to the widget. A refund workflow applies to both widget and email.

Response Personality & Guidelines

Define tone and behavior specific to this workflow. This overrides the global communication style when this workflow is active.

For example, an escalation workflow might use a calming, empathetic tone while a product recommendation workflow uses an enthusiastic tone.

Creating a Workflow

  1. Navigate to Automation > Workflows
  2. Click New Workflow
  3. Fill in:
    • Name, priority, and description
    • Select the trigger strategy and configure it
    • Write detailed workflow instructions
    • Select available actions and tools
    • Choose which channels it applies to
    • Optionally set response personality
  4. Save

Real-World Examples

Order Status Lookup

Your most common question. Instead of template responses, Ensoras actually looks up the order.

Trigger: Ensoras Analysis - "Customer is asking about order status, tracking, delivery, or where their package is"
Sensitivity: Low (safe, read-only operation)
Tools: Shopify Order Lookup, Knowledge Base Search
Actions: Add Tags

Instructions:

Look up the customer's order in Shopify using their email or order number.
If found, provide the current order status, tracking information if available,
and expected delivery date.

If the order shows as delivered but the customer says they haven't received it, search the knowledge base for the "missing package" policy and guide them through the process.

Always add the "order-inquiry" tag.

Intelligent Refund Handling

Different outcomes based on actual order data, not just keywords.

Trigger: Ensoras Analysis - "Customer wants a refund, return, or money back for a purchase. Includes complaints about defective products where they want their money returned."
Sensitivity: Medium
Tools: Shopify Order Lookup, Knowledge Base Search
Actions: Add Tags, Update Ticket Priority, Assign Team, Escalate to Human

Instructions:

First, look up the customer's order to understand what was purchased and when.
Search the knowledge base for our current refund policy.

For orders under $100 placed within 30 days:

  • Provide the standard refund process from the knowledge base
  • Add "refund-request" and "self-service" tags
  • Keep priority at Medium

For orders $100+ or outside the return window:

  • Escalate to a human agent
  • Assign to the Billing Team
  • Set priority to High
  • Add "refund-request" and "manual-review" tags
  • Inform the customer that a billing specialist will handle their case

For defective products regardless of value:

  • Set priority to High
  • Add "defective" and "quality-issue" tags
  • Search knowledge base for the warranty claim process
  • Provide warranty instructions to the customer

VIP Customer Detection

Combine tool results from one workflow with decisions from another.

Trigger: Ensoras Analysis - "Customer mentions a large order, multiple purchases, loyalty program, or identifies themselves as a long-term customer"
Sensitivity: Medium
Tools: Shopify Customer Lookup, Ticket Search
Actions: Update Ticket Priority, Assign Agent, Send Slack Notification, Add Tags

Instructions:

Look up the customer's purchase history. Check their previous tickets.

If total lifetime spend exceeds $500 or they have more than 10 orders:

  • Set priority to High
  • Assign to our VIP specialist agent
  • Send a Slack notification to the support-vip channel
  • Add "vip" tag

If they have 3+ previous tickets in the last month:

  • This customer may be experiencing ongoing issues
  • Set priority to Urgent
  • Add "recurring-issue" tag
  • Note their previous tickets in your response

Proactive Escalation

Detect frustration before it becomes a complaint.

Trigger: Ensoras Analysis - "Customer is showing signs of frustration, anger, or dissatisfaction. This includes aggressive language, repeated requests for the same thing, threats to leave or post reviews, or expressing that previous help was inadequate."
Sensitivity: High (avoid false positives on casual expressions)
Actions: Escalate to Human, Update Ticket Priority, Assign Team, Send Slack Notification, Add Tags

Instructions:

This customer needs special attention. Do NOT try to resolve the issue with
a standard response.
  • Immediately escalate to a human agent
  • Set priority to Urgent
  • Assign to the Escalations Team
  • Add "escalation" and "frustrated-customer" tags
  • Send a Slack notification to support-urgent
  • Respond with empathy: acknowledge their frustration, apologize for the experience, and let them know a senior agent is being connected

Priority and Execution Order

When multiple workflows match, priority determines their influence:

  • High - Processed first. Use for security, escalation, and high-impact scenarios.
  • Medium - Standard categorization and routing.
  • Low - General tagging and non-critical augmentation.

Higher priority workflows take precedence when their instructions conflict with lower priority ones.

Workflow Execution Visibility

Every workflow execution is tracked and visible in your project:

In the ticket view: Each Ensoras response shows which workflows triggered and what actions were taken.

On the Dashboard: Workflow analytics show trigger rates and which workflows are most active. This helps you identify workflows that need tuning or instruction refinement.

Best Practices

Start with 3-5 core workflows. Cover your most common scenarios first: order inquiries, refund requests, general FAQ, and escalation. Add more as you learn from real conversations.

Use Ensoras Analysis for most triggers. It handles nuance, context, and natural language far better than keyword matching. Reserve keyword/phrase/pattern triggers for specific technical patterns like order number detection.

Write instructions like you're briefing a human agent. Include decision trees, edge cases, and what to do when information is missing. The more specific your instructions, the more accurately Ensoras handles the scenario.

Attach only relevant tools and actions. A FAQ workflow doesn't need Shopify Order Lookup. An order status workflow doesn't need Slack Notification. Keeping workflows focused makes Ensoras's decisions faster and more accurate.

Use higher sensitivity for high-impact workflows. Escalation and priority changes should use strict matching. General tagging and information-gathering workflows can use lower sensitivity.

Combine workflows for complex scenarios. Instead of one massive workflow that handles everything, create focused workflows that compose together. A frustrated customer asking about a refund will trigger both the escalation workflow and the refund workflow, giving Ensoras the combined toolkit to handle the situation intelligently.

Monitor and refine. Check the Dashboard for workflow success rates. Review ticket views to see which workflows triggered and whether the decisions were correct. Adjust thresholds, instructions, and tool attachments based on real performance.

Next, learn about Actions to see what automations you can attach to workflows.