AI Customer Support — Usage Guide

Everything you need to know to set up live chat, configure AI auto-replies, manage your FAQ, and handle conversations from your dashboard.

Overview

💬

Live Chat Widget

Floating chat bubble on every storefront page. Customers chat without creating an account.

🤖

AI Auto-Replies

Order tracking (WISMO) is rule-based. FAQ answers use RAG from your knowledge base.

📥

Dashboard Inbox

All conversations in one real-time inbox. Reply, resolve, and track unread counts.

AI Customer Support is one feature with three interconnected parts: the storefront widget customers see, the dashboard inbox you use to reply, and the AI engine that answers automatically. You can use any combination — just the widget (manual support only), just the widget + inbox (reactive support), or the full setup with AI enabled (automated + human hybrid).

1

Enable the Chat Widget

A

Navigate to your store

From the dashboard, go to your store's overview page.

B

Open Customer Support

In the Quick Actions grid, find the Customer Support section. Click Widget Settings.

C

Toggle the widget on

Find the "Enable chat widget" toggle and turn it on. The chat bubble will appear on your storefront immediately.

💡

The widget is disabled by default on every new store. Enabling it takes effect within 60 seconds — the storefront caches widget config for 1 minute.

2

Configure Widget Settings

Position
Bottom-right (default) or bottom-left
Avoid bottom-left if your store has a bottom navigation bar.
Primary colour
Hex code or pick from 6 presets
This colour is used for the chat header, bubble, and send button.
Greeting message
Any text, up to 500 chars
Shown as the first message when a visitor opens the chat. Default: "👋 Hi! How can I help you today?"
Offline message
Any text
Shown when the widget is enabled but merchant is not responding. The AI can still reply.
Pre-chat form
Toggle on/off
When on, asks for name and email before the chat opens. The email is used by WISMO for order lookup.
Enable AI
Toggle on/off
Master toggle. When off, no AI replies are sent — only manual merchant replies.
AI confidence threshold
0.0 – 1.0 (slider)
Future use for scoring. Currently WISMO always fires when detected; FAQ RAG fires when matching content is found.
3

Build Your FAQ Knowledge Base

The FAQ Knowledge Base is where you write the content the AI uses to answer questions. Think of it as training the AI — every Q&A pair you add becomes searchable by the AI when a customer asks a related question.

1

Go to FAQ Knowledge Base

From your store overview, click FAQ Knowledge Base in the Customer Support section.

2

Create a category

Click "New Category". Name it something descriptive: "Shipping & Delivery", "Returns & Refunds", "Products", "Payments". Categories keep your FAQ organised.

3

Add questions with "Add question"

Click "Add question" inside any category. Type the question exactly as a customer might ask it. Write a complete, clear answer. Click Save.

4

Wait ~5 seconds for AI indexing

You'll see a toast: "FAQ item added — AI will learn from it shortly." The embedding is generated in the background. After ~5 seconds, the AI can use this answer.

Write questions the way customers ask them. "What is your return policy?" works better than "Return policy". The AI does semantic matching — phrasing matters for relevance.

You can edit answers at any time. When you save an update, the old embedding is automatically replaced. The AI uses your latest version within seconds.

⚠️

Empty categories are fine. They won't appear in the storefront FAQ display until they have at least one item.

Suggested FAQ categories to start with:

Shipping & Delivery

How long does shipping take? Do you ship internationally? What carriers do you use?

Returns & Refunds

What is your return policy? How do I start a return? When will I get my refund?

Orders

Can I change my order? Can I cancel? What if my order arrives damaged?

Products

How do I find my size? Are products in stock? What materials are used?

Payments

What payment methods do you accept? Is my payment secure?

Promotions

Do you have a loyalty programme? How do discount codes work?

4

Enable AI Auto-Replies

1

Open Widget Settings

Store overview → Widget Settings.

2

Toggle "Enable AI" on

From this moment, every customer message will be checked for WISMO patterns first, then FAQ matches. Both happen automatically.

💡

The AI only sends a reply if it finds a relevant answer. If a customer asks something completely outside your FAQ and it's not an order tracking question, the AI stays silent — the conversation stays open for you to reply manually.

⚠️

