← All modules
Documentation Blog Sign in to your licenses Contact
codingrow.com — Human thought, digital logic. Magento 2 extension

AI Personal Shopper

A conversational AI sales assistant for your storefront. It understands natural language, searches your real catalog, proposes products and categories, resolves support questions on its own, and opens a ticket only when a human is truly needed.

See it for yourself

Every screenshot on this page is real, captured from our own live demo store — open it and try the exact flow above with your own questions.

Try the assistant on demo.codingrow.com
€899.00 + VAT
Indicative total, incl. Italian VAT: €1,096.78 — the exact amount is calculated at checkout and is waived for EU business buyers with a valid VAT number (reverse charge).
One-time perpetual license, for one domain.

Instant delivery: your license key is emailed right after checkout.

Perpetual license — no recurring fee for a single module.

1 year of updates & support included — renew at −35% to keep upgrading; the versions you are entitled to stay yours forever.

30-day money-back guarantee.

What this actually fixes

Before the feature list — the problems. An AI chat is worth installing only if it removes real friction. Here is exactly what breaks today on a storefront without one, and how the assistant closes each gap.

Customers can't find what they're looking for

A shopper searches for "winter jacket" but the product is tagged "padded coat", or gets lost in a filter sidebar that doesn't match how they actually think. Zero results, and they leave. How it's fixed: the assistant understands the request in plain language, searches the live catalog by meaning rather than exact keyword match, and — when the request is genuinely vague ("a gift for the house, not sure what") — shows category cards instead of a dead end, so the customer is guided even when they can't name what they want.

A vague request answered with category cards instead of a wall of results — guiding the shopper without asking them to know the exact product name.
A vague request answered with category cards instead of a wall of results — guiding the shopper without asking them to know the exact product name.

Carts abandoned over a question nobody answered

A shopper is close to buying, has one unresolved doubt — sizing, material, delivery time — finds no fast answer, and quietly closes the tab. Most of that hesitation never becomes a support ticket; it just becomes a lost sale. How it's fixed: the assistant answers follow-up questions right inside the chat — "Tell me more" pulls in a fuller description and image without ever leaving the conversation — so the doubt gets resolved in the same moment it appeared.

"Tell me more" answers the doubt inside the chat itself, with a description and image — no tab-switching, no lost momentum.

Support drowning in the same ten questions

Order status, return policy, "is this in stock", sizing — a handful of low-value, repetitive questions eat most of a support team's day, leaving less time for the complex cases that genuinely need a person. How it's fixed: the assistant resolves the large majority of these on its own, and every conversation is automatically classified in the console — Shopping, Support, Bug report, Possible spam — so your team spends time only on what truly needs a human.

Every conversation arrives pre-classified in the admin console — your team reviews, it doesn't have to triage.
Every conversation arrives pre-classified in the admin console — your team reviews, it doesn't have to triage.

How a conversation unfolds

Every visit starts like a conversation with a real assistant, not a script — and most of the time it ends there too, without ever reaching a human.

The full flow, phase by phase

0

Phase 0 — The assistant lives on your store

Every storefront page carries a small pill-shaped launcher in the corner — unobtrusive until the customer needs it, always one click away.

The launcher sits quietly on every storefront page until a customer opens it.
The launcher sits quietly on every storefront page until a customer opens it.
1

Phase 1 — Opening the chat

The customer clicks the launcher. The chat opens with a greeting and a row of quick-reply chips — "Help me search", "Order status" — so a first message isn't even necessary to get moving.

Chat opens with a greeting and quick-reply chips for the two most common intents.
Chat opens with a greeting and quick-reply chips for the two most common intents.
2

Phase 2 — A human-like entrance, not a generic bot

Instead of an instant canned reply, the widget shows a short "connecting…" beat, then a named operator — e.g. "Leo" or "Anna" — joins with a live presence dot and asks for the customer's name. It reads like being connected to a real person, because the ritual is deliberately realistic.

"Leo has joined the chat" — a named operator and a presence indicator, not a faceless "Hi, how can I help?".
3

Phase 3 — Answers grounded in the real catalog

