Présent et valide sur chaque fiche produit. C'est le seul format que les agents IA parsent de manière fiable pour reconstruire votre catalogue.

Pourquoi ce signal compte

Le Product JSON-LD est la couche que ChatGPT, Perplexity, Gemini et Copilot consomment en priorité. Le HTML visible reste lu, mais c’est dans le JSON-LD qu’ils prennent le prix, la disponibilité, les avis, la politique de retour et l’identifiant produit. Une fiche produit sans JSON-LD valide est, pour un agent, une fiche pauvre. Elle est mentionnée moins souvent, et quand elle l’est, l’agent extrait les données par scraping textuel, avec un taux d’erreur supérieur à 30 % sur les prix d’après les tests internes que nous menons depuis 2025.

Ce que nous auditons

Nous prélevons un échantillon représentatif de vos fiches produit (entre 20 et 50 selon la taille du catalogue) et nous vérifions :

  • Présence d’un bloc <script type="application/ld+json"> avec "@type": "Product".
  • Champs obligatoires renseignés : name, image, offers avec price, priceCurrency, availability, url.
  • Validité syntaxique JSON et conformité Schema.org (parsing strict, pas seulement lint Google Rich Results).
  • Cohérence des @id et url avec la canonique réelle de la fiche.

Erreurs courantes que nous voyons sur Shopify

Beaucoup de thèmes Shopify livrent un JSON-LD partiel ou bricolé. Les pièges récurrents :

  • availability codé en dur sur InStock, jamais mis à jour quand le stock tombe à zéro.
  • price avec une virgule décimale au lieu d’un point, ce qui invalide le format Number.
  • Plusieurs blocs JSON-LD qui se contredisent (un dans le thème, un autre injecté par une app reviews ou shipping).
  • Images en URL relative, refusées par les agents qui exigent une URL absolue.

Comment corriger

Si le thème ne fournit pas un JSON-LD propre, deux options. Première option, vous écrivez un snippet Liquid dédié product-jsonld.liquid qui pose un seul bloc canonique en utilisant les objets Shopify product, product.selected_or_first_available_variant et shop. Vous l’incluez dans product.liquid et vous retirez les autres blocs Product. Seconde option, vous passez par une app dédiée structured data (Schema App, Schema Plus, JSON-LD for SEO), à condition de désactiver tout doublon issu du thème ou des autres apps. Dans les deux cas, vous validez chaque template (produit simple, variante, bundle) avec l’outil Rich Results Google et un parser JSON-LD strict.

Une fois ce socle propre, les autres signaux (GTIN, MerchantReturnPolicy, OfferShippingDetails, AggregateRating) peuvent enfin se brancher dessus.

Auditer ma boutique

L'audit est gratuit. Réponse sous 48 h ouvrées. Pas d'engagement.