Company data straight into your own software

Get annual accounts, the Health score, the credit limit and directors in a single call. For your CRM, your ERP or your own application.

Every account gets 10 free requests a month, no credit card needed.

What you can build

Works with any system that can send an HTTP request, from your CRM or ERP to a script of your own. Without code too, through Zapier, Make or n8n.

Examples of systems you can connect: Salesforce, HubSpot, Google Sheets, Odoo, SAP, Zapier, Make, n8n

Enrich your CRM

Fill in the sector, address, revenue and Health score of every new account automatically.

Check before you invoice

Look up the credit limit before an order or invoice leaves your ERP, and hold a delivery when the score is low.

Onboarding and KYC

Check for every new customer whether the company is active, who runs it and who the shareholders are.

What you can fetch

Responses in JSON. Labels such as legal forms in Dutch, French or English with ?lang=.

GET/api/v1/search
Search companies by name, company number or address.
GET/api/v1/enterprises/{number}
The profile: address, activity, legal status, Health score, credit limit and key figures.
GET/api/v1/enterprises/{number}/financials
The annual accounts, per financial year.
GET/api/v1/enterprises/{number}/directors
The directors, per financial year.
GET/api/v1/enterprises/{number}/investors
The shareholders.
GET/api/v1/enterprises/{number}/investments
Holdings in other companies.
GET/api/v1/enterprises/{number}/publications
Publications in the Belgian Official Gazette.
GET/api/v1/enterprises/{number}/establishments
Establishment units.
GET/api/v1/enterprises/{number}/activities
Activities with their NACE code.
GET/api/v1/enterprises/{number}/lookalikes
Similar companies.

For developers

A REST API for lookups, webhooks for alerts and soon an MCP server for AI assistants.

curl $BASE/enterprises/0648271903 \  -H "Authorization: Bearer $TOKEN"
r = requests.get(    f"{BASE}/enterprises/0648271903",    headers={"Authorization": f"Bearer {TOKEN}"},)
$company = Http::withToken($token)    ->get("$base/enterprises/0648271903")    ->json();
const res = await fetch(`${BASE}/enterprises/0648271903`, {  headers: { Authorization: `Bearer ${TOKEN}` },});
Response 200 OK · 84 ms
Peeters Installatietechniek 0648.271.903
Health score 3.9
Credit limit €120,000
Turnover €3.1M

A few lines of code

Create a token under Settings, API and send it as a Bearer token. You get JSON back, in English, Dutch or French.

Go to the documentation
Webhook POST · JSON
Alert rule · Risk portfolio crm.yourcompany.com/hooks
Deliveries
200 Peeters Installatietechniek Data changed 12:00:04
200 Bakkerij Claes BV New company 12:00:04
200 Garage Verhaegen NV Data changed 12:00:05

Alerts in your own system

An alert rule sends new matches as a POST to your URL, so your CRM knows as soon as a company meets your criteria. Included in the Pro plan.

More about alerts

Our data in your AI assistant

We are working on an MCP server, so assistants like Claude and ChatGPT can work with our company data directly. Leave your email address and we will let you know as soon as it is ready.

What it costs

Every call is one request. Your plan includes a monthly allowance; if you need more, you buy an extra package that does not expire.

Compare all plans

Pricing

  • Free 10 a month
  • Starter 500 a month
  • Pro 2,500 a month

Extra packages

  • 25,000 requests €2,500 excl. VAT
  • 50,000 requests €4,000 excl. VAT
  • 100,000 requests €6,000 excl. VAT

Frequently asked questions

How do I get an API key?

Create a free account and go to Settings, API. There you create a token that you send as a Bearer token in the Authorization header.

How many requests do I get?

Free: 10 a month. Starter: 500. Pro: 2,500. Once the allowance is used, bought packages are spent; without one you get a 429 response with the date the allowance starts again.

What counts as a request?

Every call that gets an answer, even when the company does not exist. If something fails on our side (a 5xx error), the request does not count.

What language are the responses in?

Add ?lang=nl, fr or en, or send an Accept-Language header. Codes such as legal forms and statuses then come back in that language.

Where is the documentation?

At docs.jaarrekening.be, with a quickstart and the reference for every endpoint.

Ready to start?

See the official annual accounts, directors and credit information of European companies. You don't need to be an accountant to read them.

Free: view 5 companies a week and follow 5. Pro free for 7 days, no credit card.