Example: the customer types "I need running shoes under 80 euros". The assistant searches the live catalog — not a static index — and replies with a grid of product cards: image, name, price, discount badge, and "Add to cart" / "Tell me more" buttons on each. Every product shown is actually in stock; nothing is invented. In this example, 14 real matches came back.

A real search returning 14 matching products as cards, each with its own add-to-cart and
A real search returning 14 matching products as cards, each with its own add-to-cart and "tell me more" actions.
3b

Phase 3b — When the customer doesn't know what to search for

Example: "a gift for the house, not sure what". There's no single obvious product to show, so the assistant proposes category cards instead — each with a short synthetic label summarizing what it understood — turning a dead-end query into a starting point.

A vague request answered with category cards instead of zero results.
A vague request answered with category cards instead of zero results.
4

Phase 4 — Going deeper without leaving the chat

The customer taps "Tell me more" on a card. The assistant writes a fuller description in the chat itself, together with the product image, so the doubt gets resolved on the spot — no tab-switching, no losing the thread of the conversation.

A deeper product description delivered right inside the chat after
A deeper product description delivered right inside the chat after "Tell me more".
5

Phase 5 — Buying, inside the conversation

The customer taps "Add to cart". A quantity selector (− 1 +) appears right on the card to confirm before it's added — the purchase happens without ever leaving the chat or losing the context of the conversation.

Quantity confirmed on the card itself, then added to cart — the purchase never leaves the chat.
Quantity confirmed on the card itself, then added to cart — the purchase never leaves the chat.

The same flow, on mobile

Same widget, same logic, same real catalog data — resized, not redesigned.

The launcher on a mobile storefront.
The launcher on a mobile storefront.
Full-screen chat on mobile, with the same greeting and quick-reply chips.
Full-screen chat on mobile, with the same greeting and quick-reply chips.
14 real product cards, stacked in a scrollable column right under the assistant's reply.
14 real product cards, stacked in a scrollable column right under the assistant's reply.
Scrolling reveals the rest of the matches — the full result set, not a trimmed mobile preview.
Scrolling reveals the rest of the matches — the full result set, not a trimmed mobile preview.

It doesn't just help. It sells.

Search is only the front door. From there the assistant works like a real salesperson: it narrows to the few right options, suggests matching add-ons at the right moment, and never ends in a dead end. Here are a few conversations, in different languages.

Simulated examples — click the tabs.

Hi, I'm Anna! Tell me what you're looking for 🙂

I'd like a small wooden coffee table, nothing too big

Great! We have them in solid mango, compact and sturdy. Take a look:

🪑
Chestnut London Coffee Table
189,00 €
🪵
Mango Round Coffee Table
159,00 €
🟫
Provence Grey Coffee Table
175,00 €

🛒 Added to cart: Chestnut London Coffee Table

Great choice! To finish off the corner, these two go beautifully with light wood:

🕯️
Brass Floor Lamp
129,00 €
🧶
Tone-on-tone Rug
89,00 €
Why: The moment the customer adds to cart, the assistant suggests matching add-ons on its own — without ever saying it knows about the cart. Proactive, not pushy: it lifts the average order value without forcing anything.

got any chester drawers for the bedroom?

Of course! A chest of drawers for the bedroom — we have several in wood, take a look:

🗄️
Mango 4-Drawer Chest
349,00 €
🗄️
Provence White Chest
399,00 €

💡 Synonym learned: «chester drawers» → «chest of drawers»

Why: An informal, regional or misspelled word the site search would never find: the assistant maps it to the real product and learns the synonym for the next customer. The wrong search word — not a missing product — is the real Achilles' heel of every ecommerce; here it turns into a sale.

My chest of drawers arrived with a scratch.

I'm so sorry! So our team can sort it out quickly, I'll need your email and order number.

anna@example.com — 100042390

✅ Ticket #SUP-2041 — your message has been routed to our team. Reply within 24–48 hours, and a copy is in your inbox.
Why: Before opening a ticket it verifies email and order number, then routes it to the human team with the full transcript. It becomes a filter of real problems: operators only get what genuinely needs them, already qualified.

Do you have ceramic laundry sinks?

Ceramic laundry sinks we don't carry yet in our catalogue — we're more about furniture and home décor. But if you're fitting out a small laundry area, we can definitely help: a space-saving cabinet or a laundry hamper with a worktop. Shall I show you?