Requires OpenAI API key on the backend. If OPENAI_API_KEY is not configured in your environment, WISMO will still work (it doesn't use LLM) but FAQ RAG answers will not be generated.

How WISMO Order Tracking Works

WISMO ("Where Is My Order?") is the most common customer support question. The system handles it using fast pattern matching — no AI model, no latency, no cost per query.

Detected patterns (any phrasing is matched)

"Where is my order?"
"Track my order / package"
"What's my order status?"
"When will it arrive?"
"When will it ship?"
"My order hasn't arrived"
"Check my order #1234"
"Shipping update please"
"My package hasn't come yet"

How it resolves:

Order # found in message

e.g. "Check order #1234"

Looks up by Medusa display_id → replies with order details
Email found in message

e.g. "[email protected] — where's my order?"

Looks up last 3 orders for that email → replies with the most recent
Pre-chat email provided

e.g. Customer filled email in the pre-chat form

Uses saved email for lookup — no extraction needed
No identifier found

e.g. "Where is my order?"

Asks: "Could you share your order number (e.g. #1234) or the email used at checkout?"

The reply includes: order number, current status, payment status, items ordered, total, and all tracking links as clickable URLs. If the order has no tracking yet, this is stated clearly.

Enable the pre-chat form (name + email) so WISMO can look up orders by email even when the customer doesn't include an order number in their message.

How RAG FAQ Answers Work

RAG (Retrieval-Augmented Generation) is how the AI answers FAQ questions. When a customer sends a message that is not a WISMO question, the system:

1Converts the customer's message into a vector (numerical representation of meaning)
2Searches your FAQ embeddings for the most semantically similar Q&A pairs (top 5)
3If matching FAQ content is found, passes those answers + the question to GPT-4o-mini
4GPT-4o-mini formulates a clear, helpful answer based only on your FAQ content
5The answer is sent as an AI message in the conversation
If no matching FAQ content is found, the AI stays silent — no hallucinated answer is sent
💡

The AI never makes things up. It only generates an answer when your FAQ has relevant content. This is the critical difference between RAG and a basic chatbot — RAG is grounded in your actual data.

The more FAQ content you add, the better the AI answers. A sparse FAQ (3 items) will only auto-answer 3 types of questions. A rich FAQ (50+ items across multiple categories) will handle most common questions automatically.

Using the Dashboard Inbox

Finding the inbox

Store overview → Chat Inbox (Customer Support section). You'll see a red badge when you have unread conversations.

Status tabs

AllEvery conversation regardless of status.
OpenActive conversations waiting for or in progress with a reply. This is your working queue.
WaitingYou've replied and are waiting for the customer to respond.
ResolvedClosed conversations. Searchable for reference.

Message colours in the conversation thread

Gray backgroundMessage sent by the visitor
Indigo backgroundYour reply
Blue-50 + "AI" badgeAuto-reply sent by the AI (WISMO or RAG)

Replying

Type in the reply box at the bottom of the conversation. Press Enter to send. The message is delivered to the customer's widget in real time via WebSocket.

Resolving conversations

Click Resolve when you're done. The conversation moves to the Resolved tab. You can Reopen it at any time. Messages are never deleted.

The Storefront Widget

What your visitors see

A floating chat bubble in the corner you chose (bottom-right or bottom-left). When clicked, a chat window opens showing your greeting message. If the pre-chat form is enabled, they're asked for name and email first.

Session persistence

Once a visitor has chatted, their session is saved in the browser's localStorage. When they return to the store, they see their previous conversation — they don't have to start over.

Real-time replies

When you reply from the dashboard, the message appears in the customer's widget instantly via WebSocket. When the AI sends a reply, it appears the same way.

💡

The widget has no dependency on third-party scripts. It's part of your storefront build — it doesn't add external domains, doesn't slow page load, and doesn't affect your Core Web Vitals.

End-to-End Message Flow

Here's exactly what happens when a customer sends a message:

Customer

Opens the chat widget on your store

System

If pre-chat form is enabled: shows name/email form. Customer submits → conversation created.

Customer

Types a message and hits Enter (or the send button)

Storefront

POSTs the message to the backend via REST. Optimistic message shown immediately.

Backend

Saves the message to the database

WebSocket

Broadcasts the message to the conversation room (you see it in your dashboard instantly)

WebSocket

Notifies your store room (unread badge updates)

AI Pipeline

Runs asynchronously in the background (does not delay the response to the customer)

AI: WISMO?

Is it an order tracking question? YES → WismoService looks up the order → formats reply → skips RAG

AI: RAG?

NOT a WISMO question + AI enabled? → searches FAQ embeddings → if matching content found → generates answer

AI

Saves the AI reply to the database → broadcasts to the conversation room

Customer

Sees the AI reply in the widget in real time (via WebSocket)

You

See the full conversation in your inbox. If the AI handled it, you can resolve it. If not, reply manually.

Tips & Best Practices

Enable the pre-chat form to supercharge WISMO

When a customer enters their email in the pre-chat form, WISMO can look up their orders without needing them to type their order number. This dramatically improves the auto-reply rate for order questions.

Start FAQ with your top 10 support questions

Look at your last 50 support emails. What do people ask most? Those are your first FAQ items. Even 10 well-written Q&A pairs will deflect a significant share of repetitive questions.

Write answers in full sentences

The AI uses your FAQ answers verbatim (in part) to generate replies. "3–5 business days" is less useful than "We use standard shipping which typically takes 3–5 business days within the US."

Use the widget's offline message honestly

If you're a solo operator who can only reply in the evenings, say so: "Hi! I'll reply within a few hours. In the meantime, the AI can help with common questions." Sets clear expectations.

Monitor AI replies for the first week

When you first enable AI, check the inbox daily. Are the AI replies accurate? If one is wrong, update the FAQ answer — it'll be re-embedded within seconds.

AI replies appear in the same thread as your replies

Customers see AI replies labeled as AI. You see them labeled in the dashboard too. There's full transparency — no pretending the AI is a human.

Resolve AI-handled conversations to keep your inbox clean

When the AI has fully answered a question and the customer didn't follow up, mark the conversation Resolved. This keeps your Open tab showing only conversations that genuinely need attention.

11

Canned Responses

Canned responses are saved reply templates. Type a short keyword in the reply box, select your template, and the full answer fills in instantly — so you stop retyping the same phrases dozens of times a day.

1

Open Canned Responses

Store overview → Customer Support → Canned Responses.

2

Click "New Canned Response"

Give it a short trigger keyword (e.g. "refund") and write the full response text.

3

Use it in the inbox

In any conversation reply box, type "/" followed by your keyword. A picker appears — select the response and it fills the box.

Create canned responses for your 10 most common replies: tracking update, refund started, apology for delay, out of stock, discount offer, etc. Most merchants save 30+ minutes a day once they have 10–15 templates set up.

12

CSAT & Sentiment Analysis

CSAT surveys

When you resolve a conversation, a satisfaction survey is automatically sent to the customer via the widget. They can rate the interaction thumbs up or thumbs down with an optional free-text comment. Scores aggregate into your real-time CSAT score visible in the Analytics dashboard.

CSAT survey flow

You click ResolveConversation moves to Resolved tab
System sends CSAT surveyCustomer sees thumbs up / thumbs down in the widget
Customer ratesScore saved; optional comment captured
Dashboard updatesCSAT % shown in Support Analytics in real time

Sentiment analysis

Every incoming customer message is automatically analysed for tone. Messages are classified as Positive, Neutral, or Negative. The sentiment badge is shown next to the conversation in your inbox, so you can instantly spot frustrated customers and prioritise urgent conversations.

💡

Sentiment analysis runs asynchronously in the background and does not add latency to message delivery. Results typically appear within 1–2 seconds of the message arriving.

13

Proactive Chat Triggers

Proactive cues automatically open the chat widget (or send a first message) when a visitor matches conditions you define — without them clicking the chat bubble. Use this to engage visitors who are browsing a product page for a long time, about to abandon checkout, or reaching a scroll threshold on your homepage.

Available trigger conditions

Page URL contains
Fire on /products/, /checkout/, /cart/
Great for product-specific or checkout recovery messages
Time on page (seconds)
e.g. fire after 30 seconds
Engage visitors who are browsing but haven't asked a question
Scroll depth (%)
e.g. fire when 70% scrolled
Engage visitors who've read enough to consider buying
1

Open Proactive Cues

Store overview → Customer Support → Proactive Cues.

2

Click "New Cue"

Choose a trigger condition, set the threshold, and write the proactive message (e.g. "Need help finding the right size? I'm here!").

3

Activate

Toggle the cue on. It starts firing on your storefront immediately.

The most effective proactive cue for e-commerce: trigger on URL containing /checkout + time on page 45 seconds with message "Having any trouble checking out? I can help!" — a well-timed recovery message here can meaningfully reduce cart abandonment.

14

Tags, Assignment & Internal Notes

Conversation tags

Tags are coloured labels you apply to conversations to categorise them. Create tags like Refund, Shipping Issue, VIP Customer, Urgent, Bug Report. Then filter your inbox by tag to batch-process similar requests at once.

1

Create tags

Settings → Customer Support → Tags → New Tag. Pick a name and colour.

2

Apply to a conversation

Open any conversation in your inbox. Click the Tags field in the sidebar → select tags from the dropdown. Multiple tags per conversation are supported.

3

Filter by tag

In the inbox, use the "Tag" filter dropdown to show only conversations with a specific tag.

Agent assignment

Assign any conversation to a specific team member. The assigned agent can filter the inbox to "Assigned to me" to see only their conversations. First response time is tracked automatically from when the conversation is assigned to when the agent sends their first message.

Internal notes

Need to leave context for a colleague without the customer seeing it? Switch to the Notes tab in the reply box and type your internal note. It appears in the conversation timeline with a different visual style — visible only to your team, never sent to the customer.

💡

Internal notes are ideal for handoffs: "Customer is VIP, their last 3 orders were delayed — give priority handling and consider a discount" is the kind of context that ensures great service when multiple team members share an inbox.

15

Business Hours & Auto-Close

Business hours

Configure your support hours per day of week. When a visitor chats outside your hours, they see your configured offline message and your response time expectation. You can choose to disable AI replies outside business hours (so the AI doesn't set a misleading expectation that a human is monitoring) or keep them on 24/7.

1

Open Business Hours settings

Store overview → Customer Support → Business Hours.

2

Set hours per day

Toggle each day of the week and set the start/end time. Set timezone to match your location.

3

Configure outside-hours behaviour

Choose whether to show the offline message, disable AI, or collect email for a follow-up.

Auto-close idle conversations

Conversations that go quiet for a configurable period are automatically moved to Resolved, keeping your inbox from filling with abandoned chats. The default idle timeout is 24 hours for open conversations. You can change this in Customer Support settings.

Set auto-close to 48 hours if your customers often return to a conversation with a follow-up question the next day. Set it shorter (6–8 hours) if you want a clean inbox and most of your conversations resolve in a single session.

16

Support Analytics

The Support Analytics dashboard shows you how your team and AI are performing. Access it from Store overview → Customer Support → Analytics.

Metrics tracked

Total conversationsAll conversations started in the selected date range
Resolved conversationsConversations marked Resolved in the period
AI deflection rate% of conversations where the AI sent at least one reply (no manual reply needed)
Avg first response timeTime from conversation open to first merchant reply, averaged across all conversations
CSAT score% positive ratings from CSAT surveys, updated in real time
Sentiment breakdownProportion of Positive / Neutral / Negative incoming messages
Busiest hoursHeatmap of when conversations most commonly start (hour × day of week)

Check the "Busiest hours" heatmap after your first week. If you see a clear peak at 7–9 PM, that's when you need to be available — or when your AI should be doing the heaviest lifting.

17

Smart Replies & AI Summaries

Smart reply suggestions

When you open a conversation, the AI reads the last 10 messages and generates 3 contextually relevant reply suggestions above the reply box. Click any suggestion to fill the reply box — edit as needed, then send. Smart replies dramatically speed up your first response, especially when handling a high volume of similar questions.

AI conversation summaries

After every conversation is resolved, the AI automatically generates a concise summary and saves it as an internal note. The summary includes: what the customer asked, what was resolved, and any follow-up needed. This is particularly valuable for team handoffs — a new agent opening a re-opened conversation immediately understands the full context.

Email transcript

When transcript sending is enabled in your settings, a full email transcript of the conversation is sent to the customer's email address when you resolve the conversation. Customers who want a paper trail of the support interaction particularly appreciate this feature.

💡

AI summaries and email transcripts both require a valid customer email address — either captured via the pre-chat form or linked from their Medusa customer account.

18

File Attachments

Both customers (via the storefront widget) and agents (via the dashboard inbox) can attach files directly in a conversation — images to show a damaged product, PDFs for invoices or instructions, screenshots of error messages.

Attachment details

Allowed file typesImages: JPEG, PNG, GIF, WebP — Documents: PDF — Text: TXT, CSV
Max file size10 MB per file
StorageYour store's dedicated Cloudflare R2 bucket — files from your store are never mixed with another store's files
URL formathttps://files.launchstore.io/store-{subdomain}/chat/{conversationId}/{filename}
RetentionFiles persist as long as the conversation exists. Deleting a conversation removes the files.

Encourage customers to attach a photo when they report a damaged item or the wrong product. This eliminates the back-and-forth of "can you describe the issue?" and lets you process the claim in one step.

💡

File attachments are uploaded directly to your store's R2 bucket — they do not pass through the chat API server. The upload endpoint returns a secure URL that is embedded in the chat message.

19

Search, Read Receipts & Typing Indicators

Inbox search

Use the search bar at the top of the Chat Inbox to instantly find any conversation. Search works across visitor name, email address, and the full text of every message in the conversation. Results update as you type.

Read receipts

Messages show a read receipt timestamp when the other party has opened the conversation and seen the message. When you read a conversation in the dashboard, the customer's widget updates to show the read time. When the customer opens the widget after you've sent a reply, you see the read time in your dashboard — so you know they've seen your answer.

Typing indicators

When the customer is typing in the widget, a typing indicator (animated dots) appears in your dashboard conversation view. Equally, when you are typing a reply, the typing indicator appears in the customer's widget. Both sides know the other is actively engaged — reducing unnecessary "are you still there?" follow-ups.

💡

Typing indicators and read receipts are delivered via WebSocket in real time. They add no perceptible latency and work on both desktop and mobile browsers.

Ready to enable AI Customer Support?

It takes less than 5 minutes to go from zero to a live chat widget with AI-powered auto-replies.