WooCommerce Scraper | Shopify CSV & Product Feed | $0.9/1K avatar

WooCommerce Scraper | Shopify CSV & Product Feed | $0.9/1K

Pricing

from $0.90 / 1,000 product scrapeds

Go to Apify Store
WooCommerce Scraper | Shopify CSV & Product Feed | $0.9/1K

WooCommerce Scraper | Shopify CSV & Product Feed | $0.9/1K

Extract available public WooCommerce product catalogs, prices, variants, stock, ratings, and optional reviews. Export structured product data or migration/feed mappings with strict public-URL checks and a hard result cap. $0.90 per 1,000 successful Dataset records plus a $0.00005 run-start event.

Pricing

from $0.90 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Apivault Labs

Apivault Labs

Maintained by Community

Actor stats

0

Bookmarked

27

Total users

6

Monthly active users

6 days ago

Last modified

Share

WooCommerce Scraper — products, variants & Shopify CSV mapping

WooCommerce Catalog Intelligence — illustrative product catalog and migration mapping

Extract available public WooCommerce catalog data into structured product, variant, or store-snapshot records. Collect prices, stock status, ratings, images, categories, attributes, optional reviews, and draft Shopify CSV or Google Merchant mappings for downstream review.

The Actor costs $0.0009 per successful Dataset record ($0.90 per 1,000) plus a $0.00005 run-start event. A run-wide maxResults cap makes the maximum record charge predictable.

What you get

  • Store-root and exact /product/{slug}/ input modes.
  • Product IDs, canonical public URLs, titles, descriptions, SKUs, prices, sale signals, currency, images, categories, and attributes when exposed.
  • Stock, purchasability, rating, review count, variation IDs, and optional enriched variant details when available.
  • Optional displayed review text and reviewer information.
  • Product, flattened-variant, custom-field, migration-mapping, product-feed, and catalog-snapshot output modes.
  • Stable source-store metadata, record type, source mode, and UTC collection timestamp.
  • Free SUMMARY and FAILED_SOURCES reports outside the paid Dataset.
  • Strict public URL, DNS, and redirect validation to reject private networks and unsafe inputs.

Field availability varies by store configuration, plugins, theme, permissions, product type, and time. A store can use WooCommerce without exposing the catalog data required by this Actor.

Quick start

{
"storeUrls": ["https://woocommerce.com"],
"maxProducts": 100,
"maxResults": 100,
"exportFormat": "default"
}

An exact public product URL can be mixed with store roots:

{
"storeUrls": [
"https://store.example/product/ceramic-mug/",
"https://another-store.example"
],
"flattenVariants": true,
"enrichVariants": true,
"maxResults": 250
}

Replace the fictional .example domains with public WooCommerce stores you are authorized to process.

Input reference

FieldTypeDefaultDescription
storeUrlsstring[][]Up to 20 public store roots or exact product URLs.
maxResultsinteger250Hard run-wide cap of 1–1,000 paid Dataset records.
maxProductsinteger250Source products fetched per store before filtering and flattening, 1–1,000.
perPageinteger100Requested catalog page size, 1–100.
onlyInStockbooleanfalseDeliver only records explicitly reported as in stock. Unknown stock is excluded.
categorystringemptyOptional source category slug.
flattenVariantsbooleanfalseDeliver one record per available variant; can increase Dataset rows.
enrichVariantsbooleanfalseRequest available variant details and related-product IDs.
extractReviewsTextbooleanfalseRequest displayed reviews for each product.
reviewsPerProductinteger5Maximum displayed reviews requested per product, 1–50.
exportFormatstringdefaultStructured, mapping, custom subset, or snapshot output.
customColumnsstringemptyComma-separated output fields for custom-csv.
convertToCurrencystringemptyOptional ISO target currency for a point-in-time reference conversion when available.
extract*booleantrueSelect individual product field groups.
maxConcurrencyinteger3Public sources processed in parallel, 1–10.
timeoutinteger30Per-request timeout, 10–120 seconds.