Space-saving cabinetHamper with worktopNo thanks
Why: Even when it doesn't have the product, the assistant stays inside the store — first person, «in our catalogue» — never a flat «we don't have it», and always reopens the conversation.

Where's my order?

Happy to check! For security, could you confirm the order number and the email you used?

100051234 — maria@example.com

Perfect, María! Your order is 🚚 on its way — delivery expected Thursday. Anything else I can help with?

Why: For guests the assistant reveals order status only with a matching order number and email: never sensitive data without verifying the owner.

I need a slim console for a narrow hallway

This hand-painted mango console is only 25 cm deep — made for narrow hallways — with a drawer for keys and post. Its French-grey finish brightens an entryway:

🪟
Floating Chestnut Console
229,00 €
Why: That rich, keyword-dense description was written by AI Babel Enchanter. Personal Shopper searches and reads exactly those fields: better catalogue copy means more relevant results, sharper ranking and more convincing selling. Babel writes the knowledge, Personal Shopper turns it into revenue.

Sizes, colours and kits: the choice happens inside the chat

A catalogue made of variants is not harder to sell — it just needs a few more questions. The assistant asks them itself, one at a time, inside the conversation, and the right product lands in the cart without the customer opening a single page.

👕
Size and colour
Configurable product

looking for a blue work jacket

🧥
Work jacket
59,00 €

What size do you wear?

Size

S M L XLsold out

And the colour?

Colour

Black Navy Sand Brick redsold out

Quantity

− 1 +

Work jacket — Navy, M × 1 added to the cart

Why: Two questions and the product is in the cart, without ever leaving the chat. The colours are the real ones from your swatch, not invented dots; the sold-out XL is still shown, greyed out — hiding it would make the customer believe you never make that size.
🧰
Kit
Grouped product

do you have a maintenance kit?

🧰
Maintenance kit
12,00 – 89,00 €

How many of each?

Lubricating oil× 1
Microfibre cloth× 2
Brass brush× 0

2 items added to the cart — Oil × 1, Cloth × 2

Why: A grouped product is bought piece by piece: the customer says how many of each in one go, and whatever they leave at zero does not turn up in the cart.
🧩
Bundle
Bundle product

I would like the modular workbench

🔧
Modular workbench
249,00 – 412,00 €

Which worktop?

Worktop

Solid beech Galvanised steel

And the vice?

Vice

Cast iron 125 mm Cast iron 150 mm

Shall I add the spanner set too? It is optional.

Spanner set (optional)

Yes, add it+ 39,00 € No, thanks

Modular workbench — 3 options chosen, € 288.00 added to the cart

Why: Optional add-ons get asked about instead of skipped — and that is exactly where the margin sits that almost nobody clicks on a product page.
If you sell clothing, footwear or anything that comes in more than one size, nearly your whole catalogue is made of configurable products. That is precisely the case where a chat that can only send people to the product page is worth nothing — and the case where this one makes the difference.

Choices are drawn the way you configured them in Magento: colours with their real hex code, sizes as a large readable value, long lists as a dropdown. Sold-out options stay visible, greyed out, with a switch to hide them if you prefer; options that can still be ordered are never greyed.

It can speak first — if you switch that on

A shop assistant who speaks first either sells more or annoys, and only you know how you talk to your customers. That is why everything proactive is off to begin with, and why the chat window never opens by itself: the assistant lights the dot on the button and waits.

The business case: more sales, lighter support load

These are industry ranges for conversational-commerce assistants, offered for context — not a promise for your store. Actual results depend on your catalog, your traffic and how the assistant is configured.

+10–30%
Typical conversion uplift
Industry benchmarks for AI shopping assistants commonly cite conversion increases in this range, largely recovered from visitors who would otherwise leave empty-handed after a failed search or an unanswered doubt — exactly the two failure points this assistant is built to close.
60–80%
Routine questions typically handled without a human
Order status, policies, sizing, "is this in stock" — deflection rates in this range are commonly reported for assistants handling this kind of repetitive, low-value question. That's time your team gets back, not time it loses: the support desk shifts from a pure cost center to a resource that sells and solves complex cases, instead of repeating the same ten answers all day.

