KVK Scraper - Dutch Company Register (Handelsregister) avatar

KVK Scraper - Dutch Company Register (Handelsregister)

Pricing

from $3.66 / 1,000 company record delivereds

Go to Apify Store
KVK Scraper - Dutch Company Register (Handelsregister)

KVK Scraper - Dutch Company Register (Handelsregister)

Search the Dutch KVK Handelsregister by name, keyword, city or KVK number: KVK and establishment numbers, legal form, trade and former names, registration date, activity, visit and postal address, active status. No login, no API key. Error rows are free.

Pricing

from $3.66 / 1,000 company record delivereds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Categories

Share

KVK Scraper: Dutch company register data by name, keyword, city or KVK number

KVK Scraper searches the Dutch Chamber of Commerce register (KVK Handelsregister) the same way the public search box on kvk.nl does, and returns every matching company, establishment and legal entity as one clean row. No KVK account, no paid API key: you type company names, keywords or 8-digit KVK numbers and get back the KVK number, establishment number, legal form, trade names (current and former), statutory name, registration date, activity description, visit and postal address and whether the business is still registered.

It is used to build B2B lead lists of Dutch companies by sector and city, to verify a supplier or customer before onboarding (KYB), to enrich a CRM with KVK numbers and official addresses, to monitor new registrations in a niche with a schedule, and to feed market research and AI agents with official register data.

At a glance

WhatPrice
Company record deliveredUS$ 4.30 per 1,000 records (US$ 0.0043 each)
Run startUS$ 0.005 per run
  • 3 searches with 100 records each = 300 records = US$ 1.30 plus US$ 0.005 per run.
  • Error rows and duplicates are never charged. maxItems is a hard cap, and a spending limit set on the run stops it cleanly with everything delivered so far.
  • Proxy costs are included in the price.

What you get

  • Search like kvk.nl: company or trade name, a keyword such as bakkerij or software, a street or a city.
  • Lookup by KVK number: one 8-digit number returns the head office, every branch and the legal entity record.
  • Filters: city, legal form (BV, NV, eenmanszaak, VOF, stichting...), head offices only, include deregistered.
  • Official identifiers: KVK number and 12-digit establishment number (vestigingsnummer) on every row.
  • Names: current trade names, former names and the statutory name of the legal entity.
  • Addresses: visit address and postal address split into street, house number, addition, postal code and city, plus a ready-to-print full line.
  • Schedules: onlyNew remembers what earlier runs delivered and returns only new records.

Quick start

Software companies in Amsterdam:

{
"searchQueries": ["software Amsterdam"],
"maxItems": 100
}

Bakeries in Rotterdam that are a BV, head offices only:

{
"searchQueries": ["bakkerij"],
"location": "Rotterdam",
"legalForms": ["BV"],
"mainEstablishmentOnly": true,
"maxItems": 200
}

Check a list of KVK numbers (KYB / CRM enrichment):

{
"kvkNumbers": ["59130547", "17139191"],
"includeInactive": true
}

Daily alert for new registrations matching a keyword:

{
"searchQueries": ["vegan"],
"onlyNew": true,
"maxItems": 0
}

Input

