Key Takeaways
- AI agents need six transactional data points in machine-readable format: availability, shipping cost, delivery time, shipping regions, return policy, and payment methods
- Use OfferShippingDetails Schema for shipping data and MerchantReturnPolicy Schema for return information -- both nested within your Product Offer
- Stores with structured shipping data are 2.3x more likely to be selected by AI agents for time-sensitive purchase queries like "find a gift that arrives by Friday"
- Availability must sync with inventory in real-time -- AI agents that find stale InStock data will flag your domain as unreliable and reduce future visits
- The same Schema implementation serves both Google Shopping and AI agents -- one optimization investment, two distribution channels
Is your transactional data AI-readable? Scan your store for free -- AImetrico checks your Schema completeness, including shipping and return markup.
Table of Contents
- Why Transactional Data Matters for AI Agents
- The Six Essential Transactional Data Points
- Availability Schema: Real-Time Inventory for AI
- Shipping Schema: OfferShippingDetails Implementation
- Return Policy Schema: MerchantReturnPolicy Implementation
- Dynamic Schema Generation from Your Systems
- Testing Transactional Schema for AI Agents
- Common Mistakes and How to Fix Them
- FAQ
Why Transactional Data Matters for AI Agents
Traditional AI search -- ChatGPT answering "What is the best laptop?" -- needs product information. Agentic AI -- an Operator completing "Buy me the best laptop under $1000 with next-day shipping" -- needs transactional information. The distinction is critical: information helps AI recommend. Transactional data lets AI act.
When an AI agent receives a purchase task, it evaluates products across a checklist of transactional requirements: Is the product in stock? Can it be delivered within the timeframe? What does shipping cost? Can it be returned if the user is not satisfied? What payment methods are accepted? Each of these data points must be machine-readable for the agent to evaluate it programmatically.
The problem: most e-commerce sites store transactional information in places AI agents cannot reliably access. Shipping costs are calculated dynamically in cart. Return policies live in a linked PDF or a separate /returns page. Availability is shown via a JavaScript widget that updates with an API call. None of these formats are accessible to an AI agent parsing your product page.
The solution is structured transactional data -- specifically, Schema.org types designed for exactly this purpose. Stores that implement OfferShippingDetails, MerchantReturnPolicy, and dynamic availability Schema are 2.3x more likely to be selected by AI agents for purchase tasks.
For the foundational understanding of how AI agents work, see what is agentic search.
The Six Essential Transactional Data Points
Every product page needs these six data points in machine-readable format for AI agents:
| Data Point | Schema Type | What AI Agents Do With It |
|---|---|---|
| Availability | Offer.availability | Filter out unavailable products immediately |
| Shipping cost | OfferShippingDetails.shippingRate | Compare total cost across stores |
| Delivery time | ShippingDeliveryTime | Filter by delivery deadline ("arrives by Friday") |
| Shipping region | OfferShippingDetails.shippingDestination | Verify the product ships to user's location |
| Return policy | MerchantReturnPolicy | Assess purchase risk; prefer generous return policies |
| Payment methods | Offer.acceptedPaymentMethod | Verify compatible payment before checkout |
Missing any one of these creates friction for AI agents. If shipping cost is unknown, the agent cannot calculate total price. If delivery time is missing, the agent cannot filter by urgency. Each missing data point reduces the probability that an agent selects your store.
For pricing-specific implementation, see our guide on machine-readable pricing for AI agents.
Availability Schema: Real-Time Inventory for AI
Availability is the first filter AI agents apply. An agent looking for a product to purchase immediately will exclude anything not marked InStock before evaluating any other factor.
Implementation
Availability is set within the Offer type using Schema.org's enumerated values:
"offers": {
"@type": "Offer",
"availability": "https://schema.org/InStock",
"price": "299.00",
"priceCurrency": "USD"
}
The six availability values and agent behavior
| Value | Agent Interpretation |
|---|---|
| InStock | Proceed with purchase evaluation |
| PreOrder | Include if user accepts waiting; state expected date |
| BackOrder | Include only if no InStock alternatives exist |
| LimitedAvailability | Proceed but may flag urgency to user |
| OutOfStock | Exclude from purchase tasks |
| Discontinued | Exclude; may suggest alternatives |
The real-time imperative
Stale availability data is worse than no availability data. When an AI agent navigates to your product page based on an InStock signal and discovers the item is actually out of stock, two things happen: the user's task fails, and the agent deprioritizes your domain for future tasks.
Your Schema must reflect actual inventory within 15 minutes of changes. This requires generating Schema dynamically from your inventory management system -- never hardcode availability values.
Shipping Schema: OfferShippingDetails Implementation
Shipping data is the second most-queried transactional attribute after price. AI agents use it to answer questions like "Can this arrive by Saturday?" and "How much is shipping to California?"
Complete OfferShippingDetails implementation
"offers": {
"@type": "Offer",
"price": "299.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"shippingDetails": [
{
"@type": "OfferShippingDetails",
"shippingRate": {
"@type": "MonetaryAmount",
"value": "0.00",
"currency": "USD"
},
"shippingLabel": "Standard Shipping (Free)",
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": {
"@type": "QuantitativeValue",
"minValue": 0,
"maxValue": 1,
"unitCode": "DAY"
},
"transitTime": {
"@type": "QuantitativeValue",
"minValue": 3,
"maxValue": 7,
"unitCode": "DAY"
}
},
"shippingDestination": {
"@type": "DefinedRegion",
"addressCountry": "US"
}
},
{
"@type": "OfferShippingDetails",
"shippingRate": {
"@type": "MonetaryAmount",
"value": "14.99",
"currency": "USD"
},
"shippingLabel": "Express Shipping (1-2 Business Days)",
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": {
"@type": "QuantitativeValue",
"minValue": 0,
"maxValue": 1,
"unitCode": "DAY"
},
"transitTime": {
"@type": "QuantitativeValue",
"minValue": 1,
"maxValue": 2,
"unitCode": "DAY"
}
},
"shippingDestination": {
"@type": "DefinedRegion",
"addressCountry": "US"
}
}
]
}
Key fields explained
- shippingRate -- The cost of shipping. Use
0.00for free shipping, not an empty value. - handlingTime -- Time between order placement and handoff to the carrier. Honest handling times build agent trust.
- transitTime -- Time in transit from shipment to delivery. Use min/max ranges for accuracy.
- shippingDestination -- Where you ship to. Specify countries and optionally states or postal code ranges.
- shippingLabel -- A human-readable label like "Standard Shipping" or "Express 2-Day."
Multiple shipping options
Include all available shipping tiers as separate OfferShippingDetails entries within an array. This allows AI agents to present the user with options: "Standard shipping is free and arrives in 3-7 days. Express is $14.99 and arrives in 1-2 days."
Return Policy Schema: MerchantReturnPolicy Implementation
Return policies directly influence AI agent purchase decisions. For product categories with high return rates (clothing, electronics, furniture), agents weigh return terms heavily. A store with free 30-day returns and machine-readable return Schema will be preferred over one with unclear return terms.
Complete MerchantReturnPolicy implementation
"offers": {
"@type": "Offer",
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"applicableCountry": "US",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"merchantReturnDays": 30,
"returnMethod": "https://schema.org/ReturnByMail",
"returnFees": "https://schema.org/FreeReturn",
"returnPolicySeasonalOverride": {
"@type": "MerchantReturnPolicySeasonalOverride",
"startDate": "2026-11-01",
"endDate": "2027-01-31",
"merchantReturnDays": 90
}
}
}
Return policy values AI agents evaluate
| Field | Options | Agent Behavior |
|---|---|---|
| returnPolicyCategory | FiniteReturnWindow, UnlimitedWindow, NotPermitted | UnlimitedWindow preferred; NotPermitted flagged |
| merchantReturnDays | Number of days | Longer windows preferred, especially for gifts |
| returnFees | FreeReturn, ReturnShippingFees, RestockingFee | FreeReturn strongly preferred |
| returnMethod | ReturnByMail, ReturnInStore, ReturnAtKiosk | Multiple methods preferred |
Seasonal overrides
Holiday seasons often have extended return windows. The returnPolicySeasonalOverride property lets you communicate this programmatically. An AI agent helping someone buy a December gift can then assure the user: "This store extends returns to 90 days during the holiday season."
Dynamic Schema Generation from Your Systems
Transactional data changes constantly: inventory fluctuates, shipping rates are updated seasonally, return policies change for holidays. Hardcoded Schema becomes stale, and stale transactional Schema is actively harmful.
The integration architecture
Your transactional Schema should be generated dynamically from three data sources:
- Inventory Management System (IMS) -- Feeds real-time availability values
- Shipping Configuration -- Provides current rates, delivery estimates, and carrier options
- Policy Database -- Stores return, warranty, and payment policy details
These feed into a Schema generator that outputs fresh JSON-LD on every product page load. Most e-commerce platforms support this natively:
- Shopify -- Use Schema apps (JSON-LD for SEO) that read metafields and Shopify's shipping/return settings
- WooCommerce -- Plugins like Rank Math or Schema Pro can generate dynamic transactional Schema
- Custom platforms -- Build Schema generation into your product page template, pulling from your database
Update frequency targets
| Data Type | Update Frequency | Why | |---|---|---| | Availability | Real-time (< 15 min) | Stale availability = broken agent trust | | Price | Near real-time (< 1 hour) | Price changes must reflect immediately | | Shipping rates | Daily or on change | Seasonal rate changes | | Delivery estimates | Daily | Carrier delays, holiday adjustments | | Return policy | On change | Policy updates less frequent but critical |
For the foundational Schema knowledge, see our JSON-LD basics for AI SEO guide.
Testing Transactional Schema for AI Agents
Step 1: Validate syntax
Run your product page through Google's Rich Results Test. Verify that Product, Offer, OfferShippingDetails, and MerchantReturnPolicy are all detected without errors.
Step 2: Verify completeness
Check that every required field is populated:
- Price + currency
- Availability (not missing, not null)
- At least one shipping option with rate and delivery time
- Return policy with return window and fee type
Step 3: Test with AI
Ask an AI agent a transactional question about your product: "How much does shipping cost for [product] to [location]?" or "What is the return policy at [your store]?" If the AI can answer accurately, your Schema is working.
Step 4: Monitor for staleness
Set up automated alerts for Schema-to-data mismatches. Common triggers:
- Product marked InStock in Schema but showing "Out of Stock" on page
- Schema price different from displayed price
- Shipping estimates that do not match current carrier performance
For the broader e-commerce AI SEO framework, see our complete e-commerce guide.
Common Mistakes and How to Fix Them
-
Shipping data only in cart -- Many stores calculate shipping only after items are added to cart. AI agents evaluate shipping before adding to cart. Solution: include baseline shipping estimates in Schema on the product page.
-
Return policy in a separate PDF -- AI agents cannot read PDF files linked from product pages. Solution: embed return policy details directly in MerchantReturnPolicy Schema on every product page.
-
Hardcoded availability -- Setting
InStockonce and never updating it. Solution: generate availability dynamically from your inventory system. -
Missing regional shipping -- Only including one shipping destination when you ship internationally. Solution: add separate OfferShippingDetails entries for each major shipping region.
-
No express shipping option -- Only listing standard shipping. When an AI agent needs fast delivery, it will skip stores without express options. Solution: include all shipping tiers in Schema.
-
Vague delivery estimates -- Using "3-10 business days" as a single value. Solution: separate handling time from transit time, use min/max ranges for both, and specify the unit code (DAY).
Frequently Asked Questions
What transactional data do AI agents need from e-commerce sites?
AI agents need six core data points in machine-readable format: availability, shipping cost, delivery time, shipping regions, return policy details, and payment methods. Without these in structured data, agents cannot confidently complete purchase tasks. See our agentic search guide for the full context.
What Schema types cover shipping and return information?
Use OfferShippingDetails for shipping (delivery time, cost, destinations) and MerchantReturnPolicy for returns (return window, method, fees). Both nest within the Offer type of your Product Schema. For Schema fundamentals, see JSON-LD basics for AI SEO.
Do AI agents actually use structured shipping data to make purchase decisions?
Yes. When a user asks an agent to "find a birthday gift that arrives by Friday," the agent filters by delivery time. Stores with OfferShippingDetails Schema are 2.3x more likely to be selected for time-sensitive queries. For pricing-specific guidance, see machine-readable pricing for AI agents.
How should availability data be updated for AI agents?
Update within 15 minutes of inventory changes. AI agents that find stale InStock data on an out-of-stock product will flag your domain as unreliable. Generate Schema dynamically from your inventory management system rather than hardcoding values.
Is MerchantReturnPolicy Schema important for AI citations?
Increasingly so. AI agents factor return policies into purchase recommendations, especially for clothing, electronics, and high-value items. Free returns with machine-readable Schema create a competitive advantage over stores with unclear return terms.
Can I use the same Schema for both Google Shopping and AI agents?
Yes. The Schema types for Google Merchant Center (Product, Offer, OfferShippingDetails, MerchantReturnPolicy) are the same ones AI agents parse. One implementation serves both channels. See our e-commerce AI SEO guide for the complete framework.
Is your transactional data ready for AI agents?
Get a free scan -- check your shipping, return, and availability Schema across all product pages.
Trusted by 2,400+ websites -- No credit card required