nvNeuralVerge
Corporate registry

Netherlands Company Registry (KVK) API and MCP — Company Profile by KVK Number

Send a KVK number and get the company as structured JSON: name, status, legal form, registration date, address, activity description, current and former legal names, trade names and the establishments registered under it.

You send
a KVK number, or the link to the company page
You get back
status, legal form, registration date, address, activity, current and former names, trade names and establishments
Coverage
Netherlands — entities on KVK Handelsregister.
Price
5 pts — $5 per 1,000
Charged only when the record resolves. A lookup that finds nothing is not billed.
Comparison

Ways to get this data

Three approaches teams use today, and where each one runs into trouble.

ApproachWhat it takesCostTrade-off
KVK Handelsregister directlyOpen KVK Handelsregister and read the recordUsually free, sometimes per-documentA different interface, language and data shape for every country you add
Collecting it yourselfBuild and host a crawler per register, then keep each one aliveInfrastructure and maintenanceRegisters change their pages without warning, and nobody is on the hook when yours breaks
NeuralVergeOne request, the same shape as every other source in the catalog$5 per 1,000, misses not billedCovers Netherlands — other countries are separate sources with the same request format
Response

What you get back

Every field in the example response below.

FieldTypeDescription
session_idstringId of this run, for tracing.
kindstringSource type of the response.
companystringThe identifier you sent.
company_idstringThe identifier as the register uses it.
humanstringReadable summary of the record.
total_pointsnumberPoints charged for the run.
machine.company.registration_numberstringKVK number.
machine.company.namestringCompany name.
machine.company.statusstringRegistration status, e.g. Ingeschreven (registered).
machine.company.addressstringVisiting address.
machine.company.urlstringLink to the company search page on the register.
machine.company.company_typestringLegal form.
machine.company.incorporation_datestringRegistration date (YYYY-MM-DD).
machine.company.activitystringActivity description in Dutch, shortened in the sample.
machine.company.requested_idstringThe identifier you sent.
machine.company.legal_form_codestringShort code for the legal form, e.g. NV.
machine.company.statutory_namestringName as in the articles.
machine.company.current_legal_names[]arrayCurrent legal names.
machine.company.former_legal_names[]arrayFormer legal names.
machine.company.trade_names[]arrayTrade names.
machine.company.former_trade_names[]arrayFormer trade names.
machine.company.postal_addressnullEmpty in the sample.
machine.company.head_officeobjectHead office: branch_number, registration_type, name, status, address, registration_date, activity, trade_names and former_trade_names.
machine.company.registrations_totalnumberNumber of registrations.
machine.company.establishments_totalnumberTotal establishments.
machine.company.establishments_activenumberActive establishments.
machine.company.establishments_listednumberEstablishments included in the list.
machine.company.establishments[]arrayEstablishments, same shape as head_office, with registration_type such as Hoofdvestiging (head office) or Nevenvestiging (branch).
machine.company.source_rows_fetchednumberRegister rows read to build the record.
machine.blockedbooleanWhether the register refused the request.
machine.pages_openednumberRegister pages read for the run.
machine.proxy_traffic_bytesnumberSize of the data transferred for the run, in bytes.
Response

Example response

A real response, as returned.

