MDS Live Chat and Helpdesk

Description

MDS Live Chat and Helpdesk adds a professional customer support chat system to your WooCommerce store, featuring a WhatsApp-style support dashboard for managing conversations.

Features

  • Real-time live chat without page refresh
  • WhatsApp-style customer support interface
  • Automatic ticket ID generation
  • Guest and registered customer support
  • Customer order lookup
  • Total WooCommerce order value display
  • Recent WooCommerce orders
  • Quick replies
  • Auto Reply automation
  • Auto Resolve automation
  • Agent roles and permissions
  • Chat transfer between agents
  • File sharing from agents
  • Self-hosted Web Push notifications
  • Mobile responsive interface

Requirements

  • WooCommerce must be installed and active for order-history features to work. The chat system itself will function without WooCommerce, but order lookups will be skipped.

External Services

This plugin uses the browser’s native Web Push capability to deliver chat-reply notifications to customers and agents even when the site isn’t open in their browser.

What it is: Web Push is a W3C web standard built into every modern browser (Chrome, Firefox, Edge, Safari, etc.). It is not a third-party SaaS product – this plugin does not use OneSignal or any similar service, and no external account or API key is required. However, delivering a push message still relies on infrastructure the browser vendor itself operates (for example Google’s Firebase Cloud Messaging for Chrome/Edge, or Mozilla’s Push Service for Firefox), because that is how the Web Push standard works in every browser that implements it. Because of that, this counts as an external service for disclosure purposes even though no MDS-operated or other third-party server is involved.

What is sent, and when: When a customer or agent opts in to notifications, their browser generates a push subscription (an endpoint URL plus encryption keys), which is stored on your own WordPress database – not on any external server operated by this plugin. When a new chat reply is sent, the plugin encrypts the notification title and message text (RFC 8291) and delivers it directly from your own site to that browser vendor’s push endpoint, which then delivers it to the subscribed device. This happens only when a reply is sent on a chat the visitor has subscribed to; no data is sent at any other time, and no chat content is ever sent to us (the plugin developer) or stored anywhere outside your own WordPress database.

Related policies:

Screenshots

Installation

  1. Upload the mds-live-chat-helpdesk folder to the /wp-content/plugins/ directory, or install the plugin zip directly through the Plugins screen.
  2. Activate the plugin through the “Plugins” screen in WordPress.
  3. Go to MDS Live Chat and Helpdesk Settings to configure the widget’s appearance, position, and push notification icon.
  4. Go to MDS Live Chat and Helpdesk Add Users / Roles to add support agents.
  5. Visit your site – the chat icon should appear according to your settings.

FAQ

Does this require WooCommerce?

WooCommerce is recommended so the order-history and order-value features work, but the core chat functionality works without it.

Do I need a third-party push notification service?

No. MDS Live Chat and Helpdesk generates its own Web Push (VAPID) keys automatically on activation and sends notifications directly through each browser’s native Web Push service – no external account or API key required. See the “External Services” section above for details on how this works.

Can customers attach files?

Not currently. Agents can send photos and documents to customers from the admin chat panel, and customers can view/download them, but there is no upload option in the customer-facing widget itself.

Does this work for guests as well as logged-in customers?

Yes. Guests provide a name, email, and mobile number to start a chat; logged-in customers’ details are used automatically.

Reviews

August 2, 2026
⭐⭐⭐⭐⭐ Excellent Live Chat Plugin!Easy to install, fast, and reliable. The chat interface is clean, mobile-friendly, and helps us respond to customers instantly. It has improved our customer support and website engagement. Highly recommended!
Read all 2 reviews

Contributors & Developers

“MDS Live Chat and Helpdesk” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.3.0

  • Security: fixed a flaw where verify_customer_access() could not distinguish “no such chat” from “chat exists but its access token is empty/NULL” – both cases were treated as authorized. The check now fails closed: a chat with no token denies access rather than granting it. Affects the poll, send, mark-seen, and subscribe endpoints.
  • Security: resume-by-ticket (used to reconnect to a chat via Ticket ID + email/phone, e.g. after clearing browser data) now has rate limiting, both per requesting IP and per ticket ID, after repeated failed attempts. This was previously guessable/brute-forceable since ticket IDs are sequential and the contact field alone isn’t a strong secret.
  • Removed a “legacy chat” bypass in poll_messages/verify_customer_access that is no longer applicable (the plugin has no prior public release to remain compatible with) and was itself the source of the two issues above.
  • Hardening: the admin menu now only registers at all for users who are agents/admins, instead of registering visibly for every logged-in WordPress user (e.g. customer accounts) and relying solely on a page-level check to turn them away. No change for actual agents/admins.
  • Removed a leftover unused settings-save handler (admin-post.php action) from before the Settings page was moved to the REST API; the REST endpoint has handled saving for some time; this was dead code, not a live code path.
  • Fix: removed an incorrect “Requires Plugins: woocommerce” declaration in the plugin header. WooCommerce is optional (order lookup is skipped gracefully when it isn’t installed, as already documented), but that header hard-blocks activation entirely on sites without WooCommerce – it contradicted the plugin’s actual, intended behavior.

1.2.1

  • Fix: the “Start Chat” (and “Resume Ticket”) button had no protection against multiple clicks, so a double-click or a slow connection could fire the request more than once, creating several duplicate tickets from the same visitor. The button is now disabled with a loading label while the request is in progress, and a matching safety check was added on the server so an accidental rapid resubmission reuses the ticket that’s already being created instead of making a new one.

1.2.0

  • New: Agents can now send photos and documents to customers from the admin chat panel (an attach button next to Send). Customers can view images inline and download any file – WhatsApp-style. This is admin-to-customer only; the customer-facing widget does not gain a file-upload option, by design.

1.1.0

  • Security: customer-facing chat endpoints (poll, send, mark-seen, subscribe) now require proof of ownership of the specific chat before returning or accepting data, closing a gap that previously allowed any visitor to access another visitor’s conversation by guessing a chat ID.
  • Renamed the plugin to MDS Live Chat and Helpdesk (slug: mds-live-chat-helpdesk) for WordPress.org compliance.
  • Moved all inline JavaScript and inline event handlers out of PHP templates into properly enqueued external script files.
  • Added translation support (text domain: mds-live-chat-helpdesk) across admin screens.
  • General code cleanup for WordPress Coding Standards compliance.
  • Pasted links in chat messages are now automatically rendered as clickable links, both in the customer widget and the admin dashboard.

1.0.0

  • Initial release.