FieldWhat it does
searchQueriesCompany names, trade names or keywords, one per line, as typed in the kvk.nl search box. Each line is one search.
kvkNumbers8-digit KVK numbers. Each returns all register records under that number.
locationKeep only records whose visit or postal address is in this city. The city is also added to the search text so the register returns matches from that place first.
legalFormsKeep only these legal forms: BV, NV, EMZ (eenmanszaak), VOF, CV, MTS (maatschap), ST (stichting), VER (vereniging), COOP, OWM, BRV (foreign).
mainEstablishmentOnlyOnly head offices (hoofdvestiging), without branches and separate legal entity rows (default off).
includeInactiveAlso return records that are no longer registered, including legacy ones (default off).
startUrlsLinks from the kvk.nl search (https://www.kvk.nl/zoeken/?q=...); the search text in the link is used.
maxItemsCap for the whole run, across all searches (default 50; 0 = no cap).
onlyNewDeliver only records not delivered by earlier runs of the same search (for schedules).
proxyConfigurationApify datacenter proxy by default.

query, keyword, companyNames, kvkNumber, city, legalForm, urls and maxResults are accepted too, so inputs written for other KVK tools keep working.

Output

FieldWhat it is
kvkNumber8-digit KVK registration number
establishmentNumber12-digit establishment number (vestigingsnummer); null on the legal entity row
nameName shown in the register for this record
tradeNames, formerNamesCurrent trade names and names used before
statutoryNameStatutory name of the legal entity, when it differs from the trade name
legalForm, legalFormCodeLegal form in Dutch (Besloten Vennootschap, Eenmanszaak...) and its code (BV, EMZ...)
registrationTypeHoofdvestiging (head office), Nevenvestiging (branch) or Rechtspersoon (legal entity)
isMainEstablishmenttrue for the head office
isActivefalse when the record is deregistered
registrationDateDate the establishment was registered (YYYY-MM-DD)
activityDescriptionActivity as registered, in the company's own words
visitAddress, postalAddressstreet, houseNumber, houseNumberAddition, poBox, postalCode, city, country, full
city, postalCodeShortcut to the visit address (or postal address when there is no visit address)
recordSourcecurrent register or legacy record kept from the old register
kvkUrlkvk.nl search link for this KVK number
recordId, sourceQuery, scrapedAtRegister record id, the search that found it, and when

One real row:

{
"type": "company",
"kvkNumber": "59130547",
"establishmentNumber": "000028448480",
"name": "Software House Amsterdam",
"tradeNames": ["Software House Amsterdam"],
"formerNames": [],
"statutoryName": null,
"legalForm": "Eenmanszaak",
"legalFormCode": "EMZ",
"registrationType": "Hoofdvestiging",
"isMainEstablishment": true,
"isActive": true,
"registrationDate": "2013-11-01",
"activityDescription": "Het ontwikkelen en produceren van maatwerksoftware",
"visitAddress": {
"street": "Thérèse Schwartzeplein",
"houseNumber": "27",
"houseNumberAddition": "B",
"postalCode": "1073JL",
"city": "Amsterdam",
"country": "Nederland",
"full": "Thérèse Schwartzeplein 27 B, 1073JL Amsterdam"
},
"postalAddress": null,
"city": "Amsterdam",
"postalCode": "1073JL",
"recordSource": "current",
"kvkUrl": "https://www.kvk.nl/zoeken/?source=all&q=59130547",
"sourceQuery": "software Amsterdam"
}

How the search works

The register search matches the text you send against names, trade names, KVK numbers, streets and places, exactly as the kvk.nl search box does, and returns the best matches first. A keyword such as bakkerij amsterdam therefore finds bakeries in Amsterdam and companies with Amsterdam in the name. Use location when you want the city to be a strict filter on the address. kvk.nl shows up to about 5,000 records per search; split very broad searches by city or legal form to go further.

One company can have several rows: the legal entity (Rechtspersoon), the head office (Hoofdvestiging) and each branch (Nevenvestiging). Turn on mainEstablishmentOnly for one row per company.

Errors you may see

Every error is a row with errorCode and is never charged:

errorCodeMeaning
INVALID_INPUTA field has a wrong value, for example a KVK number without 8 digits or an unknown legal form
INVALID_URLNot a kvk.nl search link with a query or a KVK number
NO_RESULTSThe register has no record for this search and filters
BLOCKEDkvk.nl refused every attempt for this search; run it again in a few minutes
UNEXPECTEDSomething else stopped the run; nothing more was charged

Integrations, scheduling and AI agents

  • Schedule a search daily or weekly in Apify schedules with onlyNew on, and get only the companies registered since the last run.
  • Export as JSON, CSV, Excel or XML, or read the dataset from the Apify API.
  • Connect it to Make, n8n, Zapier, HubSpot or Google Sheets through Apify integrations.
  • AI agents: call it as a tool through the Apify MCP server in Claude, ChatGPT, Cursor or any MCP client, for example "find every BV with software in the name in Utrecht and give me their KVK numbers and addresses".

FAQ

Do I need a KVK account or API key? No. The Actor uses the same public search as kvk.nl, without login.

Why not the official KVK API? The official API needs a paid subscription and a key per user. This Actor needs neither, charges only for records delivered, and returns the same search fields the public site shows.

Does it return directors, shareholders or UBOs? No. Only company data shown in the public search: identifiers, names, legal form, activity, addresses and status. Officers, UBO data, extracts and annual accounts are sold by KVK itself and are not collected.

Does it return phone numbers, emails or websites? No. The public register search does not show them.

What is the difference between the KVK number and the establishment number? The KVK number identifies the company (or legal entity). The establishment number identifies one location of it; a company with three branches has one KVK number and up to four establishment numbers.

Can I look up thousands of KVK numbers? Yes, put them in kvkNumbers.

Is it legal? The Actor reads the public register search only and returns company data, no personal contact data. You are responsible for how you use the data under the laws that apply to you, including the GDPR when a sole proprietorship carries a person's name.

Something broke or a field is missing? Open an issue on the Actor page; issues are answered within a day.

Limitations

  • About 5,000 records per search, the same depth as the kvk.nl search. Split broad searches.
  • SBI codes, number of employees, officers and UBOs are not in the public search and are not returned.
  • registrationDate is missing on a few legal entity rows, as on kvk.nl.
  • Data is the register as of the moment of the run.

Changelog

  • 16 Oct 2026: first version: keyword, city and KVK number search, legal form and head office filters, deregistered records, visit and postal addresses, onlyNew for schedules.