Getting Your Shop Ready for AI Shoppers: A Practical Checklist
AI assistants read your shop differently from customers and differently from search engines. A dozen concrete changes that decide whether an agent can quote you accurately — or quotes a competitor instead.
A shopper forgives an imperfect page. They infer the size from the photograph, work out that delivery is free from a banner, and understand that "2 left" means hurry. An AI agent does none of that. It reads what you published in machine-readable form and treats everything else as absent.
That makes readiness for agentic commerce unusually concrete. It is not a strategy, it is a checklist — and most of it is work you may already have done for shopping feeds.
Product data
- Publish schema.org Product markup on every product page, with name, brand, description, image, offer price, currency and availability.
- Include the GTIN — the barcode number — per variant, not per family. This is the single highest-value field for agentic commerce, because it is the only cross-retailer identity most products have.
- Add MPN alongside brand for anything without a barcode. Brand plus MPN is the strongest available fallback.
- Give each variant its own canonical URL and its own structured data. A single page covering six sizes gives an agent no way to price the one the shopper asked for.
- Use precise availability values — InStock, OutOfStock, PreOrder, BackOrder — and keep them current. An agent that finds a stale InStock will recommend you and then produce a disappointed customer.
Prices
- Make sure the structured-data price matches the page price, including when a promotion is active. Where they disagree, an agent that reads the markup will quote a number your checkout does not honour.
- Express currency explicitly with an ISO code. A bare number is ambiguous the moment your shop serves more than one market.
- Use priceValidUntil where a promotion has a genuine end. It is a rare piece of forward-looking honesty that machine readers can act on.
- Declare delivery cost in structured form where you can. Item price alone is not comparable, and the agent comparing you has no way to guess.
- Publish member or logged-in pricing carefully. If your markup shows a price most visitors cannot get, you will be quoted at a number that generates complaints rather than orders.
Access
This is where merchants most often block themselves by accident.
- Decide your robots policy deliberately, and know that AI crawlers and AI assistants fetching a page on a user's behalf are increasingly distinguishable. Blocking everything is a decision to be invisible in this channel; make it on purpose if you make it.
- Do not require JavaScript execution to see the price. Many agents read the initial HTML. If your price is injected client-side, a substantial share of automated readers will see a page with no price at all.
- Keep product URLs stable. An agent that cited a URL last week and gets a 404 this week records that as unavailable rather than as moved.
- Return proper status codes. A discontinued product that returns 200 with an empty page is worse than one that returns 404 or 410, because the emptiness is invisible.
Feeds
If you submit product feeds into affiliate, comparison or advertising networks, they are now a second public face of your catalogue that assistants may read at one or two removes.
- Keep the feed and the page in agreement. When they diverge, the page is the version anyone can independently check, so the feed is the one that makes you look wrong.
- Populate the identifier fields in the feed even where the network treats them as optional. Optional at the network is not optional downstream.
- Refresh often enough that the interval is shorter than your typical price change. A daily feed on a category that reprices hourly is a daily-accurate answer to an hourly question.
The tests worth running
None of this needs a project. Four checks tell you where you stand.
- Fetch one of your product pages with JavaScript disabled. Is the price there? Is the barcode?
- Run a page through a structured-data validator and read the warnings rather than only the errors.
- Ask a mainstream AI assistant what one of your products costs, and see whether it finds you, quotes the right variant, and gets the number right.
- Ask it the same question about a competitor. If it can answer for them and not for you, the difference is almost always in the markup.
That fourth test is the uncomfortable one and the most informative. Being absent from an agent's answer is not neutral — the shopper still buys, from whoever the agent could describe.
In agentic commerce, unreadable is indistinguishable from unavailable.
What not to do
Two temptations are worth naming, because both are already appearing.
Do not publish markup that disagrees with your page in your own favour. It is a misleading action under consumer law regardless of whether the reader was human, and it is trivially detectable by anyone comparing the two.
Do not attempt prompt injection in product data — instructions hidden in descriptions or alt text aimed at whatever model reads them. Beyond being straightforwardly deceptive, it is the kind of thing that gets a domain excluded from an ecosystem permanently, and the recovery is much longer than the advantage.
The dull version works better. Publish accurate structured data, keep it current, make it reachable, and let the agent quote you correctly. That is most of the advantage available, and it is available now.
What a price has to carry before a comparison can call it verified:
Read the Verified Offer standardFrequently asked questions
How do I make my online shop readable by AI shopping assistants?
Publish schema.org Product markup on every product page with name, brand, price, currency and availability, include the GTIN per variant rather than per product family, give each variant its own URL and structured data, make sure the price is present in the initial HTML without requiring JavaScript, and keep your feeds in agreement with your pages.
Does blocking AI crawlers hurt my shop?
It makes your products invisible in an increasingly used channel. AI crawlers and assistants fetching a page on a user's behalf are increasingly distinguishable in robots policy, so the choice can be made with some precision — but a blanket block is a decision to be absent from agent answers while shoppers still buy from whoever the agent could describe.
Why does my price need to be in the HTML rather than loaded by JavaScript?
Many AI agents read the initial HTML response and do not execute client-side scripts. If your price is injected after load, a substantial share of automated readers see a product page with no price, which usually means you are omitted from the comparison rather than shown as expensive.
What is the most valuable structured-data field for AI commerce?
The GTIN — the barcode number — published per variant. It is the only widely available identity that works across retailers, so it is what allows an agent to confirm your listing is the same product as a competitor's rather than guessing from titles.
Compare prices
You might also like
The Barcode Problem: Why AI Agents Keep Comparing the Wrong Products
A product title is a description, not an identity. For AI agents comparing prices across retailers, ...
Read moreMCP for Retailers: What an AI Assistant Sees When It Reads Your Shop
The Model Context Protocol lets AI assistants query your catalogue directly instead of scraping it. ...
Read more