Notes
An AI shopping assistant for WooCommerce that stores no conversations: what it can answer, what it cannot, and a 10-minute setup
Andrej Lauko, ARLing ยท 6 September 2026
Most chat widgets a WooCommerce store adds today keep a full transcript of what a shopper typed and how the widget answered, sitting in the vendor's database for as long as its retention policy allows. ARLing Asistent, a WordPress plugin for WooCommerce, is built the other way: it answers shopping questions from a store's own product feed and keeps no record of the conversation itself, only a daily count. This note covers why that difference matters, how a feed-grounded assistant actually works, what it answers well and where it stops, the setup, the pricing, and how it compares on price and data handling to Tidio's Lyro and Smartsupp's Mira.
01
Why most chat widgets store every conversation
A chat widget that keeps transcripts makes the store a data controller for that content under GDPR: the store decides why the data is collected and how long it is kept, even though the vendor's server does the actual storing. That controller role brings duties many small stores never plan for: a lawful basis for keeping the transcript, a retention period that has to be justified if asked, a way to answer a shopper's access or deletion request within a month, and a data processing agreement with the vendor spelling out what it may do with the content. None of that is hard on its own, but it is another document to keep, another request to route, and another place a customer's name or order number can leak if the vendor has a breach.
There is a smaller, everyday reason too: support load. A widget that saves every conversation eventually invites someone to go looking through it, whether to audit what the bot said or to answer "what did it tell this customer." A widget that keeps nothing beyond a daily count removes that job along with the risk.
02
How a feed-grounded assistant works
ARLing Asistent connects to a store's public WooCommerce Store API endpoint, the same JSON feed of products, prices and stock status that the storefront's own blocks already fetch in a visitor's browser. Nothing new is exposed: the plugin reads data the store already serves publicly. On connect, and again once a day, the assistant's backend downloads that feed, splits it into chunks, and turns each chunk into a vector embedding, so a shopper's question can be matched against the closest products instead of a keyword search.
When a shopper asks something in the widget, the same embedding step runs on the question, the closest matching products are retrieved, and a language model is instructed to answer using only those products and the store's own facts, such as its contact e-mail, never open knowledge from outside the feed. The answer links to up to three real products with real prices, in the shopper's own language among Slovak, Czech, English and German. When nothing in the feed matches well enough, the assistant is instructed to say plainly that it does not know, rather than invent a product or a policy, and to point at the store's contact address instead.
connect sends once:
feed_url: https://yourstore.example/wp-json/wc/store/v1/products
domain: yourstore.example
email: you@yourstore.example
03
What it answers well, and what it cannot
The assistant is good at exactly the kind of question a product feed can answer: does the store carry a waterproof jacket under 80 euros, what colours a model comes in, what an item costs. It is honest about the rest. It cannot look up a specific order, since order data never reaches it, only the public catalogue. It cannot promise stock at the exact moment someone asks, because the feed that grounds it refreshes once a day: an item that sold out an hour ago can still show as available until the next refresh. Returns and shipping questions get answered from whatever policy text a store owner has entered as a shop fact, not by checking an actual return case, so a vague policy produces a vague answer.
A stale or malformed feed is the assistant's single biggest failure mode in practice: a missing price, a wrong GTIN, or a product still marked in stock after it sold out gives the assistant the same wrong answer a shopper would get from a broken listing page, delivered with the same confidence as a correct one. Running the feed through [Feed Doctor](https://arling.sk/feed-doctor/) before connecting catches exactly that kind of error first.
04
A 10-minute setup
Until the plugin's wordpress.org listing is approved, install it from a zip: download it from the `wordpress-plugin/arling-asistent` folder of the [GitHub repository](https://github.com/AndryRoby/arling-asistent), then in wp-admin go to Plugins > Add New > Upload Plugin, choose the zip, click Install Now, and Activate. WooCommerce needs to already be active. Once the listing clears review, the same plugin also installs by searching "ARLing Asistent" directly from Plugins > Add New.
Go to WooCommerce > ARLing Asistent, enter a contact e-mail, read what is about to be sent, and tick the consent checkbox before clicking Connect: nothing leaves the site before that click. What gets sent, once, is the store's public product feed URL, the site's domain, and that e-mail address, never customer or order data. The settings screen then polls status until it reads "Ready," usually within a few minutes. From there, pick a language, or leave it on Automatic to follow the visitor's browser, a colour mode, and which side of the screen the widget sits on, save, and the chat bubble appears on the storefront.
[Get the plugin](https://arling.sk/asistent/woocommerce/)
05
Free tier and paid plans
The free plan covers up to 100 conversations a month at no cost and no card. Above that, a starter plan is 19 EUR a month for up to 1,000 conversations, and a growth plan is 39 EUR a month for up to 5,000, both billed through Stripe, monthly only for now. Nothing charges automatically: a store stays on the free tier, working within its limit, until it picks a paid plan from the settings screen.
One quota detail worth knowing rather than discovering later: in this version, every call to the chat endpoint counts as one conversation toward the monthly quota, not one full back-and-forth session, so a shopper who sends several separate messages in one sitting can count as more than one conversation against the limit. Counting once per session is planned but not built yet.
06
How it compares: Tidio Lyro and Smartsupp Mira
This is not a like-for-like comparison, since Tidio and Smartsupp are full live-chat platforms with an AI agent added on top, while ARLing Asistent is only the AI part. On price: Tidio's Lyro AI is a separate add-on starting at 32.50 USD a month, billed annually, for 50 Lyro conversations, layered on top of a paid Tidio plan ([tidio.com/pricing](https://www.tidio.com/pricing/)). Smartsupp's Mira AI agent starts at 16 to 20 USD a month for 100 conversations, billed annually or monthly, scaling up to 5,000 ([smartsupp.com/pricing](https://www.smartsupp.com/pricing/)). ARLing Asistent's free tier covers 100 conversations a month at no cost, and its paid tiers are 19 EUR for 1,000 and 39 EUR for 5,000.
On stored data: Tidio's own features page describes an Inbox that keeps tickets "in one place so you can access them whenever necessary" and lets a store save transcripts for its records or e-mail them out ([tidio.com/features](https://www.tidio.com/features/)). Smartsupp's help center documents an Inbox with conversation tagging and export among its core features ([help.smartsupp.com/en_US/conversations](https://help.smartsupp.com/en_US/conversations/)). Both are built around keeping a searchable history of what was said, which is a reasonable choice for a human support inbox; ARLing Asistent keeps none of that content, only the daily counts described above, because it never puts a human in the loop to read a transcript back.
Frequently asked questions
Does the assistant store what shoppers type?
No. The conversation content itself, the questions and the answers, is never written to a database. Only daily aggregate counters (how many conversations, how many product-link clicks) are kept per store, used to enforce the monthly plan quota.
How fresh is the assistant's product data?
The product feed refreshes automatically once a day. A price change or a sale that happens between refreshes is not visible to the assistant until the next one, so it can tell a shopper an item is in stock for up to a day after it actually sold out.
Can it look up a specific order or process a return?
No. It never receives order data, only the public product catalogue. A question about returns or shipping is answered from a general policy fact entered by the store owner, not by checking an actual order or return case.
What data is sent when I click Connect?
The store's public WooCommerce Store API product feed URL, the site's domain, and the contact e-mail entered on the settings screen, sent once after ticking the consent checkbox. Nothing is sent before that click.
How much does it cost?
Free up to 100 conversations a month, no card needed. Above that, 19 EUR a month for up to 1,000 conversations, or 39 EUR a month for up to 5,000, billed through Stripe. Nothing is charged automatically.
Sources
- ARLing Asistent: source code, plugin zip and readme (GitHub)
- Tidio: pricing, including the Lyro AI add-on
- Tidio: features, ticket and transcript storage
- Smartsupp: pricing, including the Mira AI agent
- Smartsupp Help Center: Inbox and conversation management
Originally published at arling.sk. Written by Andrej Lauko with AI assistance; every rule links to the official documentation it comes from.
Top comments (0)