CompanyBelgium

Official KBO API vs third-party APIs: limitations of the public BCE service and why move to a modern API

The official SPF Economie API is free — but it's SOAP, without webhooks, without UBO or Peppol enrichment, and without SLA. Here is why 80% of serious projects end up migrating to a third-party API, and how to evaluate if it's your case.

May 4, 20268 min read

In brief

The official SPF Economie SOAP API is free and reliable, but it imposes a high technical cost in 2026: no REST/JSON, no webhooks, no UBO, no Peppol, no SLA. For production projects with a client SLA or KYC/AML needs, migrating to a modern third-party API is economically advantageous once you account for the hidden costs.

What no one tells you about the official API

First: the official SPF Economie API is a free public service and a precious one. Without it, the entire Belgian company data ecosystem would not exist. Everything else, including Company Belgium, depends on it.

But in 2026, starting a serious project directly against the official API means imposing on yourself a needless technical and functional burden. Here is precisely why.

What the official API offers

SPF Economie exposes three channels:

  • KBOPublicSearch — a SOAP service for company search and consultation
  • EnterpriseRegister — an authenticated SOAP service for accredited actors (notaries, clerks, banks)
  • BCE Open Data — a daily FTP download of CSV ZIP files (full + delta)
  • All free, daily-fed. Official source, trusted data.

    The 6 concrete limitations

    1. SOAP in 2026

    KBOPublicSearch is SOAP/XML. Your modern stack (Node.js, Python, Go, Ruby) must:

    • Generate a SOAP client (wsdl2java, suds-jurko, gsoap, etc.)
    • Parse XML envelopes with namespaces
    • Handle SOAP fault codes, not HTTP
    • Serialize requests manually

    Cost: +3 to 5 days on initial integration, and a permanent cluster of bugs on schema updates.

    2. No webhooks

    If you want to react to changes (a client becomes inactive, a new director is appointed, accounts are filed), you must poll. For 10,000 monitored clients:

    • Hourly polling = 240,000 requests/day
    • Detection with average 30-minute delay
    • Official quota frequently hit

    With a webhook API, you receive one HTTP notification when the event occurs.

    3. No enriched UBO

    The official API exposes BCE data (company, address, directors, NACE, establishments). But the UBO register is a separate service (MyMinFin), with:

    • Separate eID authentication
    • No public REST API
    • Limitation to manual consultation for most professional accesses

    To run a full KYC, you need to cross BCE + UBO. The official API does not do it for you.

    4. No Peppol

    Verifying if a company is registered on Peppol (to send it an electronic invoice) requires querying a separate directory (Peppol SMP/SML). Not exposed by the official API.

    5. No developer support

    The official API offers no:

    • Maintained OpenAPI/Swagger documentation
    • Test sandbox
    • Developer chat or email
    • Contractual SLA
    • Public status (uptime, incidents)

    If you have a bug at 3 a.m. on a Friday, you are alone.

    6. No business enrichment

    The official API exposes raw data. No:

    • Data quality score (flagged inconsistencies)
    • Computed financial indicators (company size per EU definition)
    • Semantic full-text search
    • Advanced filtering (by revenue, headcount, etc.)
    • Establishment mapping
    • Change tracking (timeline)

    When the official API remains the right choice

    Let's be honest — there are cases where the official API is amply sufficient:

  • Academic project: students, research, theses
  • Weekly bulk processing: a Sunday-night script that ingests the full dump and writes to your data warehouse
  • Very basic internal tool: a script that verifies 5 VAT numbers per day
  • Backup / source of truth: cross-check a third-party API against the official source for audit
  • In those cases, paying for a third-party API would be a waste.

    When to migrate to a third-party API

    Conversely, migrating makes sense as soon as:

    • You are in production with a client SLA: your revenue depends on availability
    • You do KYC or AML: need for UBO cascade, archiving, traces
    • You invoice via Peppol: verification of registration and reception capability
    • You track changes: monitoring, alerts, webhooks
    • You have volume > 1000 req/day: the official SOAP starts to choke
    • Your team lacks SOAP skills: training cost > API cost
    • You want OpenAPI / official SDKs: essential for new integrations

    The hidden cost of "staying free"

    An honest 12-month calculation for a production project:

    ItemOfficial APIThird-party API (€200/mo)
    Initial dev (SOAP, parsing)5 d × €600 = €3,0001 d × €600 = €600
    Polling (200,000 req/day, infra)€80/mo × 12 = €960€0
    SOAP bugs (1 d/quarter)4 × €600 = €2,400€0
    Manual UBO cascade (KYC)30 min/file × 200 files = €6,000€0
    API subscription€0€200 × 12 = €2,400
    Total€12,360€3,000

    The gap is systematically in favor of the third-party API once hidden costs are included.

    How Company Belgium fills these gaps

    For serious projects, Company Belgium provides the bricks missing from the official API:

    • Webhooks: receive a notification as soon as a company changes (new director, accounts filing, corporate purpose change, UBO declaration)
    • Automatic UBO cascade, crossed with the UBO register
    • Integrated Peppol check
    • Contractual SLA on paid plans

    All this while remaining synchronized with the official BCE (so the legal source of truth is not lost).

    Bottom line

    The official API remains an essential tool: it is the source. But for most production projects that do more than read VAT numbers, it imposes a hidden cost (SOAP, polling, manual cross-checks) that quickly exceeds the price of a third-party API.

    The right reflex: start with the official API if you prototype, then migrate to an enriched API as soon as a real client expects an SLA. It is not an ideological choice, it is an economic calculation.

    Frequently asked questions

    What is the difference between the official KBO API and a third-party API like Company Belgium ?

    The official SPF Economie API (KBOPublicSearch) is free but SOAP/XML-based, with no OpenAPI documentation, no webhooks and no SLA. A third-party API like Company Belgium exposes the same BCE data as REST/JSON with webhooks, UBO cascade, Peppol verification and developer support, reducing integration time from 3-5 days to less than a day.

    Can the official BCE API be used for a production project ?

    Yes, it works for simple use cases like occasional VAT number checks or weekly bulk processing. But for projects with a client SLA, KYC/AML requirements or real-time change tracking, the hidden costs of the SOAP API (development, polling, manual UBO cross-checks) quickly exceed the cost of a third-party API.

    What is KBOPublicSearch and how do you access it ?

    KBOPublicSearch is the official SPF Economie SOAP service at kbopub.economie.fgov.be. It is free with no API key required, but returns XML. Access requires generating a SOAP client (wsdl2java, suds, etc.) and handling XML envelopes with namespaces, which adds several development days on a modern stack.

    Is the BCE Open Data different from KBOPublicSearch ?

    Yes. BCE Open Data is an FTP download of compressed CSV files (full plus daily delta, about 500 MB), while KBOPublicSearch is a SOAP service for real-time queries. Open Data is ideal for populating a data warehouse or batch processing, but unsuitable for spot checks or online applications.

    Ready to get started?

    Create your free account and get your API keys in minutes.

    Comments

    Loading comments…

    Leave a comment

    Not published — used only to notify you.

    Comments are moderated before publication.

    Related articles