Both figures are industry-level estimates for conversational AI in e-commerce, cited here for context — not a performance guarantee. Your own results depend on your catalog, your traffic and how you configure the assistant.

See it for yourself

Every screenshot on this page is real, captured from our own live demo store — open it and try the exact flow above with your own questions.

Try the assistant on demo.codingrow.com

What the assistant does

Bring your own AI — a pool of models that never goes down

Choose your providers and models and paste your own API keys — you are always billed directly by the provider, never with a markup from us. But the AI is no longer a single setting: it is a pool you manage in the AI — Models tab, so one model is never a single point of failure.

The AI provider configuration screen: pick a provider, paste your key, choose a model and toggle capabilities.
The AI provider configuration screen: pick a provider, paste your key, choose a model and toggle capabilities.

A pool of AIs with automatic failover

Add as many AIs as you like — a primary plus fallbacks, in the order you choose. If the primary fails (out of credit, invalid key, rate limit, a transient glitch), the chat carries on by itself on the next one in the chain. Your shoppers never see an error.

Load models — with live speed measurement

Paste your API key and hit Load models: the module probes the provider's models in parallel, measures each one's response time, keeps only the ones that actually answer with your key, and sorts them fastest-first (e.g. gemini-flash-latest (0.95s)), with an 'N of M responded' note. You pick a responsive model at a glance instead of guessing an id — and a link right below always shows where to generate the key for the selected provider.
"Load models" fills the dropdown with the real models your key can use — plus a live link to where to generate a key for the selected provider.
The opportunity: your assistant becomes provider-independent and outage-proof. Optimise for cost or for speed, switch models as prices change, adopt a brand-new model the day it ships — all without touching code, and without a single conversation dropping.

A self-learning synonyms registry — a treasure that grows on its own

A huge share of lost sales isn't a missing product — it's the wrong search word: a regional name, a dialect term, a typo, a synonym your customers use every day but your catalog doesn't. The agent learns the mapping to the real catalog term automatically, so the next customer searching the same "wrong" word finds the product immediately.

Many sales are lost to a search word, not a missing product. This registry is the fix — and it keeps improving itself with every conversation.
The Synonyms tab: a paginated, editable registry with CSV export/import and one-click
The Synonyms tab: a paginated, editable registry with CSV export/import and one-click "Inject into site search".

Better together — the Codingrow catalogue-to-conversion funnel

Personal Shopper doesn't work alone. Four Codingrow modules form a single funnel, from raw feed to closed sale — and each one makes the next stronger.

📥
Codingrow MMIS
Mango console.
H 78 · W 80 · D 25
Imports your catalogue from one or many supplier feeds and keeps stock and prices in sync — hundreds of products, automatically.
Discover MMIS →
→Babel enriches
✨
AI Babel Enchanter
Slim mango console for narrow hallways — only 25 cm deep, hand-painted French-grey, drawer for keys and post.
Rewrites titles and descriptions — detailed, keyword-rich, in every store language.
Discover Babel Enchanter →
→powers your search
🔎
Live Search & Autocomplete
Customers who type in the search bar find the right products instantly — on the very same enriched catalogue.
Discover Live Search →
→AI lens → chat
💬
Personal Shopper
From that same search bar the AI lens opens the chat: it searches those very fields, recommends and closes the sale.
You're here
Enrich once, sell everywhere. The fields MMIS imports and Babel enriches are exactly the ones Live Search and Personal Shopper read — better catalogue copy means more found, better ranked and more convincingly sold.

Discover Babel Enchanter →

A real support agent, not just a sales script

The assistant is a working member of the team: it resolves the large majority of customer issues on its own — order status, policies, sizing, delivery questions — closing the loop without ever pulling in a human, and avoiding needless contacts. It only escalates when a human is genuinely needed.

The result is an assistant that sells, supports, learns and protects your store — all at once, and mostly without human intervention.
The Tickets & Support grid: every ticket with its number, status, contact and subject, one click from its full transcript.
The Tickets & Support grid: every ticket with its number, status, contact and subject, one click from its full transcript.
Ticket detail: contacts, the full chat transcript, and a
Ticket detail: contacts, the full chat transcript, and a "Resolve ticket" action with an optional customer notification.

