Catalog feedPrivate preview
Share structured product and inventory data with Stripe for AI agent discovery.
Use the product and inventory feed specification to share structured product and stock data with Stripe, and distribute your product feed to AI agents for search and shopping. Start with a full product feed submission, then send incremental inventory feed updates to keep stock levels and availability current.
Product feed specification
Use the product feed specification to provide your complete structured product data (for example, titles, descriptions, identifiers, pricing, fulfillment, and media). Each row represents a product or variant.
- Format your product data using the field reference in this document. Each field includes sample values, validation rules, and whether it’s required, recommended, or optional.
- Send your product data securely using the Stripe Product Catalog Import API in CSV format. Each row represents one product or variant. Submit a full initial feed to the sandbox endpoint to confirm your data parses correctly and meets all field requirements before you push to production.
- Keep your data current and refresh your feed frequently. Update changes to product attributes, pricing, or fulfillment details when they occur to maintain customer trust and prevent stale listings. We validate and clean your data, index it into the Stripe product feed, and convert it to the format each agent requires.
Feed processing mode
Product feed uploads support two processing modes: upsert (default) and replace.
Upsert mode treats each row as an insert or update for a product identified by its id.
- If the
iddoesn’t exist, we create the product. - If the
idalready exists, we update the product with the values provided in that row. - Products not included in the file remain unchanged.
Replace mode treats the uploaded file as the complete, authoritative product catalog.
- If the
iddoesn’t exist, we create the product. - If the
idalready exists, we update the product with the values provided in that row. - Products that exist in your catalog but aren’t present in the uploaded file are permanently deleted.
- Replace mode is only supported for the product feed.
Use replace mode when you want the uploaded file to fully define your catalog. Use upsert mode when you want to apply partial updates without affecting products you didn’t include.
Deletion behavior
To remove a product or variant through the feed, include the optional delete column in your CSV. Set it to true for any products you want to delete. For products you want to keep, set it to false or leave the field blank.
When delete=true, Stripe only reads the id and delete columns for that row and ignores every other column.
Discovery-only products
Products with disable_ are syndicated to AI agents for discovery, but they aren’t eligible for in-agent checkout. When an agent displays a discovery-only product, it redirects the user to the product’s link URL to complete the purchase on your website.
Discovery-only products follow the same feed processing rules as other products. Agents can index, search, and rank them. The only difference is that the purchase action redirects to your site instead of starting an in-agent checkout session.
For details on setting this field, see Feed processing instructions.
Product feed field reference
Review the full schema used by the Stripe product feed in the following sections. Each table lists data types, examples, and requirements.
Basic product data
Product identifiers
Media
Item information
Variants
Custom variant options
Availability and inventory
Price and promotions
Fulfillment
Performance and review signals
Product relationships
Compliance
Custom labels
Feed processing instructions
Download a sample file.
Use the inventory feed specification
Use the inventory feed to refresh product availability and stock quantities without resubmitting your full product feed. Send frequent updates from your warehouse, point of sale, or fulfillment systems so your products reflect accurate in-stock status across agentic interfaces.
- Keep your product feed in sync: The
idvalues in your inventory file must already exist in the main product feed. - Send frequent inventory files: Push updates through the Stripe Product Catalog Import API in CSV format.
- Send partial updates: Include only changed SKUs—missing SKUs retain their last known inventory state.
Inventory feed field reference
Use the following reference to format your inventory feed fields.
Inventory feed fields
Use the price feed specification
Use the price feed to refresh pricing information for display and promotions without resubmitting your full product feed.
- Keep your product feed in sync: The
idvalues in your price file must already exist in the main product feed. - Send frequent price files: Push updates through the Stripe Product Catalog Import API in CSV format.
- Send partial updates: Include only changed SKUs—missing SKUs retain their last known pricing information.
Price feed field reference
Use the following reference to format your price feed fields.
Price feed fields
Use the promotion feed specification
Use the promotion feed to provide your active and scheduled promotions, including discount codes, percentage-off deals, fixed-amount discounts, and free shipping offers. Each row represents a single promotion. The promotion feed works alongside your product feed and references products by id or item_ from your catalog.
- Keep your product feed in sync: Product IDs and item group IDs in your promotion file must match
idoritem_values in the main product feed.group_ id - Send frequent promotion files: Push updates through the Stripe Product Catalog Import API in CSV format.
- Send partial updates: Include only changed promotions. If you omit promotions, they retain their last known promotion information.
Promotion feed field reference
Use the following reference to format your promotion feed fields.