{
  "session_id": "11111111-1111-1111-1111-111111111111",
  "kind": "nl_company",
  "company": "17001910",
  "company_id": "17001910",
  "human": "# Netherlands — KVK Handelsregister — company\n\n- **Number:** 17001910\n- **Pages opened:** 1\n- **Proxy traffic:** 5.5 KB\n- **Name:** Koninklijke Philips N.V.\n- **Status:** Ingeschreven\n- **Type:** Naamloze Vennootschap\n- **Registered:** 1912-09-11\n- **Address:** High Tech Campus 34, 5656AE Eindhoven",
  "machine": {
    "company": {
      "registration_number": "17001910",
      "name": "Koninklijke Philips N.V.",
      "status": "Ingeschreven",
      "address": "High Tech Campus 34, 5656AE Eindhoven",
      "url": "https://www.kvk.nl/zoeken/?source=handelsregister&q=17001910",
      "company_type": "Naamloze Vennootschap",
      "incorporation_date": "1912-09-11",
      "activity": "Het oprichten van, het deelnemen in en het beheren en financieren van rechtspersonen, vennootschappen en andere rechtsvormen ten dienste van fabricage en verhandeling van elektrische, elektronische, m",
      "requested_id": "17001910",
      "legal_form_code": "NV",
      "statutory_name": "Koninklijke Philips N.V.",
      "current_legal_names": [
        "Koninklijke Philips N.V."
      ],
      "former_legal_names": [
        "Koninklijke Philips Electronics N.V.",
        "PHILIPS ELECTRONICS N.V."
      ],
      "trade_names": [
        "Koninklijke Philips N.V.",
        "Royal Philips"
      ],
      "former_trade_names": [
        "\"PHILIPS' GLOEILAMPENFABRIEKEN\"",
        "\"PHILIPS INDUSTRIES\""
      ],
      "postal_address": null,
      "head_office": {
        "branch_number": "000064349039",
        "registration_type": "Hoofdvestiging",
        "name": "Koninklijke Philips N.V.",
        "status": "Ingeschreven",
        "address": "High Tech Campus 34, 5656AE Eindhoven",
        "postal_address": null,
        "registration_date": "1912-09-11",
        "activity": "Het oprichten van, het deelnemen in en het beheren en financieren van rechtspersonen, vennootschappen en andere rechtsvormen ten dienste van fabricage en verhandeling van elektrische, elektronische, m",
        "trade_names": [
          "Koninklijke Philips N.V.",
          "Royal Philips"
        ],
        "former_trade_names": []
      },
      "registrations_total": 6,
      "establishments_total": 5,
      "establishments_active": 4,
      "establishments_listed": 5,
      "establishments": [
        {
          "branch_number": "000064349039",
          "registration_type": "Hoofdvestiging",
          "name": "Koninklijke Philips N.V.",
          "status": "Ingeschreven",
          "address": "High Tech Campus 34, 5656AE Eindhoven",
          "postal_address": null,
          "registration_date": "1912-09-11",
          "activity": "Het oprichten van, het deelnemen in en het beheren en financieren van rechtspersonen, vennootschappen en andere rechtsvormen ten dienste van fabricage en verhandeling van elektrische, elektronische, m",
          "trade_names": [
            "Koninklijke Philips N.V.",
            "Royal Philips"
          ],
          "former_trade_names": []
        },
        {
          "branch_number": "000006060609",
          "registration_type": "Nevenvestiging",
          "name": "Koninklijke Philips N.V.",
          "status": "Ingeschreven",
          "address": "High Tech Campus 52, 5656AG Eindhoven",
          "postal_address": null,
          "registration_date": "1912-09-11",
          "activity": "Het oprichten van, het deelnemen in en het beheren en financieren van rechtspersonen, vennootschappen en andere rechtsvormen ten dienste van fabricage en verhandeling van elektrische, elektronische, m",
          "trade_names": [
            "Koninklijke Philips N.V.",
            "Royal Philips"
          ],
          "former_trade_names": [
            "\"PHILIPS' GLOEILAMPENFABRIEKEN\"",
            "\"PHILIPS INDUSTRIES\""
          ]
        }
      ],
      "source_rows_fetched": 6
    },
    "blocked": false,
    "pages_opened": 1,
    "proxy_traffic_bytes": 5596
  },
  "total_points": 5
}
Integration

How to run it

The same lookup works from the app, the API, or as a tool an agent can call mid-task.

One company per request. Pass the registration number or the link to the record on the register.

curl -X POST https://api.neuralverge.ai/functions/v1/run-nl-companies \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"company":"17001910"}'
Use cases

What teams use it for

Where this field shows up in an actual workflow.

Dutch counterparty checks

Confirm a company is registered, its legal form and its visiting address.

Name-history matching

Match an invoice or contract that carries a former legal or trade name to the current entity.

Branch mapping

Separate the head office from branches, and count active ones.

KYC enrichment

Fill legal form, registration date and trade names from a KVK number.

Coverage & limits

Coverage, freshness and limits

What this source covers, how fresh it is, and where it stops.

Coverage

Netherlands — entities on KVK Handelsregister.

Freshness

Read at request time, so the answer reflects the register as it stands when you ask.

Handling

KVK Handelsregister is a public register. Every response carries the source URL it was read from and a session id you can trace.

What it will not do
  • —The activity text in the sample is cut short, so treat it as a description, not a full statement.
  • —Postal address is null in the sample.
  • —Statuses and activity text are in Dutch as published.
FAQ

Questions, answered

The 8-digit KVK number, such as 17001910, or the link to the company page.

Related

Related sources

Try netherlands company on your own data

One request format across every source in the catalog.

Get started