One console for every conversation

Nothing happens off the record: every chat is logged, classified and reviewable from the admin, alongside the tools that make the assistant smarter over time.

The Conversations grid: every chat auto-classified as Shopping, Support, Bug report or Possible spam.
The Conversations grid: every chat auto-classified as Shopping, Support, Bug report or Possible spam.

Safe, predictable, and never at your expense

The assistant is built to stay on-script and to keep your AI budget and your API key under your control.

Governance and peace of mind

Behind the friendly chat, the tools a store owner needs to sleep at night — full visibility and hard limits on cost.

Available in 7 languages

The admin interface and the storefront chat are fully translated:

English Italiano Español Français Deutsch Português Nederlands

The chat starts in the store's language and switches automatically to the language the customer writes in.

Requirements

Magento 2.4.x (tested on 2.4.9), PHP 8.1-8.5. Compatible with both the Luma and Hyvä themes (theme-agnostic Shadow DOM widget). Depends on the free Codingrow Core module, installed automatically. Requires an API key from at least one AI provider (OpenAI, Anthropic, Google or OpenRouter) — billed directly to you by the provider.

Documentation

A complete setup guide and field reference with concrete examples — the same level of detail our support uses to help customers.

→ Read the full documentation

Where the measurements live in your catalogue

To tell a customer how many pieces they need, the assistant has to know how long one piece is. If your catalogue has dimensional attributes, it reads them from there. If the measurements live inside the names — and on a great many catalogues they do — it reads them from the name, where the unit is written.

A builders’ merchant, a real case: Flue pipe stainless steel Aisi 304 h 0.5m. The length is there, but inside the name, next to an alloy number (Aisi 304) and a wall thickness: the assistant has to tell which of the three is a measurement. Where the unit is not written — Pipe 2000, Sheet 120x60 — it cannot guess on its own, and it does not invent.
With AI Babel Enchanter installed you tell it nothing. While rewriting your texts, Babel writes down each item’s objective characteristics (length, diameter, material, type) into a product field — and the assistant finds them already there. The customer asking for ten metres of flue pipe is offered ten pieces, on a catalogue where that figure was written in no field at all.

Those characteristics are deduced and correctable: they sit in a field on the product page, in plain sight, and whatever is merely supposed sits below a separator line instead of mixing with the certain values. The assistant only does arithmetic on what the product states, and under the quantity it always says where the number came from.

Money-back guarantee

Not satisfied within 30 days of purchase? Request a refund yourself from your account area (codingrow.com/login), no questions asked. The refund is processed instantly, automatically, and the license is deactivated upon confirmation.

Changelog

Recent releases, most recent first.

v3.6.0New
  • The assistant uses the customer's name in its first reply and then gets to work, with any model.
  • The product description now reaches the assistant: it knows what an item is for, not just its name.
  • Asking for two things at once gets an answer on both, not a “nothing found”.
Minor fixes.
v3.5.0New
  • One support request per conversation: what the customer adds later goes into the open one.
  • Requests are editable in the Console: contacts, subject, internal notes. A closed one reopens.
  • Reaching a person only takes an email.
Important fix: the list now says when nobody receives new requests.
v3.4.0Maintenance
Important fix: a customer who types their request instead of their name now gets an answer, and Conversations no longer shows labels that aren't names.
v3.3.0New
  • When two sizes don't match, a button in the chat fixes it in one tap.
  • The size warning no longer appears between items that aren't comparable.
  • The difference between similar items no longer shows words they share.
  • What is already in the cart moves to the end instead of looking like a new suggestion.
Minor fixes.
v3.2.2Maintenance
Important fix: if the chosen model rejects a setting, the assistant retries without it instead of going silent, and the model list now flags the partial ones.
v3.2.1New
  • An assistant page: its address is in the settings, ready to copy.
  • A link to place wherever you want, optionally starting on a product family.
  • The assistant knows your items' features and uses them to answer.
  • In conversations, a line says how many are hidden and shows them.
