Batch processing with the BCE/KBO API: practical guide
How to process thousands of companies efficiently? Complete guide to batch processing with the BCE/KBO API: import, validation and mass enrichment.
In brief
Batch processing with the BCE/KBO API lets you validate, enrich or clean thousands of company records in a single run. The approach rests on three building blocks: normalising BCE numbers, a concurrency queue capped at 5-10 simultaneous calls to respect rate limiting, and CSV export of the results. Ideal for CRM migrations, supplier due diligence or B2B prospecting in Belgium.
Why batch processing?
Many use cases require processing large volumes of company data:
- CRM migration: importing and enriching thousands of customer records
- Data cleansing: validating and correcting existing data
- Due diligence: verifying a supplier portfolio
- Prospecting: enriching a B2B prospect list
Recommended architecture
1 2 3 4 5 6 7 8 9
┌──────────────┐ ┌───────────────┐ ┌──────────────┐
│ CSV file │────▶│ Worker Queue │────▶│ BCE/KBO API │
│ or Database │ │ (Bull/Redis) │ │ │
└──────────────┘ └───────┬───────┘ └──────────────┘
│
┌───────▼───────┐
│ Enriched │
│ results │
└───────────────┘
Step 1: Prepare your data
Read and parse your CSV file containing company data.
Step 2: Normalize BCE numbers
A BCE number has 10 digits in the format 0XXX.XXX.XXX. Normalize all input.
Step 3: Queue with rate control
Process companies in batches of 5-10 with delays between batches to respect rate limits.
Step 4: Export results
Export enriched results to a CSV file.
Best practices
| Practice | Why |
|---|---|
| Limited concurrency (5-10) | Respect rate limiting |
| Delay between batches | Smooth the load |
| Normalize inputs | Maximize match rate |
| Handle errors | Don't block the whole batch |
Conclusion
Batch processing is essential for large-scale projects. With proper rate management, you can process tens of thousands of companies efficiently. Also check the Node.js/TypeScript integration guide for the BCE API, the article on automating supplier verification, the page on rate limits and caching and the CRM pipeline for B2B prospecting in Belgium.
Frequently asked questions
How many Belgian companies can I process per hour in batch with the BCE/KBO API?
It depends on your pricing plan and concurrency strategy. With a concurrency of 5 simultaneous calls and a 200 ms delay between each batch, you can process around 1,500 companies per minute on a Pro plan. For larger volumes, optimise your cache (avoid querying the same BCE number multiple times) and use batch processing with a queue like BullMQ.
How do I normalise BCE/KBO numbers before batch processing?
A Belgian BCE number has 10 digits in the format 0XXX.XXX.XXX. In your source data you will often find variants: without dots, with spaces, without the leading zero. Strip all non-numeric characters, check that you end up with 9 or 10 digits, and reformat to the standard 0XXX.XXX.XXX. This maximises the match rate when searching in the BCE database.
How do I resume an interrupted batch job with the BCE/KBO API?
Save results progressively to a file or database, marking each company as processed. If interrupted, filter out already-processed companies before relaunching the batch. Use a resume index based on the BCE number to avoid duplicates and quickly identify where you left off.
What is the difference between batch processing and webhooks for monitoring Belgian companies?
Batch processing suits one-off processing on large volumes (migration, audit, initial enrichment). Webhooks suit real-time monitoring of a specific portfolio: Company Belgium notifies you as soon as a company changes (address, status, director, NACE). For continuous monitoring, combine both approaches: initial batch then webhooks for updates.
Comments
Related articles

Accountant: automating the financial analysis of your customer portfolio
An accountant manages 50 to 300 client files. Manually analysing annual accounts, computing ratios, spotting red flags and preparing a report for each yearly meeting takes hundreds of hours a year. Here is how to automate 80% of that work while raising service quality.

Calculating the credit limit of a B2B customer: 4 proven methods
How much credit exposure can you safely grant a B2B customer? Discover the four methods used by credit insurers and finance departments of Belgian SMEs: equity cap, turnover cap, asset cap and financial scoring — with worked examples.

Searching Belgian companies in natural language: the complete /recherche guide
Type "accountants in Liège", "restaurants 1000 Brussels" or a BCE number: the /recherche bar turns your sentence into NACE, postcode and name filters, then returns a page enriched with sector statistics. Tour of use cases, URL shortcuts and linguistic subtleties.
