nvNeuralVerge
Corporate registry

Belgium Company Registry (KBO/BCE) API and MCP — Company Profile by Enterprise Number

Send a Belgian enterprise number and get the company as structured JSON: name, status, legal form, start date, address, activities with codes, directors with their start dates, phone and website, capital, financial year end, and establishment units.

You send
a Belgian enterprise number, or the link to the company page
You get back
status, legal form, start date, address, activities, directors, contact details, capital, links between entities and establishment units
Coverage
Belgium — entities on KBO/BCE.
Price
10 pts — $10 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
KBO/BCE directlyOpen KBO/BCE 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$10 per 1,000, misses not billedCovers Belgium — 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_numberstringEnterprise number, dotted.
machine.company.namestringCompany name.
machine.company.statusstringStatus, e.g. Active.
machine.company.addressstringRegistered office address.
machine.company.urlstringLink to the company page on the register.
machine.company.company_typestringLegal form.
machine.company.incorporation_datestringStart date (YYYY-MM-DD).
machine.company.legal_situationstringLegal situation, e.g. Normal situation.
machine.company.entity_typestringEntity type, e.g. Legal person.
machine.company.other_names[]arrayOther names; empty in the sample.
machine.company.abbreviationnullEmpty in the sample.
machine.company.commercial_namenullEmpty in the sample.
machine.company.phonestringPhone number.
machine.company.faxnullEmpty in the sample.
machine.company.emailnullEmpty in the sample.
machine.company.websitestringWebsite.
machine.company.establishment_unitsnumberNumber of establishment units.
machine.company.capitalstringCapital as displayed.
machine.company.annual_assemblystringMonth of the annual assembly.
machine.company.financial_year_endstringFinancial year end.
machine.company.activitystringMain activities as one text line.
machine.company.activities[]arrayActivities: version, code and description.
machine.company.directors[]arrayDirectors: role, name and since date.
machine.company.entrepreneurial_skills[]arrayEntrepreneurial skills: name, value and since date.
machine.company.characteristics[]arrayCharacteristics, such as VAT liability, with since date.
machine.company.authorisations[]arrayAuthorisations: name, url and since.
machine.company.activities_all[]arrayActivities by type (e.g. VAT) with version, code, description and since date.
machine.company.links_between_entities[]arrayLinked entities: direction, enterprise_number, name, relation, since and url.
machine.company.external_links[]arrayLinks to related public services: name and url.
machine.company.establishments[]arrayEstablishment units: number, status, start_date, name, address, address_since and url.
machine.company.establishments_totalnumberTotal establishment units.
machine.company.establishments_truncatedbooleanTrue when the list holds fewer units than establishments_total.
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": "be_companies",
  "company": "0202.239.951",
  "company_id": "0202239951",
  "human": "# Belgium — KBO/BCE — company\n\n- **Number:** 0202239951\n- **Pages opened:** 2\n- **Proxy traffic:** 39.8 KB\n- **Name:** PROXIMUS\n- **Status:** Active\n- **Type:** Public limited company\n- **Registered:** 1930-07-19\n- **Address:** Boulevard du Roi AlbertII 27, 1030 Schaerbeek",
  "machine": {
    "company": {
      "registration_number": "0202.239.951",
      "name": "PROXIMUS",
      "status": "Active",
      "address": "Boulevard du Roi AlbertII 27, 1030 Schaerbeek",
      "url": "https://kbopub.economie.fgov.be/kbopub/toonondernemingps.html?lang=en&ondernemingsnummer=0202239951",
      "company_type": "Public limited company",
      "incorporation_date": "1930-07-19",
      "legal_situation": "Normal situation",
      "entity_type": "Legal person",
      "other_names": [],
      "abbreviation": null,
      "commercial_name": null,
      "phone": "022024111",
      "fax": null,
      "email": null,
      "website": "www.proximus.com",
      "establishment_units": 186,
      "capital": "1.000.000.000,00 EUR",
      "annual_assembly": "April",
      "financial_year_end": "31 December",
      "activity": "61.100 - Wired, wireless, and satellite telecommunication activities; 26.300 - Manufacture of communication equipment",
      "activities": [
        {
          "version": "2025",
          "code": "61.100",
          "description": "Wired, wireless, and satellite telecommunication activities"
        },
        {
          "version": "2025",
          "code": "26.300",
          "description": "Manufacture of communication equipment"
        }
      ],
      "directors": [
        {
          "role": "Director",
          "name": "Attout, Emmanuèle",
          "since": "2026-04-15"
        },
        {
          "role": "Director",
          "name": "Basyn, Caroline",
          "since": "2024-04-17"
        }
      ],
      "entrepreneurial_skills": [
        {
          "name": "Non SME dispensation",
          "value": "Dispensation",
          "since": "2017-10-12"
        }
      ],
      "characteristics": [
        {
          "name": "Employer National Social Security Office",
          "since": "2002-07-01"
        },
        {
          "name": "Subject to VAT",
          "since": "1971-01-01"
        }
      ],
      "authorisations": [
        {
          "name": "License as a contractor",
          "url": "https://weblist.economie.fgov.be/en/recognized-contractor/0202239951",
          "since": null
        }
      ],
      "activities_all": [
        {
          "type": "VAT",
          "version": "2025",
          "code": "61.100",
          "description": "Wired, wireless, and satellite telecommunication activities",
          "since": "2025-01-01"
        },
        {
          "type": "VAT",
          "version": "2025",
          "code": "26.300",
          "description": "Manufacture of communication equipment",
          "since": "2025-01-01"
        }
      ],
      "links_between_entities": [
        {
          "direction": "incoming",
          "enterprise_number": "0442257642",
          "name": "TELINDUS",
          "relation": "has been absorbed by this entity",
          "since": "2010-01-04",
          "url": "https://kbopub.economie.fgov.be/kbopub/toonondernemingps.html?lang=en&ondernemingsnummer=0442257642"
        },
        {
          "direction": "incoming",
          "enterprise_number": "0453918428",
          "name": "BELGACOM MOBILE",
          "relation": "has been absorbed by this entity",
          "since": "2010-01-04",
          "url": "https://kbopub.economie.fgov.be/kbopub/toonondernemingps.html?lang=en&ondernemingsnummer=0453918428"
        }
      ],
      "external_links": [
        {
          "name": "HealthPro - Register of active healthcare professionals",
          "url": "https://apps.health.belgium.be/healthpro/home"
        },
        {
          "name": "Publications in National Gazette",
          "url": "https://www.ejustice.just.fgov.be/cgi_tsv/list.pl?language=fr&btw=0202239951&page=1&view_numac=0202239951#SUM"
        }
      ],
      "establishments": [
        {
          "number": "2.102.964.255",
          "status": "Active",
          "start_date": "1995-01-11",
          "name": "Proximus",
          "address": "Rue du Progrès 55, 1210 Saint-Josse-ten-Noode",
          "address_since": "2023-11-20",
          "url": "https://kbopub.economie.fgov.be/kbopub/toonvestigingps.html?lang=en&vestigingsnummer=2102964255"
        },
        {
          "number": "2.102.964.651",
          "status": "Active",
          "start_date": "1998-01-27",
          "name": "Proximus",
          "address": "Boulevard Sylvain Dupuis 433, 1070 Anderlecht",
          "address_since": "1998-01-27",
          "url": "https://kbopub.economie.fgov.be/kbopub/toonvestigingps.html?lang=en&vestigingsnummer=2102964651"
        }
      ],
      "establishments_total": 186,
      "establishments_truncated": true
    },
    "blocked": false,
    "pages_opened": 2,
    "proxy_traffic_bytes": 40785
  },
  "total_points": 10
}
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-be-companies \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"company":"0202.239.951"}'
Use cases

What teams use it for

Where this field shows up in an actual workflow.

Belgian counterparty checks

Confirm status, legal situation and registered address before you contract.

Director and activity research

See directors with start dates and the activity codes the company is registered under.

Corporate-history tracing

Follow links between entities to see mergers and absorptions, with dates.

Site and branch mapping

List establishment units with addresses and start dates.

Coverage & limits

Coverage, freshness and limits

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

Coverage

Belgium — entities on KBO/BCE.

Freshness

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

Handling

KBO/BCE 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 establishments list is capped; the response gives the total and a truncated flag.
  • —Email, fax and abbreviation are empty in the sample, so contact fields depend on what the company has registered.
  • —Directors are listed with a start date but without addresses or other personal details.
FAQ

Questions, answered

The enterprise number, with or without dots (0202.239.951 or 0202239951), or the link to the company page.

Related

Related sources

Try kbo company on your own data

One request format across every source in the catalog.

Get started