Minor fixes.
v3.1.1Maintenance
The model used for guided purchases is now picked from a dropdown, like the normal one: before, it had to be typed by hand.
v3.1.0New
  • A dedicated page for the assistant, to link from a button, a campaign or a QR code in the shop.
  • The address can carry the topic: the conversation starts on it already.
  • The quantity on the card comes from catalogue measurements and the ones the customer gave.
  • Inside a composed purchase, each step shows the full set of matching items.
  • Minor fixes.
v3.0.0New
  • The quantity on the card comes from the measurements given, with a line below saying where it came from.
  • An item's full name opens with a tap, with the part that tells it apart highlighted.
  • The guided path is offered in the chat, with no button to hunt for.
  • Each AI key can hold two models: one for guided purchases, one for everyday chat.
  • Minor fixes.
v2.4.0New
  • Guided purchase: a customer buying a set of parts is walked through them one by one.
  • A bar shows how far along the path is, and each part can be closed or skipped with a tap.
  • At the end, a summary of what the customer is taking home.
  • Off by default: leave it off and nothing changes.
v2.3.0New
  • Tapping a card in the chat adds the item to the cart; the page stays one tap away.
  • A fixed bar at the bottom shows how many pieces are in the cart and leads to checkout.
  • The card of an item already taken says how many pieces, not just that it is there.
  • Minor fixes.
v2.2.0New
  • Configurable, bundle and grouped items are bought inside the chat, one step at a time.
  • Sold-out options stay visible in grey, with a switch to hide them.
  • New Proactive assistant section, entirely off to begin with.
  • Minor fixes.
v2.1.0Maintenance
Provider, key and model are now set in one place, the AI Models tab. The call log says which AI actually answered.
v2.0.0New
  • New Dashboard in the console: goods put in the cart from the chat, chats handled, real AI cost.
  • It also shows what customers look for and do not find.
  • Anonymous usage counts shared with us, which you can switch off.
  • Minor fixes.
v1.7.0New
  • The card of an item already in the cart turns green with a badge, and stays that way.
  • The matching suggestion arrives at once, with placeholder cards instead of a wait.
v1.6.1Maintenance
The chat speaks as the shop itself: when an item is missing it stays in the first person, instead of talking about the shop in the third.
v1.6.0New
  • The log tells sessions apart: a return after a break is its own entry, linked to the previous one.
  • Customer already signed in: the chat starts at once, with no name to ask.
  • New filterable Customer column, to find every conversation of one customer.
v1.5.0New
  • Several AIs can be set up with automatic takeover: if the first does not answer, the chat carries on with the next.
  • A menu shows only the models your key can actually use.
  • Optional suggestion of matching items when something is added to the cart.
  • In the console: the customer's name, and products as cards with images.
v1.4.0New
  • Live showcase: the cards refresh at every turn as the assistant narrows things down.
  • Optional suggestion of matching items at the close.
  • Implicit questions are answered against the product page the customer came from.
  • After a break a fresh conversation starts, with no need to ask the name again.
v1.3.0New
  • The assistant picks which items to show and in what order, so only what fits stays on screen.
  • It remembers the ones already shown and understands "the second one you showed me".
v1.0.9New
  • A Load models button fills a dropdown with the models available for your key.
  • Typing the name by hand still works, and a hint says where to get the key.
v1.0.8New
  • Human support by ticket: a copy address, a response time and a number prefix.
  • Mark-as-solved with an optional notice, and automatic closing after a chosen number of days.
v1.0.7New
  • A synonym register that learns on its own from searches that found nothing.
  • A table editable row by row, with export and import.
  • They pour into the shop's own search synonyms with one click.
  • From the console you can read the whole conversation.
v1.0.5New
  • Category cards for vague requests, with a short label.
  • Quick-reply buttons whenever the assistant offers a short list of choices.
v1.0.0New
  • First version: a selling chat for Magento 2, with search in plain language.
  • Order status and add-to-cart inside the conversation.

Frequently asked questions

What is AI Personal Shopper?
A conversational AI assistant that understands shoppers, searches your real catalog and suggests products.
Does it use my real catalog?
Yes, it searches your actual products and categories, not generic answers.
Can it help with orders?
Yes, it can give order information once the shopper is identified.
New guides, when they go live

One hands-on Magento 2 guide per email, only when we publish one. Nothing else.

Articles are written in English. One click to unsubscribe, in every email. · privacy