ChatGPT answers shopping questions with real products — photos, live prices, links to the store, and in some regions a checkout inside the conversation. Those results come from product feeds merchants submit to OpenAI, the same way Google Shopping reads a Merchant Center feed. Being in that index early, while most stores aren't, is the kind of head start channels rarely offer twice.
How it works: OpenAI's product feed
OpenAI publishes a product feed specification (the Agentic Commerce spec). Unlike Google's, it's push-based: there's no URL for OpenAI to poll. You enroll as a merchant, OpenAI verifies your business, and you receive a private upload endpoint (SFTP) where you push your catalog — as JSONL, CSV or Parquet, refreshed at least daily.
What the feed must contain
Nine fields are mandatory for every product: item_id, title (≤150 chars), description (≤5,000 chars), url, brand, seller_name, image_url, availability (one of in_stock, out_of_stock, pre_order, backorder, unknown) and price in the form "79.99 EUR". Variants carry a group_id linking them to the parent listing. Optional flags control visibility (is_eligible_search) and Instant Checkout (is_eligible_checkout).
Submitting your catalog, step by step
1. Apply at OpenAI's merchant portal (chatgpt.com/merchants) with your business details. Approval and SFTP credentials come after verification.
2. Prepare the feed file in the spec above. Start with a sample of about 100 products — OpenAI validates the sample before accepting the full catalog.
3. Upload to your SFTP endpoint, keep the filename stable, and re-upload on a schedule — at least daily, so prices and stock stay truthful. Products missing from snapshots are retained for 14 days, then dropped.
How Feedrobin generates it
Add the ChatGPT / OpenAI channel (in beta) and Feedrobin renders your catalog as spec-compliant JSONL from the same synced data as your Google and Meta feeds: availability mapped to OpenAI's values, prices in the exact "79.99 EUR" format, variants grouped, and products that would fail validation (for example, missing images) filtered out with the reason visible on your quality score. Download the file from your feed URL and upload it to the endpoint OpenAI gives you — whenever you push, the file is already current.