Before adding code
Confirm whether shipping is controlled by Shopify settings, a shipping app, a theme snippet, or market-specific logic. A global JSON-LD value can be wrong if shipping varies by destination, cart value, or product type.
DestinationDocument which countries or regions each product ships to.
CostSeparate free shipping, flat rate, calculated rate, and excluded product groups.
TimingKeep handling time and transit time realistic and supported by store policy.
TemplateAdd structured data at the product template layer only after the rules are stable.
ProductProof output
The scanner reports when shipping language appears visible but OfferShippingDetails is missing, then labels the finding as a handoff item rather than pretending every store needs the same markup.