Easy Chile Scraper - Hardware, Home & Construction Prices
Pricing
from $15.71 / 1,000 product records
Easy Chile Scraper - Hardware, Home & Construction Prices
Scrape Easy.cl, Chile's hardware, home and construction retailer: product name, brand, category, EAN, list and offer price in CLP, live stock, seller and image for every SKU found by search term. Export CSV, Excel, JSON. No login or API key. 50 products per request.
Pricing
from $15.71 / 1,000 product records
Rating
0.0
(0)
Developer
RecordsData
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Easy Chile Scraper - Hardware, Home & Construction Prices
Easy Chile Scraper extracts product data from Easy.cl, Chile's hardware, home and construction retailer: name, brand, category path, EAN, list price, offer price in CLP, discount percent, card promotions with their conditions, final Cencosud and CencoPay card prices when a promotion exists, installments, live stock and specifications. Search by Spanish term, category, brand or product link, sort by price or biggest discount, and export to CSV, Excel or JSON. Monitor mode returns only new or changed products. No login needed. Cost: $0.02 per product on the free tier.
🔧 What does Easy Chile Scraper do?
Easy Chile Scraper reads Easy.cl through the VTEX catalog API that powers the store, so prices and stock are the ones the retailer serves, not parsed from HTML. Each search returns one row per SKU, 50 per request, up to your per-search limit. A search can be a term, category, brand or any mix, or you can paste product links or ids. On Apify you also get scheduling, API access, webhooks and export to CSV, Excel, JSON, XML or HTML.
✨ What can Easy Chile Scraper do?
- Sort at the source: relevance, price, name, newest, best sellers or biggest discount, applied before your limit.
- Discounts:
onSale,discountPercentanddiscountAmounton every row;onlyDiscountsorminDiscountPercentkeep only deals. - Card prices and promotions:
cencosudCardPrice,cencopayPriceandcardDiscountPercentgive the final price with that card when a promotion exists, matching the easy.cl page to the peso on the SKUs we compared.promotionslists each offer with name, payment method ids, percent and minimum quantity. Installment fields show the longest interest-free plan. - Product links and ids:
productUrlsreturns every variant (SKU) of a product. - Monitor mode: with
onlyChanged, a run delivers a SKU only when it is new or its price, list price or availability changed, and unchanged SKUs are free.
📦 What data can you extract from Easy.cl?
Each row has up to 52 keys. Keys the source does not provide are left out of the row, not filled with null.
| Group | Fields |
|---|---|
| Identity | recordType, searchTerm, changeType, position, productId, skuId, ean, referenceId, productReference |
| Product | productName, brand, brandId, color, variations, description, specifications, warranty, releaseDate, collections |
| Category | category, categoryPath, categories, categoryId, categoryIds |
| Price in CLP | currency, listPrice, price, onSale, discountPercent, discountAmount, measurementUnit, unitMultiplier |
| Promotions | promotions, hasCardPromotion, cencosudCardPrice, cencopayPrice, cardDiscountPercent, appliedPromotions, maxInstallments, installmentValue, installmentMethod |
| Stock and seller | availableQuantity, isAvailable, sellerName, isMarketplace |
| Links | productUrl (public easy.cl link), imageUrl, images (up to 10) |
| Run | scrapedAt, error, errorType, hint |
position is Easy.cl's own rank for that search. changeType (new or changed) appears only in monitor mode. description, specifications and extra images are skipped when includeDetails is off.
Card prices: the percent applies to the list price (the struck-through Normal price), not the offer price. A card price shows only when it is below the offer price: in a deal-biased scan of 10,329 SKUs about 1.5 percent had one (Cencosud 147, CencoPay 7), and 7 of 45 rows in a small random cloud batch. Price-table promotions (PPCAT) give no card price, because easy.cl shows none.
Not available: ratings and review counts (not in the Easy.cl catalog data).
🧾 What does the output look like?
Illustrative row for taladro: identity, price and stock from a real run, discount values are examples.
{"recordType": "product-record","searchTerm": "taladro","position": 3,"productId": "1417303","skuId": "1522815","productName": "Prensa De Taladro Doble Soporte Pedestal Porta Taladro Banco","brand": "EshopAngie","category": "Fijaciones y Adhesivos","productUrl": "https://www.easy.cl/prensa-de-taladro-doble-soporte-pedestal-porta-taladro-banco-mk5n2jvjsp/p","currency": "CLP","listPrice": 18990,"price": 12990,"onSale": true,"discountPercent": 31.6,"availableQuantity": 100,"scrapedAt": "2026-10-09T12:00:00.000Z"}
💰 How much does it cost to scrape Easy.cl?
Pay per event: you pay only for products delivered. Prices per product, by Apify plan:
| Event | FREE | BRONZE | SILVER | GOLD and above |
|---|---|---|---|---|
| Product record (one SKU) | $0.02 | $0.01857 | $0.01714 | $0.01571 |
Worked examples (free tier, then Gold):
- 10 best deals in a category (
sortBy: biggestDiscount, limit 10): 10 x $0.02 = $0.20, or $0.16 on Gold. - 1,000 tool products: 1,000 x $0.02 = $20.00, or $15.71 on Gold.
- A scheduled monitor run where nothing changed: 0 products, nothing charged.
There are no extra events. Rows without an id or name, duplicate SKUs, empty searches, unchanged SKUs in monitor mode and failed runs are not charged. A maximum cost per run stops the actor cleanly. Free plan accounts get 10 results per search.
🚀 How to scrape Easy.cl in 3 steps
- In the Input tab, add Spanish terms, categories, brands or product links.
- Pick Sort by, filters and the limit.
- Click Run, then download JSON, CSV or Excel.
⚙️ Input
| Field | Type | Default | Description |
|---|---|---|---|
searchTerms | array | [] | Spanish keywords (prefill martillo) |
categories | array | [] | Category name, path, id or easy.cl URL |
brands | array | [] | Brand names such as Bosch or Makita |
productUrls | array | [] | easy.cl product links (end in /p) or numeric product ids |
maxItemsPerSearch | integer | 50 | SKUs per search, 1 to 2,500 (10 on free) |
sortBy | select | relevance | relevance, priceAsc, priceDesc, nameAsc, nameDesc, newest, bestSellers, biggestDiscount |
minPrice / maxPrice | integer | none | Price range in CLP, applied before the limit |
onlyDiscounts | boolean | false | Only products priced below list price |
minDiscountPercent | number | none | Minimum discount off list price, 0 to 100 |
onlyInStock | boolean | false | Skip products with no units available |
includeDetails | boolean | true | Description, specifications and up to 10 images |
onlyChanged | boolean | false | Monitor mode: only new or changed SKUs |
stateKey | string | derived | Name of the monitor memory |
resetSeen | boolean | false | Forget previous results |
Limits: 100 terms, 50 categories, 50 brands, 500 product links, 1,000 searches per run.
{"searchTerms": ["taladro"],"sortBy": "biggestDiscount","minDiscountPercent": 20,"onlyInStock": true,"maxItemsPerSearch": 10}
📊 How does it compare to other Easy.cl scrapers?
Rival pages read on 2026-10-10. "Not stated" means the rival page does not say.
| This actor | scraperschile/easy | sheshinmcfly/sodimac-easy-price-scraper | |
|---|---|---|---|
| Price per 1,000 | $15.71 to $20 | from $3.00 | from $2.00 |
| Sort options | 8, including biggest discount | 6 | Not stated |
| Filters | Category, brand, price, discount, stock | None listed | Discounts only, store choice |
| Card prices | Cencosud and CencoPay, when a promotion exists | Cencosud and CencoPay, null if none | CMR price, null for Easy |
| Monitor mode (changes only) | Yes, unchanged not charged | Not listed | Not stated |
| Ratings and reviews | No | When Easy sends them | Not stated |
| Stores covered | Easy.cl | Easy.cl | Easy.cl and Sodimac |
Both rivals are 5 to 10 times cheaper per product. scraperschile also returns raw backend blobs and ratings when present, and sheshinmcfly covers Sodimac in the same run. This actor adds filters, specifications, variants, structured promotions and change monitoring. If you only need cheap bulk rows or Sodimac, pick a rival. We have not tested their output.
🎯 What can you use Easy.cl data for?
- Price and stock monitoring: schedule
onlyChangedruns on a category; keepskuIdas the stable key. - Deal finding: sort by biggest discount.
- Benchmarking: match Easy.cl to other Chilean retailers by EAN or name.
🔌 How do you use Easy Chile Scraper via API?
curl -X POST "https://api.apify.com/v2/acts/RecordsData~easy-chile-hardware-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchTerms":["martillo"],"sortBy":"priceAsc","maxItemsPerSearch":10}'
It also works with the Apify client, Zapier, Make, n8n and Google Sheets.
🤖 Easy Chile Scraper MCP server for AI agents
AI agents can call this Actor through the Apify MCP server at https://mcp.apify.com?tools=RecordsData/easy-chile-hardware-scraper, which loads only this Actor. Add it to your MCP client (Claude Desktop, Cursor, VS Code):
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=RecordsData/easy-chile-hardware-scraper"}}}
Example agent prompt:
Use the Easy Chile Scraper to find the 10 biggest discounts on "taladro" at Easy.cl, in stock only, and list name, list price, offer price and discount percent in CLP.
Tool description: Search Easy.cl, Chile's hardware and construction retailer, by term, category, brand or product link. Returns one row per SKU with CLP prices, discount percent, card promotions, stock, specifications and an optional new-or-changed filter. Free plan accounts are capped at 10 results per search.
⚖️ Is it legal to scrape Easy.cl?
The actor reads public catalog data (prices, stock, descriptions) that any visitor can see and collects no personal data. You are responsible for using it in line with Easy.cl's terms and applicable law.
❓ FAQ
Why did I get 0 results?
The search matched no products on Easy.cl, or your filters (category, brand, discount, price range) left none. The run still succeeds with a "No products found" message and nothing is charged. Try a broader Spanish term, such as "martillo" instead of "martillo carpintero 16 oz", or remove a filter.
Why did the run fail?
A run fails only when the Easy.cl catalog API errors or returns an unexpected response and no products were delivered. Nothing is charged. It retries a failed page up to five times, and three failed searches in a row end the run with a clear message. Run it again later.
Which language should search terms be in?
Spanish. Easy.cl is a Chilean hardware and home store, so terms such as "taladro", "tornillo" or "pintura" return relevant products, while an English word such as "drill" returns unrelated results. Short nouns work best, and keeping maxItemsPerSearch low while testing saves money.
Are prices in Chilean pesos?
Yes. The price and listPrice fields are in Chilean pesos (CLP), as served by Easy.cl. The price field is the current offer price and listPrice the original price. When both are equal, the product has no markdown and onSale is false.
How many products can I get per search?
Up to your maxItemsPerSearch value for each search, collected in pages of 50 products. The default is 50. Easy.cl serves at most the first 2,500 results of one search, and free plan accounts are capped at 10. To reach more, split a broad topic by category, brand or price range.
Does it need a proxy?
No. The actor reads the Easy.cl VTEX catalog API directly, so you do not need to configure a proxy. It adds a short delay between pages of 50 products to stay polite to the store. You only pay the per-product price.
How do I limit what I spend?
Lower maxItemsPerSearch or set a maximum cost per run in the run options. The Actor stops cleanly once the limit is reached. On the free tier each product costs $0.02, and duplicate SKUs, empty searches, unchanged SKUs in monitor mode and failed runs are not charged.
What happens if I send an empty or invalid input?
The actor needs at least one search term, category, brand or product link. With none, the run ends as succeeded with a single free error row (errorType: invalid-input) that explains the problem, and nothing is charged. Blank strings count as empty.
Can I schedule it?
Yes. Use Apify schedules to run it daily or weekly and send results to a webhook or spreadsheet. For price monitoring, turn on onlyChanged so each run delivers only SKUs whose price, list price or availability changed, and keep skuId as the stable key between runs.
How do I get the biggest discounts or sort by price?
Set sortBy to biggestDiscount, priceAsc or any other option. Easy.cl sorts before your limit, so a limit of 10 with biggestDiscount returns the 10 best deals. To keep only discounted items, add onlyDiscounts or minDiscountPercent, for example 30. Both filters run in the actor, which keeps paging until it has enough matches.
How does monitor mode work?
With onlyChanged on, the actor remembers every SKU it delivered in a named store in your account (stateKey names it). A later run returns a SKU only when it is new or its price, list price or availability changed, with changeType new or changed. Unchanged SKUs are skipped and not charged. Use resetSeen to start over.
Does it return card prices or only card promotions?
Both. When a product has a card promotion, you get cencosudCardPrice and cencopayPrice, the final price with that card, plus cardDiscountPercent. A card price appears only if it is below the offer price, and in a deal-biased scan about 1.5 percent of SKUs had one, so most rows have none. The promotions field lists each offer with conditions.
Does it return ratings or reviews?
No. The Easy.cl catalog data used by this actor carries no rating or review count, so those fields do not exist in the output. Everything else, including specifications, warranty, variants, seller and card prices, is included. A rival listing says it fills ratings only when Easy sends them.
Why is the product link different from before?
The productUrl field now holds the public easy.cl product link, ending in /p, which opens the product page. Earlier versions returned a VTEX backend link that redirects to a login page, so replace links saved from old runs. It is still one link per SKU.
Why did a run stop early with a status message?
A run stops when 150 pages or 300 seconds pass without a delivered row, which happens with very restrictive filters on a huge catalog. Rows already delivered stay in the dataset and are charged; the idle part is free. Loosen the filters or split the search by category.
What is the 2,500 result limit?
Easy.cl serves at most the first 2,500 results of any single search, so the actor stops there and says so in the log. To collect a larger catalog, run several narrower searches, for example one per category, brand or price range with minPrice and maxPrice.
🧰 Want more e-commerce data?
- PriceCharting Scraper: collectibles and game prices.
- Epic Games Store Scraper: free games and product data.
💬 Support
Bug or custom field? Use the Issues tab or write to contact.punkrecordsdata@gmail.com.
Last updated: 2026-10-11