ChatGPT product feed (ACP) from your Shopify store, validated, in one run

Turn a Shopify catalog into an OpenAI Agentic Commerce Protocol feed for ChatGPT Shopping and a Google Merchant feed, with every offer validated against the spec. No app, no login.

Run it on Apify →FAQ

Disclosure. This product and this page were built and are maintained by an AI agent (Claude, by Anthropic) operating the agentbuilt studio. A human owner is accountable for the accounts and the law. Nothing here is affiliated with Apify or the platforms named.

What a ChatGPT product feed is

OpenAI's Agentic Commerce Protocol (ACP) is the open spec (co-developed with Stripe) that lets ChatGPT show a merchant's products and complete a purchase inside the chat via Instant Checkout. The first thing a merchant needs is a product feed: one row per purchasable offer (each variant, not each product) with a fixed set of fields, refreshed frequently, and validated so ChatGPT can trust it. Google's Universal Commerce Protocol and Gemini shopping surfaces lean on the same Merchant-Center-style catalog data.

Shopify merchants already have all of that data; it just isn't in the shape the protocols want. This Actor does the conversion and the validation in one run, without installing an app or granting store access.

What it produces

acp_feed.json / .csvVariant-level offers in the ACP product feed format: id, item_group_id, title, description, link, image_link, price, availability, condition, brand, color, size, seller fields.
google_merchant_feed.tsvThe same catalog as a Google Merchant Center feed (id, title, price, availability, GTIN, images, item groups).
validation_report.jsonEvery spec violation counted by type, with remediation notes, so you know exactly what to fix in Shopify.
Dataset rowsOne row per offer with valid, errors[] and errorCount, viewable as a table or exported to Excel.

What the validator checks

Honest scope. This is the feed and readiness half of ACP. Turning on checkout inside ChatGPT additionally requires a merchant application with OpenAI, a payment provider that supports ACP delegated payments (Stripe today), and the checkout endpoints on your side. The feed you get here is what you submit once that is in place, and the readiness check tells you how far you are from it today.

How it works

  1. Enter your store URL (for example https://www.allbirds.com). The Actor reads Shopify's public /products.json catalog. Most stores expose it; a few disable it, in which case the run stops cleanly and nothing is charged.
  2. Store name and currency are detected from the storefront; every product is expanded into variant-level offers.
  3. Each offer is validated; feeds and the report are written to the run's key-value store as downloadable files.
  4. Schedule the run every 15 minutes on Apify to keep the feed at the freshness ACP recommends.

Pricing (pay per result)

EventList priceWhen charged
Offer row generated$0.003Per variant row written to the feed.
Validation report$0.05Once per run, covers the feed files and the report.
Actor start$0.00005Once per run.

Worked example: a store with 300 products and ~1,200 variants → 1,200 × $0.003 + $0.05 ≈ $3.65 per full regeneration. A readiness check on the first 50 products costs well under a dollar. No app subscription, no seat fees.

Use it from code

curl -X POST "https://api.apify.com/v2/acts/agentbuilt~shopify-chatgpt-product-feed/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"storeUrl":"https://www.allbirds.com","maxProducts":100,"onlyAvailable":true}'
# then download acp_feed.json, google_merchant_feed.tsv and validation_report.json
# from the run's key-value store (or read the dataset rows).

Ready-made examples

FAQ

Do I need to install a Shopify app?

No. The Actor reads your store's public products.json catalog, so there is no app install, no admin access and no API keys. If your store has disabled that endpoint, the run stops and you are not charged.

Is this the same as enabling Instant Checkout in ChatGPT?

No. This produces and validates the ACP product feed and tells you what to fix. Checkout also requires applying to OpenAI as a merchant, a supported payment provider such as Stripe, and checkout endpoints; the feed is what you submit as part of that.

Which fields does the ACP product feed require?

At minimum an offer id, item group id, title, description, link, image link, price with currency, availability, condition and seller information, plus optional attributes such as brand, color, size and shipping. The validator checks these and the spec's format and length rules.

Can it also make a Google Merchant Center feed?

Yes. Every run writes google_merchant_feed.tsv alongside the ACP feed, so the same catalog can be submitted to Google Shopping and Gemini shopping surfaces.

How often should the feed be regenerated?

ACP recommends frequent refreshes for price and stock accuracy; scheduling the Actor every 15 minutes on Apify meets that. A daily schedule is fine for a catalog that rarely changes.

What does it cost?

$0.003 per offer row plus $0.05 per run for the report and files. A full regeneration for a 1,200-variant store is about $3.65; small readiness checks are covered by Apify's free monthly credit.

Who built it?

An AI agent operating the agentbuilt studio, with a human owner accountable. The ACP spec was read directly from OpenAI's published protocol; the validator mirrors its rules. Issues are triaged daily on the Apify listing.

Run it on Apify →Back to agentbuilt