Output modes

ModePaid Dataset unitIntended use
defaultOne successful product or flattened variant recordAnalysis, JSON/CSV/API workflows
shopify-csvProduct record with an embedded mappingInspect source data beside draft migration fields
shopify-csv-onlyOne draft mapped rowPrepare a Shopify-compatible import workflow
google-merchantProduct record with an embedded mappingInspect source data beside draft feed fields
google-merchant-onlyOne draft mapped rowPrepare a product-feed workflow
custom-csvOne selected-field recordSmaller exports for downstream tools
catalog-snapshotOne non-empty store snapshotCompare bounded catalog samples across stores

Mappings are generated from available source fields and require review before import. They do not guarantee acceptance by Shopify, Google Merchant Center, or another destination. Required identifiers, taxonomy, inventory, tax, shipping, policy, and image requirements remain your responsibility.

Example product record

{
"success": true,
"recordType": "product",
"sourceStore": "https://store.example",
"sourceMode": "store",
"productId": 1042,
"productUrl": "https://store.example/product/ceramic-mug/",
"slug": "ceramic-mug",
"title": "Ceramic Mug",
"price": "24.00",
"currency": "USD",
"regularPrice": "30.00",
"salePrice": "24.00",
"discountPct": 20.0,
"inStock": true,
"sku": "MUG-NAVY",
"brand": "Northstar Goods",
"autoCategory": "home",
"averageRating": 4.8,
"reviewCount": 37,
"productIntelligenceScore": 75,
"intelligenceScoreMethod": "listing_completeness_heuristic",
"collectedAt": "2026-08-27T14:00:00Z"
}

The example is fictional. Empty or null fields mean the source did not expose a usable value.

Catalog snapshots and heuristic fields

catalog-snapshot summarizes only the products returned within maxProducts, filters, and source availability. It can include price range, sale share, known stock coverage, freshness coverage, categories, ratings, images, and listing-completeness signals.

  • productIntelligenceScore measures listing completeness using available content signals. It is not product quality, demand, seller reliability, or a commercial recommendation.
  • autoCategory is a text heuristic, not an official product taxonomy.
  • aov_estimate is explicitly labeled with aovEstimateMethod=median_available_product_price_x_1_5_heuristic. It is not observed order data or revenue.
  • isNewArrival is null when no usable source timestamp exists.
  • Currency conversions are point-in-time reference values and should not be used as accounting or settlement rates.

Pricing and billing safety

  • Actor start: $0.00005.
  • Successful Dataset record: $0.0009.
  • maxResults caps paid records across every store and flattened variant.
  • Invalid, duplicate, unavailable, empty, and insufficient records do not enter the paid Dataset.
  • A non-empty catalog snapshot is one paid Dataset record; an empty snapshot is not delivered.
  • Review SUMMARY after each run to reconcile delivered rows and limit status.

API example

curl -X POST "https://api.apify.com/v2/acts/kGVnDXUL5UFMQY8QQ/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"storeUrls":["https://woocommerce.com"],"maxProducts":25,"maxResults":25}'

Responsible use

Use public catalog data only for lawful purposes and respect store terms, rate expectations, copyrights, trademarks, and database rights. Product reviews may contain personal data and copyrighted text; collect only what you need and avoid republishing large bodies of review content without permission. Verify prices, stock, variants, identifiers, and mapped fields against the source before operational use.

WooCommerce, WordPress, Shopify, and Google are trademarks of their respective owners. This independent Actor is not affiliated with or endorsed by them.

Reliability notes

  • Source stores can disable, customize, restrict, or remove public catalog access.
  • Redirects and DNS are revalidated, but public websites can still change after a run.
  • Product availability, pricing, stock, reviews, and currency values are point-in-time observations.
  • Optional enrichment adds requests and can increase runtime.
  • A successful run can contain zero paid rows; inspect SUMMARY and FAILED_SOURCES for the reason.