Complet dans Offer, frais et délais visibles. Critère de comparaison direct dans les surfaces conversationnelles.

Pourquoi ce signal compte

Pour un agent IA, choisir entre deux marchands sur un même GTIN passe à 90 % par les frais et délais de port. Le prix produit affiché ne signifie rien sans le coût total à la livraison. Un marchand qui expose un OfferShippingDetails complet permet à l’agent de calculer immédiatement le panier total et de comparer. Celui qui ne l’expose pas oblige l’agent à parser une page de livraison en langage naturel, opération coûteuse et faillible. Concrètement, les marchands qui ont posé ce signal proprement après 2024 ont vu leur taux de citation augmenter dans Perplexity et ChatGPT sur les requêtes orientées achat. C’est l’un des leviers où la cohérence des données vaut plus que le marketing.

Ce que nous auditons

Nous regardons, sur chaque Offer de l’échantillon :

  • shippingDetails présent avec une shippingDestination (addressCountry).
  • shippingRate avec value, currency, et tarif réel par tranche poids ou panier.
  • deliveryTime avec handlingTime et transitTime exprimés en QuantitativeValue (jours).
  • Plusieurs blocs par zone si vous livrez plusieurs pays.
  • Cohérence avec votre vraie grille tarifaire Shopify Shipping ou le tarificateur transporteur.

Erreurs courantes que nous voyons sur Shopify

  • Aucun shippingDetails posé. Les agents IA infèrent un coût élevé par défaut.
  • shippingRate figé à zéro (“livraison gratuite”) sur tout le catalogue alors que la franco n’est atteinte qu’à partir d’un certain panier. Trompeur côté agent et risqué côté DGCCRF.
  • transitTime exprimé en heures ou en valeur libre "sous 48h", refusé par les parsers stricts.
  • Une seule entrée FR alors que la boutique livre l’UE entière, ce qui exclut les requêtes belges, allemandes, italiennes.

Comment corriger

Vous récupérez votre vraie grille de transport dans Shopify Shipping ou auprès de votre transporteur. Vous la modélisez sous forme de metaobjects shipping_zone (un par pays ou groupe de pays) avec les champs rate_min, rate_max, handling_days, transit_days_min, transit_days_max. Vous bouclez sur ces metaobjects dans product-jsonld.liquid pour générer un shippingDetails par zone. Vous testez avec Rich Results et avec un agent réel (Perplexity, ChatGPT Shopping) en posant la question “le meilleur prix pour [votre produit] livré en France”. Si l’agent ne cite pas vos délais, c’est que votre signal n’est pas exploitable. Une fois propre, vous reprenez l’avantage sur les concurrents qui se contentent d’une page “Livraison” en HTML décoratif.

Auditer ma boutique

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