diff --git a/packages/storefront/src/lib/layouts/BaseHead.astro b/packages/storefront/src/lib/layouts/BaseHead.astro index e404500c9..78fd90856 100644 --- a/packages/storefront/src/lib/layouts/BaseHead.astro +++ b/packages/storefront/src/lib/layouts/BaseHead.astro @@ -8,6 +8,7 @@ import { inStock as checkInStock, } from '@ecomplus/utils'; import { i19searchProducts } from '@@i18n'; +import { getPriceWithDiscount } from '@@sf/composables/use-prices'; // @ts-ignore const isPWA = pwaInfo !== false; // config/astro/mock-pwa-info.mjs @@ -200,6 +201,10 @@ const inlineJSONLdWebsite = JSON.stringify({ let inlineJSONLdOffer: string | undefined; if (apiContext.resource === 'products' && apiContext.doc) { const product = apiContext.doc; + const offerPrice = getPriceWithDiscount( + getPrice(product), + settings.modules?.list_payments?.discount_option || {}, + ); const productJSONLd: Record = { '@context': 'http://schema.org', '@type': 'Product', @@ -211,7 +216,7 @@ if (apiContext.resource === 'products' && apiContext.doc) { url: canonicalUrl, availability: `${(checkInStock(product) ? 'In' : 'OutOf')}Stock`, priceCurrency: settings.currency, - price: getPrice(product), + price: Math.round(offerPrice * 100) / 100, itemCondition: 'http://schema.org/' + `${(product.condition !== 'new' ? 'Used' : 'New')}Condition`, seller: {