A Thai-first storefront agent
Product advice spans many categories and languages. A search result alone cannot respond to a shopper's constraints or carry a support conversation.

Context
This is a storefront agent built for a large retailer in Southeast Asia. We do not name the client, and we do not publish its numbers. The work runs in production, with real shoppers asking real questions, in the language they choose to ask in.
The retailer sells across many categories. A shopper arriving at the store rarely arrives with a product ID. They arrive with a situation: something to cook, someone to buy for, a constraint on price or ingredients, or a question about what is in stock. The site already had search. What it lacked was a way to hold that situation across several turns and answer inside it.
Problem
Catalog search answers a query. It does not answer a person. Three gaps showed up in the brief, and each one decided something in the build.
Advice spans categories
A single conversation can start at a recipe and end at a household item. A search box treats each query as new.
Language is part of the request
Shoppers write in their own language, and product names in the catalog do not always match how people say them.
Support is part of shopping
A question about a product often turns into a question about an order, a substitution or a policy. Those need a person sometimes, and the shopper should not have to start over when they get one.
None of this is specific to one country. It is the ordinary shape of retail advice. It is also hard to do with a plain language model, because a model that is not connected to the catalog will describe products the store does not carry.
What was built
The agent is a conversational layer on top of the retailer's own catalog and support stack. Five parts carry it, and each one answers a gap above.
Inline product cards and comparisons
Answers arrive as the retailer's own products, shown in the conversation, with the option to compare two or more side by side.
Why A shopper deciding between two items needs the differences next to each other, not a paragraph about them.
A live catalog connection
Product data comes from the retailer's catalog when the question is asked, not from the model's memory.
Why The aim is that the agent only recommends what the store carries.
Language-curated product copy
Product descriptions are curated for the languages the store serves, so the words the agent uses match the words on the shelf and on the site.
Why Mismatches between what a shopper says and what a product is called are a common source of failed searches.
Support integration
The agent is connected to the retailer's support tooling, so product questions and support questions can live in one conversation.
Contextual human handoff
When the agent cannot or should not answer, it passes the conversation to a person with the context attached.
Why The shopper should not be asked to repeat themselves.
The order matters. The catalog connection comes first, because everything else depends on the agent speaking only about real products. Language curation and cards sit on top of it. Support and handoff are the safety layer for the cases the agent should not close alone.
How a conversation moves
A typical exchange follows the four steps below. They are the same steps a shop assistant would take, and the agent does them in the shopper's language.
First the shopper asks, in their own words. The agent reads the intent and the constraints, such as a budget, an allergy or an occasion. It then searches the live catalog for products that fit. It shows them as cards and, where the shopper is choosing, as a comparison. If the question moves into support territory, or the agent reaches the edge of what it can answer, the conversation goes to a person along with what has been said so far.
What the agent does not do is invent. If the catalog has nothing that fits, the right answer is to say so and offer the nearest real option or a person. That behavior is a design decision, not a side effect.
What is evidenced
The agent handles real production conversations for the retailer. That is the only outcome claim on this page.
Runs in production
Real shoppers, real conversations, connected to the retailer's live catalog.
Built features
Inline cards and comparisons, catalog connection, language-curated copy, support integration and human handoff, as listed above.
Conversion or revenue lift
Not claimed. No measured result is published.
Language accuracy benchmarks
Not claimed. We have not published a language benchmark.
Client name or figures
Withheld. The client has not agreed to be named.
We would rather publish a short, true page than a long one with numbers we cannot stand behind. When the client agrees to share results, this page will be updated with them and the date they were measured.
Why it matters for machine customers
A storefront agent is the human-facing half of a bigger change. The same catalog that answers a shopper's question can answer an AI shopping agent's question. Both need accurate availability, stable prices and product copy that says what the product is. The work of connecting a live catalog to a conversation is also the work of making a store legible to a machine customer.
That is why we keep the two threads together: measurement of how machines shop, and applied systems like this one for the people who still do.
Get the next one.
New writing from Machine Commerce, by email.
The machine customer.
Commerce has a new reader. What changes when that reader can buy?
Read the manifesto