Customer chat and messaging

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-side
  • customerChatMessageRetentionDays — 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)

ActorSend messagesStart conversationsFile/voice uploads
Staff / adminNo product cap (high abuse ceiling server-side)UnlimitedHigh ceiling
Logged-in customer30 / minute5 / minute10 / minute
Guest10 / minute3 / minute5 / 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 customerChatMessageRetentionDays for the org
  • Removes file attachments from storage when applicable
  • Skips conversations that are ESCALATED or 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

RoleRoute
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

  1. Open /admin/customer-chat (owner admin may be required).
  2. Review inbox metrics (open conversations, response time — per dashboard cards).
  3. Select a thread or start chat from Customer management (Message action on a row).
  4. Reply with text; attach files only if UI supports it for your plan.
  5. 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.manage permission.

Customer side

Customers use Communication at /customer/communication.

Related articles

Loading footer...