Feed formats
JSON (preferred for UCP and ACP)
Use JSON for any programmatic UCP or ACP catalog endpoint:XML (Google Merchant Center)
For Google Merchant Center submission:JSON-LD (on-page structured data)
AddProduct schema to every product page for AEO and GEO coverage:
Required vs optional fields
Variant handling in feeds
Each variant must be its own item in the feed with its ownid. Use the item_group_id field to group variants of the same base product:
ACP agents select a specific variant when a user specifies size, color, or other options. If variants are collapsed into a single product entry, the agent cannot resolve the user’s selection to a purchasable SKU.
Price and availability rules
Price formatting
Availability values
Update availability within 5 minutes of inventory changes. Stale availability is the leading cause of AI-to-purchase conversion failures — an agent that shows an out-of-stock item as available loses the customer’s trust immediately.
Submission paths
UCP (Google path)
- Submit your feed via Google Merchant Center (Content API or scheduled fetch)
- Ensure the feed URL is in a supported format (RSS/XML or Content API JSON)
- Publish your
/.well-known/ucpmanifest pointing to your catalog endpoint - Validate with the Readiness Score
UCP (Shopify)
Shopify exposes your product catalog automatically when UCP is enabled. Ensure your product data in Shopify is complete — descriptions, images, and availability — before enabling the feature. See the Shopify UCP Guide.UCP (Custom / Headless)
Host a feed JSON endpoint and reference it in your manifest:ACP
ACP agents consume your catalog through thesearch_products tool endpoint. That endpoint must return well-structured product objects with all required fields including variant data. See ACP Getting Started.
Formatting best practices
Use stable product IDs
Use stable product IDs
Never use session-based, timestamp-based, or auto-incremented IDs that change on reimport. Stable IDs let agents re-reference products across sessions. If an agent caches
prod_123 and you reimport with a new ID, the agent’s product reference becomes a dead link.Prices in the correct format per platform
Prices in the correct format per platform
UCP/ACP: decimal string in major currency units (
"129.99") with a separate currency field. Google Merchant Center: decimal string plus currency code ("129.99 USD"). Mixing these is the most common feed formatting error.Absolute image URLs
Absolute image URLs
Images must be absolute HTTPS URLs. Relative paths (
/images/shoe.jpg) do not work in feeds. Images should be at least 400×400 pixels, ideally 1000×1000 pixels.Keep availability in sync
Keep availability in sync
Update availability within 5 minutes of inventory changes. Stale availability is the leading cause of AI-to-purchase conversion failures.
Descriptions of at least 150 characters
Descriptions of at least 150 characters
AI systems use product descriptions to match user queries. Short descriptions (“Running shoes. Size 7-13.”) give the model almost no signal. Write full, natural-language descriptions that describe use cases, materials, and fit.
Feed validation
Run the Asva audit API to check your catalog, feed format, and schema in one call:Pre-submission checklist
- Feed URL is publicly reachable (no authentication required)
- All required fields are present and non-empty
- Prices are in the correct format for the target platform
- Images are absolute HTTPS URLs and accessible
-
/.well-known/ucpmanifest references the feed endpoint - ACP endpoints validated with the ACP Validator
- JSON-LD
Productschema is present on all product pages