Set up website chat
Configure the chat widget, conversation mode, visitor details and availability for your website.
On this page
Overview
Live Chat is the website widget configured at Settings → Support Channels → Live Chat (#/settings/channels/live-chat), gated by feature live_chat. Shortcode [elegant_support_chat] mounts it. The widget has tabs: Chat (or Chat AI when AI is enabled), Add New Ticket (Form Builder, surface chat_widget), and Document (real KB categories, popular articles, article detail). Modes: human only; AI first with human fallback; hybrid (AI assists, humans may take over). Appearance uses theme tokens so dark mode follows Settings → Appearance. Additional chat channels are configured through their installed extensions.
When to use this
Visitors want an answer without leaving the page. One widget shares tickets, KB, and optional grounded AI so you do not run a second helpdesk SaaS.
Where to find the controls
Settings catalog → Support Channels → Live Chat. Inbox has a Live Chat view for waiting sessions. Assets load from the plugin chat widget. Feature Manager live_chat must be on.
Who can make these changes
Admins with manage_settings configure. Agents with view_ticket / reply_ticket / assign_ticket work sessions from Inbox. Visitors use the public chat REST (nonce). Anonymous visitors are allowed when live_chat_allow_anonymous is on; email may still be required before handoff or ticket create. Additional capability requirements: elegant_support_manage_settings.
Before you begin
Set mode (human / ai_first / hybrid — falls back to human only when AI is unavailable). Configure pre-chat (name/email required|optional|hidden, privacy notice). Set availability (always / business_hours / custom calendar later). Enable attachments if you accept files. Rate limits and honeypot apply on public endpoints. Quick actions: comma list handoff,ticket,docs,order (order hidden without WooCommerce). Notify agents on handoff. Theme tokens — do not hardcode colors in the widget.
Follow these steps
- Enable live_chat.
- Open Live Chat settings.
- Choose mode.
- Configure pre-chat and privacy text.
- Set human availability vs business hours.
- Allow attachments if needed.
- Save and open a public page permitted by the display rules. The launcher is automatically enqueued when enabled; [elegant_support_chat] is an optional explicit mount.
- Open the site logged out.
- Complete pre-chat.
- Confirm tabs Chat / Add New Ticket / Document.
- Confirm an Inbox Live Chat row appears when a session starts or handoff occurs.
Settings reference
live_chat_mode, live_chat_allow_anonymous, live_chat_prechat, name/email field policy, privacy notice, availability, handoff message, notify agents, attachments, rate limits, quick actions, documents toggle, AI failed-turns threshold, widget theme tokens (dark/light).
Example workflow
A store uses hybrid, pre-chat email required, business hours 09–18, attachments on, documents on. After hours, AI answers from KB; no_evidence shows Talk to human and the handoff message; Inbox waits until morning unless Always availability is set.
Good practices
Keep chat_widget fields short; send structured work to Add New Ticket. Test dark mode with Appearance tokens. Exclude widget REST from cache. Documentation in the admin sidebar sits above Free/Dev if you need the in-app guide.
Important considerations
Human only still needs agents in Inbox. AI first without RAG produces no_evidence, not invented facts. Rate limits exist to stop abuse — do not turn them off on production. Security: nonce, no internal notes to the visitor, IDOR still applies if a ticket is created.
If something does not work
Widget not showing: feature off, shortcode missing, JS blocked, or cache. Session not in Inbox: polling/cron or feature off. Attachments rejected: Tickets file rules. Dark mode wrong: appearance tokens not applied (data-es-theme). Contact support after System Status and a screenshot of Live Chat settings (no secrets).