“Where is my order?” for the tenth time today, in German. Small stores lose hours every week to the same questions: order status, returns, address changes, shipping times. Each one means opening the email, finding the order in WooCommerce, copying the tracking number into the carrier’s site, looking up the return policy and, more and more often, running the answer through a translator.
Polyreply puts all of that on one screen. A customer writes in the chat on your store or by email; your team sees the conversation, the matching WooCommerce order with its status and tracking, and a reply drafted in the customer’s own language from your own policies. You read it, change what you like and send it.
What you get
- Live chat on your store. The chat appears on every page as soon as you connect, in the visitor’s language. No theme edits.
- One inbox for chat and email. Statuses, assignment, internal notes and tags, for a team of one or twenty.
- Orders next to every conversation. Status, products, total, shipping method and tracking number, read live from your store when an agent opens the conversation.
- AI reply drafts in the customer’s language. Drafts are based on your help articles and the real order status. Customers can write in 28 languages; the plugin and the dashboard are in English, Spanish, German, French, Portuguese and Italian.
- Tracking from the plugins you already use. WooCommerce Shipment Tracking, Advanced Shipment Tracking, YITH WooCommerce Order & Shipment Tracking, Orders Tracking for WooCommerce and AfterShip are read automatically.
- Connect in one click. Create a free account (or sign in) from WordPress and come back with the store connected. No API keys to copy.
The AI never sends anything by itself
Every draft waits in the reply box. A person on your team reads it, edits it if needed and clicks Send. You can also ignore drafts completely and use Polyreply as a plain shared inbox and live chat.
Free and paid plans
The plugin is free and open source (GPLv2). The Polyreply service it connects to has a Free plan for small stores: 2 team seats, 100 new conversations per month, 30 AI drafts per month (50 if you choose to show a small “Powered by Polyreply” line in the chat) and 25 help articles. Paid plans (Pro and Business) raise these limits for growing teams; current prices are on the pricing page. Nothing is ever charged unless a store owner chooses a paid plan and enters a card. Pro and Business can be tried once for 7 days: the card is asked for up front, the date of the first charge is shown before you enter it, and cancelling before that date in Manage billing costs nothing. Conversations and data are never deleted when a plan changes.
Privacy by design
- An order is only shown when its number and the customer’s email address both match.
- Orders are read live and never copied. Only the order number is saved with the conversation.
- Addresses, phone numbers, payment details and order notes never leave your store.
- Every request between your store and the service is signed and expires after five minutes.
- The “Powered by Polyreply” line in the chat is off unless you turn it on.
Developers
polyreply_wc_order_tracking filters the tracking numbers of an order.
polyreply_wc_order_data filters the order data that is shared.
polyreply_wc_show_widget hides the chat widget on chosen pages.
- Order numbers from sequential order number plugins are supported through WooCommerce’s
woocommerce_shortcode_order_tracking_order_id filter.
External services
This plugin connects your store to Polyreply, a customer support service. It is needed to show the chat widget and to answer your customers from the Polyreply dashboard. Nothing is sent before you connect the store on the plugin’s settings page.
- When you click “Create a free account and connect” or “I already have an account”, your browser goes to the Polyreply website with your site’s address, the address to come back to in your WordPress admin, a random one-time value (state), a PKCE code challenge (a hash of a secret that stays in your WordPress), your site name and your admin language. You create an account or sign in there and confirm. Polyreply then sends your browser back with a single-use code that expires after 10 minutes.
- When your browser comes back, or when you click Connect with a code, the plugin sends the connection code you pasted, your site’s address, the address of its REST API, your site name, the plugin and WooCommerce versions and the address of your privacy policy page (see below) to the Polyreply server. After a one-click connection it also sends the PKCE secret and the address it came back to, which prove the code was issued for this site.
- Twice a day, when you open the settings page and when you click Test connection, the plugin asks the Polyreply server for the chat widget’s current settings. The request contains the connection’s ID and the address of your privacy policy page (Settings → Privacy, only when it is published, not password protected and on your own site), so the chat’s “Privacy” link opens your policy; this request is also sent when you choose another privacy page. When you save the “Powered by” setting, the request also contains your choice (on or off). The answer also contains the service’s current address, so the plugin keeps working if Polyreply moves to a new domain (https only).
- When a visitor opens the chat, the visitor’s browser loads the chat window from the Polyreply server. The visitor’s messages, the name and email address they type, the page they are on and their language are sent to Polyreply.
- When an agent opens a conversation in Polyreply, the Polyreply server asks your store for one order, sending the order number and the customer’s email address. If both match, your store answers with the order’s number, status, date, products and quantities, total, currency, shipping method and tracking numbers.
- Right after connecting, and when you click “Import store policies” in the Polyreply dashboard, the Polyreply server asks your store for its policy pages. The plugin answers with the title and text of published, public pages only: the WooCommerce terms, refund/returns and privacy pages, and pages whose address or title mentions shipping, delivery, returns, refunds or FAQs (at most 10). Polyreply saves them as draft help articles that you review before publishing.
- When you click Disconnect, the plugin tells the Polyreply server to forget the connection.
The service is provided by Polyreply: terms of service, privacy policy.