Last verified: 2026-05-19
Customer chat and messaging
Merchant-side messaging with customers and related team communication features.
Plan features
enableCustomerChat— must be enabled on the subscription plan or send/start is blocked server-sidecustomerChatMessageRetentionDays— org-wide retention for customer↔merchant messages (daily cron purge)maxCustomerMessagesPerMonth— optional org-wide cap on inbound customer messages (-1= unlimited)enableTeamChat(internal team channels — may appear in dashboard panels)
Rate limits (fair use)
| Actor | Send messages | Start conversations | File/voice uploads |
|---|---|---|---|
| Staff / admin | No product cap (high abuse ceiling server-side) | Unlimited | High ceiling |
| Logged-in customer | 30 / minute | 5 / minute | 10 / minute |
| Guest | 10 / minute | 3 / minute | 5 / minute |
Limits are enforced on the server (Redis sliding window). The storefront UI also previews limits in the browser.
Maximum text message length: 10,000 characters (validated server-side for all senders).
Message retention (both sides)
Purged messages disappear for customers and staff. The daily retention job:
- Deletes messages older than
customerChatMessageRetentionDaysfor the org - Removes file attachments from storage when applicable
- Skips conversations that are
ESCALATEDor linked to an open order - Writes an audit log entry per org purge (
customer_chat_retention_purge)
In-app disclosure and near-cutoff warnings appear in admin/staff chat and storefront chat. Staff can Export chat (CSV) from the right-panel menu. Logged-in customers can download CSV from the retention notice when the conversation is tied to their account (not guest threads).
Dashboard paths
| Role | Route |
|---|---|
| Admin customer chat | /admin/customer-chat |
| Staff mirror | /staff/customer-chat |
Access note
Admin customer chat page may require organization owner admin profile (isOwner: true) in current implementation — verify for your tenant.
Steps
- Open
/admin/customer-chat(owner admin may be required). - Review inbox metrics (open conversations, response time — per dashboard cards).
- Select a thread or start chat from Customer management (Message action on a row).
- Reply with text; attach files only if UI supports it for your plan.
- Resolve or archive threads per your support SOP.
Typical use
- Order status questions → link customer to Manage orders updates.
- Escalate refunds to admins with
financial.managepermission.
Customer side
Customers use Communication at /customer/communication.