Dunnes Stores Scraper — Fashion & Home Prices, Sizes, EANs
Pricing
from $1.00 / 1,000 products
Dunnes Stores Scraper — Fashion & Home Prices, Sizes, EANs
Scrape Dunnes Stores Ireland fashion and home: EUR prices, sale prices, every size with EAN and availability, categories, care and fit. Not groceries. Pay per result.
Pricing
from $1.00 / 1,000 products
Rating
0.0
(0)
Developer
architek.earth
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
Share
Recorded 18 Oct 2026 from Apify datacenter IPs, no proxy: dunnesstores.com lists 4,980 fashion and home products. A "jeans" search listed 59 products and Home › Bedroom listed 219. Every row came with EUR prices, every size and colour with its EAN barcode and availability, and the full category path. A 15-request burst was never blocked.
From Architekture, makers of the ALDI Ireland, Tesco UK, Shopify and AliExpress scrapers.
Search dunnesstores.com by keyword, browse a department or category, or look up product URLs. You get one clean JSON row per product, with every size and colour nested inside: name, brand, style code, price range, sale prices, availability per size, EAN per size, category path, gender and age group, image and URL. Turn on details to add the description, details and care (composition and washing), size and fit (measurements), country of origin, and every image.
Fashion & home only, not groceries. Dunnes sells groceries on a separate site, which this actor does not cover. It covers dunnesstores.com: Women, Men, Kids, Home, Seasonal and School.
🤖 Built for AI workflows. Every row is deterministic, schema-stable JSON — feed it straight to LLM apps, RAG pipelines, or agent tool calls via the Apify API, the Apify MCP server (mcp.apify.com), or AI coding agents like Claude Code and Cursor.
| 🏪 Retailer | 📍 Market | 💰 From | 🔑 Standout fields |
|---|---|---|---|
| Dunnes Stores | Ireland 🇮🇪 | $1.00 / 1,000 products | All sizes & colours in one row, details & care |
🚀 Why choose this actor
- 🔬 One row per product, all sizes inside. You pay per product, not per size: a pair of jeans in 18 sizes is one
productrow withvariants[18]. - 🔬 EAN barcode on every size. Use it to match Dunnes products against other retailers, or against your own catalogue.
- 💸 Sale detection per size. Dunnes discounts individual sizes or colours (e.g. a duvet cover, ivory double, at €5, was €25). Each discounted variant carries
wasPrice. The product'sprice,maxPriceandonSaleare worked out from the sizes in stock, so a sold-out €5 size never shows as "from €5". - 💸 Detail tier you only pay for when it's there. With
includeDetails, a row is charged asproduct-detailonly when Dunnes published a description, care, fit or origin for it. Extra images alone don't trigger the detail price. - 🆓 Never pay for misses. An unknown category, a missing product or a blocked request gets one free status row.
⚠️ Worth knowing up front
- 📊 No stock counts. Dunnes' API publishes a capped stock indicator, not a quantity. You get
available: true/falseper size, and we never estimate a count. - 🔎 Up to 2,500 products per search term or category. That's the limit of Dunnes' API. A department bigger than that is reachable by listing its sub-categories, and
RUN_SUMMARYwarns when a query hits the limit. - 💸 Prices are the online prices shown on dunnesstores.com, in EUR. Store-only promotions are not included.
- 🗂️ No reviews. Dunnes does not publish them in its catalogue.
⚡ Try the example
{"searchTerms": ["jeans"],"maxItemsPerQuery": 50}
Add "includeDetails": true for composition, care and size-fit, or "categories": ["home/bedroom"] for a whole category.
⚙️ Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchTerms | array | — | Keywords, e.g. jeans, duvet cover. Up to 50 terms + categories. |
categories | array | — | Name (Home, Duvet Covers), path (women/clothing/jeans) or dunnesstores.com category URL. An ambiguous name like Clothing (Women and Men both have one) needs the path. |
productUrls | array | — | dunnesstores.com product URLs (…/savida-stripe-jeans-7951169/p) or product ids (36256). Up to 500. |
maxItemsPerQuery | integer | 100 | Cap per search term or category. 0 = everything (up to 2,500). |
includeDetails | boolean | false | Adds the detail tier (see below). Needs no extra requests, so it doesn't slow the run. |
sort | select | relevance | relevance, price_asc, price_desc, newest, best_selling, name_asc, name_desc. |
proxyConfiguration | proxy | Apify datacenter | Blocked or rate-limited requests are retried on a fresh IP. |
feedback | string | — | A note to the maintainers. Read by a human. |
Results are de-duplicated by product across every term, category and URL in a run, so a product found twice is delivered and charged once. Product URLs are fetched first.
🧱 Stable fields for automations
Product rows have recordType: "product"; status rows have recordType: "query". Fields are omitted, never null, when Dunnes does not publish them. New fields are only ever added.
| Field | Meaning |
|---|---|
recordType, retailer | product; "Dunnes Stores". |
productId, styleCode | Dunnes product id and style code (the number in the product URL). |
name, brand | e.g. "Savida Stripe Jeans", "Savida". Brands seen include Savida, Gallery and Dunnes Stores. |
department, category, categoryPath | "Women", "Jeans", "Women > Clothing > Jeans". |
price, maxPrice, currency | Lowest and highest price among in-stock sizes (all sizes if none is in stock), "EUR". |
onSale, available | An in-stock size is discounted (any size if none is in stock); any size in stock. |
colours, gender, ageGroup | As tagged by Dunnes. |
variantCount, variants[] | Each variant: sku, ean, size, colour, price, wasPrice (only when discounted), available. |
image, url, releaseDate | Main image, product page, date Dunnes listed it. |
source | {source: "search" | "category" | "product", searchTerm?, category?, categoryUrl?, page?}. |
Detail tier: description, detailsAndCare, sizeFit, countryOfOrigin, images | With includeDetails, where published. detailsAndCare and sizeFit are plain text with one item per line. |
Status rows: query, status, reason | NOT_FOUND, BLOCKED or ERROR, and why. |
📦 Output example
Recorded 18 Oct 2026; variants abridged.
{"recordType": "product","retailer": "Dunnes Stores","productId": "36256","styleCode": "7951169","name": "Savida Stripe Jeans","brand": "Savida","department": "Women","category": "Jeans","categoryPath": "Women > Clothing > Jeans","price": 50.0,"currency": "EUR","onSale": false,"available": true,"colours": ["Print"],"gender": "female","ageGroup": "adult","variantCount": 7,"variants": [{ "sku": "265134", "ean": "5099013076909", "size": "10", "colour": "Stripe", "price": 50.0, "available": true },{ "sku": "265137", "ean": "5099013076985", "size": "16", "colour": "Stripe", "price": 50.0, "available": false }],"url": "https://www.dunnesstores.com/savida-stripe-jeans-7951169/p","source": { "source": "search", "searchTerm": "jeans", "page": 1 }}
With details on, a bedding row also carries text like "detailsAndCare": "Details:\n100% polyester\nCare:\nWash at 40 degrees\n…", "sizeFit": "Single: 90 x 190cm + 28cm\n…" and "countryOfOrigin": "CN".
🧠 Advanced usage
- 💸 Competitor price and markdown tracking: schedule the same categories daily. Join on
variants[].skuand watchprice/wasPrice. - 🔬 Catalogue matching: join
variants[].eanagainst your own range or another retailer's. - 📈 New-in monitoring:
sort: "newest"with a smallmaxItemsPerQuery, filtered byreleaseDate. - 💸 Whole catalogue: list the sub-categories of each department in
categories. The run is de-duplicated, so overlapping categories are not charged twice. - 💸 Completion check: read
RUN_SUMMARY, which hasstatus(COMPLETE,PARTIAL,NO_PRODUCTS,BUDGET_LIMIT,TIME_LIMIT,STATE_SAVE_FAILED,INVALID_INPUT,NOT_CONFIGURED),products,charged, andqueries[](each withstatus,delivered,listed,warning).
🔌 Integrations
Export as JSON, CSV or Excel; push to Google Sheets; trigger from Make, Zapier or n8n; get a webhook when a run finishes; schedule with the Apify Scheduler.
💸 How much does it cost?
1,000 products ≈ $1.00 (all sizes and colours in one row); with the detail tier $4.00 / 1,000. Platform usage is included.
💰 Pricing
| Event | Price | Covers |
|---|---|---|
product | $1.00 / 1,000 | One product row, all sizes and colours included |
product-detail | $4.00 / 1,000 | One product row with the detail tier (includeDetails) and at least one of description, details & care, size & fit, or country of origin |
Platform usage is included. Status rows are free, and nothing is charged for failed requests. A run stops cleanly at your spending limit, with charges equal to rows delivered.
❓ FAQ
Does it cover Dunnes groceries? No. Groceries are on Dunnes' separate grocery site; this actor covers dunnesstores.com (fashion, home, kids, seasonal, school).
Can I get exact stock levels? No. Dunnes publishes availability per size, not quantities.
Why did a category name come back NOT_FOUND? Some names exist in several departments (e.g. Clothing). Use the path from the category URL, e.g. women/clothing.
🤖 For AI agents & LLM apps
architekture/dunnes-ie-scraper returns Dunnes Stores (Ireland) fashion and home products as deterministic, schema-stable JSON, one object per product. Each object has name, brand, EUR price range and sale flags, and every size and colour with SKU, EAN and availability; detail text is optional. Invoke it from any agentic workflow via the Apify API or the Apify MCP server (mcp.apify.com) as a tool call. Its cost is bounded before it starts: $1 per 1,000 products, or $4 per 1,000 with the detail tier. maxItemsPerQuery caps each query, and a spending limit stops the run cleanly. Every query gets a machine-readable status in RUN_SUMMARY, and misses come back as free recordType: "query" rows. Honest limits: dunnesstores.com only (no groceries), no stock counts, up to 2,500 products per query.
Works out of the box with LangChain, LlamaIndex and AI coding agents — call it as a tool from Claude Code, Cursor, or any MCP client via mcp.apify.com.
🧰 More Architekture scrapers
- 📍 Ireland: Dunnes Stores fashion & home (you are here) · ALDI Ireland
- UK: Tesco UK · Sainsbury's UK
- 🔎 E-commerce: Shopify Products · AliExpress Search
🙋 Support
Open an Issue on this actor's page; a human replies within a day.
⚖️ Legal compliance
This actor reads publicly available product data from dunnesstores.com's public catalogue API, without logging in. You are responsible for how you use the data, including Dunnes Stores' terms, intellectual property in product content and images, and data-protection law where it applies. Not affiliated with Dunnes Stores.
📝 Changelog
- 🔎 2026-10-18: 1.0. Search, category and product-URL modes; one row per product with sizes and colours nested; EAN per variant; per-size sale detection; detail tier charged only when published; free status rows; clean stops at spending limit and timeout; resumable after platform migration.