offre 01 · e-commerce · google shopping · agents d'achat
Votre catalogue,
est votre agent d'achat.
Google Shopping vous connaît. ChatGPT Shopping, Perplexity, les agents d'achat GPT — pas encore. C'est là que vos concurrents ont pris un tour d'avance. Nous structurons vos fiches produits dans les formats qu'un agent IA lit nativement — Schema.org aujourd'hui, WebMCP demain. Vous gardez le site. Vous gardez les ventes. Vous gagnez un deuxième canal.
Un agent d'achat IA ne lit pas votre page produit. Il lit le JSON qui décrit le produit, l'offre, les avis agrégés, la disponibilité. Si ce JSON n'existe pas, ou s'il existe mais suit une convention propriétaire, l'agent passe au suivant. Il ne vous cite pas, il ne vous compare pas, il ne vous recommande pas. Il ne sait simplement pas que vous êtes là.
Schema.org Product, Offer, AggregateRating, couplés à un fichier llms.txt qui sert de table des matières pour les crawlers IA, c'est la grammaire standard. Pas un format à nous, pas un plugin à installer — une publication statique, sur un endpoint que toute IA présente ou future sera capable de lire.
GET https://votre-domaine.fr/products/reference-123.jsonld
cache-control: public · max-age=3600
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Référence 123 — produit exemple",
"image": ["https://votre-domaine.fr/media/ref-123.jpg"],
"brand": { "@type": "Brand", "name": "Votre marque" },
"offers": {
"@type": "Offer",
"price": "189.00",
"priceCurrency": "EUR",
"availability": "https://schema.org/InStock",
"url": "https://votre-domaine.fr/products/reference-123"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 4.7,
"reviewCount": 284
}
}
# Cette ressource est canonique. Un agent d'achat peut la citer
# directement, comparer son prix, recommander la fiche. // illustratif · standard WebMCP (Chrome 146 beta, Cloudflare Browser Run)
navigator.modelContext?.registerTool({
name: 'searchProducts',
description: 'Rechercher dans le catalogue par requête, filtre, prix',
inputSchema: {
type: 'object',
properties: {
query: { type: 'string' },
maxPrice: { type: 'number' },
inStock: { type: 'boolean' }
}
},
invoke: async ({ query, maxPrice, inStock }) => {
const res = await fetch(`/api/search?q=${query}`);
return res.json();
}
});
navigator.modelContext?.registerTool({
name: 'addToCart',
description: 'Ajouter un produit au panier',
inputSchema: {
type: 'object',
properties: { sku: { type: 'string' }, quantity: { type: 'number' } }
},
invoke: async ({ sku, quantity }) => { /* … */ }
});
// L'agent d'achat n'a plus besoin de cliquer — il appelle vos fonctions. Ce que ça change pour vous :
un agent d'achat n'a plus besoin de scraper vos pages ni de simuler des clics. Il lit votre llms.txt, découvre les outils que vous avez exposés, et appelle searchProducts() avec des paramètres typés. Moins de friction, plus de citations, des conversions mesurables.