OfferShippingDetails, les frais et délais de livraison que les agents exigent en clair
Détails de livraison exposés dans Schema.org Offer via OfferShippingDetails. Frais, délais, zones. Critère de comparaison direct dans AI Overviews et assistants shopping.
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 :
shippingDetailsprésent avec uneshippingDestination(addressCountry).shippingRateavecvalue,currency, et tarif réel par tranche poids ou panier.deliveryTimeavechandlingTimeettransitTimeexprimés enQuantitativeValue(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
shippingDetailsposé. Les agents IA infèrent un coût élevé par défaut. shippingRatefigé à 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.transitTimeexprimé 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.