Policy
MEDIUMOfferShippingDetails shippingRate is a valid MonetaryAmount
When present, `shippingRate` is a MonetaryAmount with numeric value/maxValue and ISO 4217 currency. An invalid rate object is silently dropped; agents can't quote your shipping cost in shopping cards.
What this check looks for
We require `shippingRate` to be an object with either `value` or `maxValue` (parseable as a non-negative number) and a `currency` (or `priceCurrency`) field that matches /^[A-Z]{3}$/i. Both typed numbers and numeric strings are accepted because real-world emitters often serialize numbers as strings.
Which AI surfaces it affects
- Google AI Mode (UCP)90
- Microsoft Copilot60
- Meta AI50
- ChatGPT (ACP)40
- Perplexity30
Weighted against the live specs — ACP 2026-04-17, UCP 2026-04-08.
How to fix it
Emit shippingRate as a valid MonetaryAmount
Shopify
Developer- Settings → Shipping and delivery: confirm zone rates have a price set.
- If you hand-roll the JSON-LD, source the value from `{{ shipping_rate.price | money_without_currency }}` and the currency from `{{ shop.currency }}`.
BigCommerce
Developer- Edit your product template to emit a MonetaryAmount with the zone rate value and store currency.
WooCommerce
Developer- Yoast/AIOSEO emit MonetaryAmount from your WooCommerce zone rates automatically — confirm in view-source.
- If using a custom snippet, source value from your shipping-method config and currency from `get_woocommerce_currency()`.
Custom / headless
Developer- Emit MonetaryAmount with numeric value and ISO 4217 currency.
"shippingRate": {
"@type": "MonetaryAmount",
"value": 5.99,
"currency": "USD"
}The spec it's pinned to
Google shipping-policy SD — shippingRate as MonetaryAmount
Google's shipping-policy SD requires `shippingRate` to be a MonetaryAmount with a numeric value/maxValue and a 3-letter ISO 4217 currency. Prose strings or missing currency are silently dropped.
Does your store pass this check?
Run the full audit — 82 checks across five AI shopping surfaces. Most tools only check whether you get mentioned; we check whether an agent can buy from you.