{"ArticleId":null,"Name":"Structured data (JSON-LD)","Content":"\n\u003Cp\u003EStructured data is a machine-readable summary of a page, in the schema.org vocabulary, embedded as JSON-LD. Search engines use it for rich results (price, stock, stars under a link, Merchant listings), and AI assistants use it to understand exactly what you sell and on what terms. GrandNode generates it automatically; your part is to keep the data behind it complete.\u003C/p\u003E\n\n\u003Ch2 id=\u0022store\u0022\u003EThe store\u003C/h2\u003E\n\u003Cp\u003EEvery page carries an \u003Ccode\u003EOrganization\u003C/code\u003E (name, URL, logo, social profiles from the general settings) and a \u003Ccode\u003EWebSite\u003C/code\u003E with a search action, so search engines can show a search box for your store. When merchandise returns are enabled, the organization also has a \u003Ccode\u003EMerchantReturnPolicy\u003C/code\u003E: the return window from the sales settings, the countries you ship to, and optionally who pays and how items are sent back.\u003C/p\u003E\n\n\u003Ch2 id=\u0022product\u0022\u003EProducts\u003C/h2\u003E\n\u003Cp\u003EEach product page carries a \u003Ccode\u003EProduct\u003C/code\u003E with an \u003Ccode\u003EOffer\u003C/code\u003E. A real example from the demo store:\u003C/p\u003E\n\u003Cpre\u003E\u003Ccode\u003E{\n  \u0022@context\u0022: \u0022https://schema.org\u0022,\n  \u0022@type\u0022: \u0022Product\u0022,\n  \u0022name\u0022: \u0022Aurora Room Portable Speaker\u0022,\n  \u0022url\u0022: \u0022https://your-store/aurora-room-portable-speaker\u0022,\n  \u0022description\u0022: \u0022A splash-proof, 20-hour portable speaker ...\u0022,\n  \u0022image\u0022: [ \u0022https://your-store/assets/images/thumbs/..._aurora-room-portable-speaker.jpeg\u0022 ],\n  \u0022sku\u0022: \u0022TA-003\u0022,\n  \u0022brand\u0022: { \u0022@type\u0022: \u0022Brand\u0022, \u0022name\u0022: \u0022Aurora Audio\u0022 },\n  \u0022offers\u0022: {\n    \u0022@type\u0022: \u0022Offer\u0022,\n    \u0022price\u0022: \u0022179\u0022,\n    \u0022priceCurrency\u0022: \u0022USD\u0022,\n    \u0022availability\u0022: \u0022https://schema.org/InStock\u0022\n  },\n  \u0022aggregateRating\u0022: { \u0022@type\u0022: \u0022AggregateRating\u0022, \u0022ratingValue\u0022: \u00225\u0022, \u0022reviewCount\u0022: 1 }\n}\u003C/code\u003E\u003C/pre\u003E\n\u003Ctable\u003E\n\u003Cthead\u003E\u003Ctr\u003E\u003Cth\u003EProperty\u003C/th\u003E\u003Cth\u003EComes from\u003C/th\u003E\u003C/tr\u003E\u003C/thead\u003E\n\u003Ctbody\u003E\n\u003Ctr\u003E\u003Ctd\u003Ename, description, image\u003C/td\u003E\u003Ctd\u003EProduct name, meta description, pictures.\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003Esku, gtin, mpn\u003C/td\u003E\u003Ctd\u003EThe product\u0027s SKU, GTIN and manufacturer part number (Inventory and General tabs). Fill in GTIN - Google matches products by it.\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003Ebrand\u003C/td\u003E\u003Ctd\u003EThe product\u0027s brand.\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003Eprice, priceCurrency, availability\u003C/td\u003E\u003Ctd\u003EThe current price and stock status. Omitted for products with hidden prices, \u0022call for price\u0022, customer-entered prices and auctions.\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003EaggregateRating\u003C/td\u003E\u003Ctd\u003EApproved product reviews.\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003EshippingDetails\u003C/td\u003E\u003Ctd\u003EThe shipping details for search engines (below).\u003C/td\u003E\u003C/tr\u003E\n\u003Ctr\u003E\u003Ctd\u003EhasMerchantReturnPolicy\u003C/td\u003E\u003Ctd\u003EThe return settings; products marked \u0022not returnable\u0022 say so.\u003C/td\u003E\u003C/tr\u003E\n\u003C/tbody\u003E\n\u003C/table\u003E\n\n\u003Ch2 id=\u0022shipping\u0022\u003EShipping details for search engines\u003C/h2\u003E\n\u003Cp\u003ESearch engines show delivery cost and time only if you publish them. In \u003Cstrong\u003EConfiguration \u2192 Shipping \u2192 Shipping settings\u003C/strong\u003E, section \u003Cstrong\u003EShipping details for search engines\u003C/strong\u003E, enter the \u003Cstrong\u003EDefault shipping rate\u003C/strong\u003E and the \u003Cstrong\u003Ehandling\u003C/strong\u003E and \u003Cstrong\u003Etransit\u003C/strong\u003E times in business days. These values are only published - checkout never uses them. Leave them empty to publish nothing.\u003C/p\u003E\n\u003Cfigure\u003E\u003Cimg src=\u0022/Plugins/Theme.GrandNodeCom/Content/kb/seo/shipping-structured-data.webp\u0022 alt=\u0022Shipping settings with the section Shipping details for search engines: default shipping rate, handling time minimum and maximum days, transit time minimum and maximum days\u0022 width=\u00221440\u0022 height=\u0022900\u0022 loading=\u0022lazy\u0022\u003E\u003Cfigcaption\u003EShipping details for search engines.\u003C/figcaption\u003E\u003C/figure\u003E\n\u003Cp\u003EProducts with free shipping (or over the free shipping threshold) are published as free.\u003C/p\u003E\n\n\u003Ch2 id=\u0022returns\u0022\u003EReturn policy\u003C/h2\u003E\n\u003Cp\u003EIn \u003Cstrong\u003ESettings \u2192 Sales settings\u003C/strong\u003E, tab \u003Cstrong\u003EMerchandise returns\u003C/strong\u003E, the \u003Cstrong\u003EReturn fees\u003C/strong\u003E (free or paid by the customer) and \u003Cstrong\u003EReturn method\u003C/strong\u003E (by mail, in store) complete the return policy that is published. They are optional and, like the shipping details, informational only.\u003C/p\u003E\n\u003Cfigure\u003E\u003Cimg src=\u0022/Plugins/Theme.GrandNodeCom/Content/kb/seo/returns-structured-data.webp\u0022 alt=\u0022The Merchandise returns tab with Enable Returns System, number of days, Return fees and Return method set to Not specified\u0022 width=\u00221440\u0022 height=\u0022900\u0022 loading=\u0022lazy\u0022\u003E\u003Cfigcaption\u003EReturn fees and return method.\u003C/figcaption\u003E\u003C/figure\u003E\n\n\u003Ch2 id=\u0022test\u0022\u003ETest it\u003C/h2\u003E\n\u003Cp\u003EPaste a product URL into Google\u0027s Rich Results Test or the Schema Markup Validator. Fix warnings by filling in the missing data, not by editing the theme.\u003C/p\u003E\n\n\u003Ch2 id=\u0022related\u0022\u003ERelated\u003C/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022/seo-ai-visibility\u0022\u003EVisibility in AI assistants\u003C/a\u003E\u003C/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022/configuration-shipping\u0022\u003EShipping\u003C/a\u003E\u003C/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022/sales-merchandise-returns\u0022\u003EMerchandise returns\u003C/a\u003E\u003C/li\u003E\n\u003C/ul\u003E\n","ParentCategoryId":"6abe3a3b04b9d0a2009febef","SeName":"seo-structured-data","MetaKeywords":null,"MetaDescription":"The schema.org JSON-LD GrandNode publishes for the store and products - price, availability, rating, shipping and returns - and how to make it complete.","MetaTitle":null,"AllowComments":false,"Captcha":{"ReCaptchaChallengeField":null,"ReCaptchaResponseField":null,"ReCaptchaResponseValue":null,"ReCaptchaResponse":null},"RelatedArticles":[],"CategoryBreadcrumb":[{"Name":"SEO and AI visibility","Description":null,"IsCurrent":false,"Children":null,"Parent":null,"SeName":"docs-seo","Id":"6abe3a3b04b9d0a2009febef","UserFields":[]}],"AddNewComment":{"CommentText":null,"DisplayCaptcha":false,"Id":null,"UserFields":[]},"Comments":[],"Id":"6abe3a3b04b9d0a2009febf9","UserFields":[]}