Bol.com Product Search, Price & Stock Extractor avatar

Bol.com Product Search, Price & Stock Extractor

Pricing

from $0.49 / 1,000 results

Go to Apify Store
Bol.com Product Search, Price & Stock Extractor

Bol.com Product Search, Price & Stock Extractor

Searches Bol.com by keyword, category, EAN, or promotions page and returns price, rating, stock status, and seller for each product, with no login required.

Pricing

from $0.49 / 1,000 results

Rating

0.0

(0)

Developer

Dataspryva

Dataspryva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Collect live product data from Bol.com, the largest online retailer in the Netherlands and Belgium. Search by keyword, browse a category or brand, open a product by URL, EAN barcode, or product ID, or read the current promotions feed. Every record is real data from the public shop — prices, list prices, stock, sellers, ratings, images, and optional specifications and seller offers. No login, API key, or proxy setup is needed.

What this actor does

  • Search one or more keywords with price, rating, condition, stock, and sponsored-product filters.
  • Browse category, brand, series, or deals pages, with deep pagination.
  • Look up products by direct URL, EAN-8/EAN-13, or Bol.com product ID.
  • Read promotions from the deals hub and its category deals pages.
  • Enrich on demand: add EAN, full description, specifications, all images, rating distribution, recent reviews, and the first page of seller offers.
  • Supports the Netherlands and Belgium marketplaces in Dutch and French.
  • Empty fields are omitted from each record rather than written as null.

Output per product

  • productId — Bol.com product identifier
  • ean — EAN/GTIN barcode when the product page publishes one (details mode)
  • title, shortDescription, description
  • brand
  • price, currency
  • listPrice — reference price when Bol.com shows one above the current price
  • discountAmount, discountPercent
  • rating, reviewCount
  • ratingDistribution — star counts when details are fetched
  • recentReviews — up to six recent reviews when details are fetched
  • imageUrl, images[]
  • productUrl
  • seller, sellerId, sellerRating, soldByBol
  • inStock, availability, condition
  • delivery, deliveryDate, isScarce
  • isSponsored, sponsor
  • promotionLabels[]
  • categories[]
  • specifications — grouped key/value specifications when details are fetched
  • offers[], offerCount — first page of seller offers, and that page's count, when offers are enabled
  • marketplace, language, sourceQuery
  • scrapedAt — collection timestamp

Input

FieldTypeDefaultDescription
modestring (select)searchsearch, productDetails, categoryBrowse, or promotions.
searchQueriesarray["laptop"]Keywords for search.
productUrlsarray[]Product URLs, EANs, or product IDs for productDetails.
categoryUrlsarray[]Category, brand, series, or deals URLs, or category IDs, for categoryBrowse.
marketplacestring (select)nlnl or be.
languagestring (select)nlnl or fr.
sortBystring (select)RELEVANCERELEVANCE, POPULARITY, PRICE_ASC, PRICE_DESC, RATING_ASC, NEW, or WISHLIST. Price sorts use the emitted numeric price; RATING_ASC follows Bol's rating score.
minPriceinteger–Minimum price in EUR.
maxPriceinteger–Maximum price in EUR.
minRatingnumber–Minimum average rating, 0-5.
conditionstring (select)anyany, new, refurbished, or secondhand.
inStockOnlybooleanfalseKeep only products currently in stock.
includeSponsoredbooleantrueKeep sponsored search results.
includeDetailsbooleanfalseFetch product pages for EAN, description, specifications, images, and reviews.
includeOffersbooleanfalseFetch the first page of seller offers for each product.
maxItemsinteger20Overall product cap (1-10,000).
maxPagesinteger0Page limit per query/listing; 0 uses the source's own limit.

Example: search with filters

{
"mode": "search",
"searchQueries": ["koptelefoon", "laptop"],
"marketplace": "nl",
"language": "nl",
"minPrice": 50,
"maxPrice": 300,
"minRating": 4,
"condition": "new",
"inStockOnly": true,
"sortBy": "PRICE_ASC",
"includeDetails": true,
"maxItems": 40
}

Example: browse a category or brand

{
"mode": "categoryBrowse",
"categoryUrls": [
"https://www.bol.com/nl/nl/l/laptops/4770/",
"https://www.bol.com/be/nl/pb/hp/4997239/"
],
"marketplace": "be",
"language": "nl",
"sortBy": "POPULARITY",
"maxItems": 100
}

Example: product lookup by EAN or URL

{
"mode": "productDetails",
"productUrls": ["0199251730818", "https://www.bol.com/nl/nl/p/hp-omnibook-5-16-ba1751nd-intel-core-i5-i5-1334u-laptop-406-cm-2k-16-gb-lpddr5x-sdram-1-tb-ssd-wi-fi-6-windows-11-home-zilver/9300000230842700/"],
"includeOffers": true,
"maxItems": 10
}

Example: current promotions

{
"mode": "promotions",
"marketplace": "nl",
"language": "nl",
"maxItems": 30
}

Use cases

  • Price monitoring — track current and reference prices for a product set.
  • Assortment research — pull a category, brand, or search niche into a clean dataset.
  • EAN catalog enrichment — resolve barcodes to titles, brands, images, and specifications.
  • Stock and seller tracking — see availability, delivery promises, and who is selling each item.
  • Promotion analysis — collect the current deals feed and its category offers.

FAQ

Where does the data come from?

It is read from Bol.com's publicly accessible product, search, category, and deals pages at run time. The actor is not affiliated with Bol.com.

Can I use it for both the Netherlands and Belgium?

Yes. Set marketplace to nl or be. Both Dutch and French shop languages are supported.

Why is ean missing from my search results?

Search result cards do not publish barcodes. Enable includeDetails to visit each product page, where the EAN is read when Bol.com publishes it.

How many products can one search return?

Bol.com caps a single keyword result list at 10 pages (typically 24-30 products per page, about 250-270 products). For larger runs, the actor automatically splits broad searches into narrower category slices; a category or brand page also goes much deeper.

Why are some fields absent from a record?

Bol.com does not publish every field for every product — for example, marketplace items may have no EAN or specifications, and new products may have no reviews yet. Absent values are omitted instead of written as null.

How are results sorted?

RELEVANCE, POPULARITY, NEW, and WISHLIST follow Bol.com's own ordering. RATING_ASC follows Bol.com's rating score, which can differ from the visible average rating. PRICE_ASC and PRICE_DESC are sorted on the emitted numeric price after duplicate products are removed.

Are sponsored products included?

Yes by default, with isSponsored and sponsor set. Turn includeSponsored off to remove them.

Are all seller offers returned?

Bol.com paginates its offers page. The actor returns the first page of offers for each product (currently up to 10) and offerCount is the count on that page, not the total across all pages.

How current are prices and stock?

Each run reads the live pages, so prices, delivery promises, and availability reflect the moment of collection.

Do I need a proxy or an account?

No. The actor connects automatically; you do not configure a proxy, cookie, login, or API key.

Why is the full review list not included?

Bol.com's product pages expose a rating summary and a short sample of recent reviews. The actor returns the rating distribution and up to six recent reviews when details are enabled.