Shopify Product Feed Scraper — ChatGPT Shopping & UCP Export
Pricing
Pay per event
Shopify Product Feed Scraper — ChatGPT Shopping & UCP Export
Shopify product feed scraper and validator: export any public Shopify store as an agent-ready feed — normalized products with variants, price, availability and GTINs, validated against the OpenAI product feed spec and Google UCP attributes, with fix-it errors and free drift monitoring.
Pricing
Pay per event
Rating
0.0
(0)
Developer
George Kioko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Shopify Product Scraper — ChatGPT Shopping & Google UCP Feed Export
Turn any public Shopify store into an agent-ready product feed. This Shopify product scraper extracts the full catalog as structured JSON, validates every product against the OpenAI product feed specification and Google UCP catalog attributes, tells you exactly what to fix, and monitors price/stock/feed drift on a schedule.
storeUrl ──► catalog extract ──► normalize ──► validate against(products.json, 1 record/ OpenAI feed spec +collection JSON, product, UCP attributessitemap, JSON-LD) variants │nested ▼free drift ◄── snapshot ◄── fix-it errors per productmonitoring (persists) + store readiness score
You are only charged for agent-ready products — records complete enough to be feed-eligible (canonical URL, title, price + currency, availability). Partial extractions are delivered free, with the errors that explain why. Typical scrapers charge up to $0.018/product for extraction alone; this actor charges $0.01 and includes the validation layer.
Why agentic commerce, why now
- ChatGPT surfaces products from merchant feeds conforming to the OpenAI Product Feed Specification — product discovery in ChatGPT is feed-driven.
- Google's UCP (Universal Commerce Protocol, co-developed with Shopify) exposes storefronts to shopping agents; Shopify serves
/.well-known/ucpmanifests for millions of stores. - If your catalog data is incomplete — missing GTINs, no availability, blocked AI crawlers — agents can't recommend your products. This actor shows you, per product, what's missing and how to fix it in Shopify admin.
What one run does
- Extract — walks a cost-ordered ladder of public endpoints:
/products.json→ collection JSON → product sitemap + per-product JSON → product-page JSON-LD (headless storefronts). No browser, no login, no credentials. Every record carriessourceMethod,sourceUrl,capturedAtas its evidence trail. - Validate — checks each product against the OpenAI product feed required attributes (id, title, description, link, image_link, price, currency, availability, brand, GTIN/MPN) and UCP catalog attributes. Every violation names the field, the rule, the evidence, and the remediation ("add a barcode in Shopify admin → variant").
- Audit the store surface — is
GPTBot/OAI-SearchBot/ChatGPT-Userallowed in robots.txt? Is a UCP manifest present at/.well-known/ucp? One freestore-summaryrow scores overall readiness 0–100. - Monitor (free) — with
monitoringon, each run diffs against the previous snapshot under the samemonitorId: new/removed products, price changes, new and resolved feed issues. Snapshots persist in a named key-value store in your account, so history survives Apify's 31-day dataset retention.
Output
One dataset, four record types (recordType field):
product— normalized record with nested variants, identifiers, images, plusagentReadyandvalidationErrors[]store-summary— free: readiness score, AI-bot robots policy, UCP manifest, top issues ranked by severity × frequencydiff-summary— free: drift vs the previous monitored runusage— free: why a run couldn't proceed (never charged)
{"recordType": "product","agentReady": true,"billable": true,"title": "Death Wish Coffee — Dark Roast","url": "https://www.deathwishcoffee.com/products/dark-roast","price": "21.99", "currency": "USD", "availability": true,"brand": "Death Wish Coffee", "gtin": "859277000101", "mpn": "DWC-DR-1LB","variants": [{ "sku": "DWC-DR-1LB", "price": "21.99", "available": true }],"validationErrors": [],"sourceMethod": "products-json","capturedAt": "2026-08-03T12:00:00.000Z"}
Pricing — honest by construction
| Event | Price | Never-charged rule |
|---|---|---|
| Actor start | $0.05 | — |
| Agent-ready product | $0.01 | Products below the confidence bar are delivered free with their validation errors. Failed runs, usage errors, summaries and diffs are always free. |
The confidence bar: resolved canonical URL + title + at least one variant with price and currency + availability. We don't charge for products we couldn't fully extract.
For AI agents & developers
Run via API and consume the dataset as JSON — ideal input for agentic commerce pipelines, feed generators, and catalog QA:
curl -s -X POST "https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"storeUrl": "https://yourstore.com", "maxProducts": 1000}'
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('<ACTOR_ID>').call({ storeUrl: 'https://yourstore.com' });const { items } = await client.dataset(run.defaultDatasetId).listItems();const feed = items.filter(r => r.recordType === 'product' && r.agentReady);
Schedule it weekly with a monitorId per store and read only the diff-summary rows for change alerts — a complete price monitoring setup for Shopify catalogs in one actor.
Use cases
- Shopify catalog export for ChatGPT Shopping feed / agentic commerce readiness before Q4
- Product feed audit for agencies: per-client readiness scores and fix-it lists on a schedule
- OpenAI product feed preparation: know GTIN/availability coverage before you submit
- Price monitoring Shopify competitors: track price/stock drift per store
- Feed QA for
shopify products jsondata pipelines and product feed validator workflows
Rolling out
- ChatGPT Shopping placement check (
enableShoppingCheck): will report whether your products actually surface in ChatGPT Shopping results. Not yet active and never charged — enabling it today adds a free status row while the run proceeds normally.
What this actor does not do
- No guaranteed ChatGPT / Gemini / AI-Mode / ads placement — placement is the platform's decision.
- No credentialed feed submission — it prepares and validates; you submit via your merchant tooling.
- Public catalog data only: no logins, no private APIs, and public data alone cannot prove full UCP checkout compliance.
FAQ
Which stores work? Any public Shopify store, including most headless storefronts (JSON-LD path). Password-protected stores don't.
How fast is it? Catalogs served by /products.json extract at ~250 products/request — a 1,000-product store takes seconds. Headless stores fall back to per-page parsing and run slower.
What if my store blocks the scraper? Switch proxyConfiguration to residential in the input. Extraction failures are always free.
Where is my monitoring history? In a named key-value store (chatgpt-shopping-snapshots) in your own Apify account — it persists indefinitely.