Automating supplier verification
Learn how to automatically verify the status, validity and Peppol registration of your suppliers via the BCE/KBO API.
In brief
Before onboarding a Belgian supplier, three checks are essential via the BCE/KBO API: active status in the company register, VAT number validity, and Peppol registration for electronic invoicing. These three calls can be parallelised in a single TypeScript function that returns a risk level (low/medium/high) directly usable in your ERP or CRM.
Why verify your suppliers?
Before working with a new Belgian supplier, it's essential to verify:
- Their legal existence in the BCE register
- Their status (active, in liquidation, ceased)
- Their VAT validity for tax deduction
- Their Peppol registration for electronic invoicing
Step 1: Verify existence
1 2 3 4 5 6 7 8 9 10
async function verifySupplier(bceNumber: string) {
const response = await fetch(class="code-string">`/api/companies/${bceNumber}`, {
headers: {
class="code-string">'X-API-Key': process.env.API_KEY!,
class="code-string">'X-API-Secret': process.env.API_SECRET!,
},
});
const company = await response.json();
return { exists: response.ok, ...company };
}
Step 2: Check Peppol
Step 3: Automate the process
Conclusion
Automating supplier verification protects you against risks and ensures compliance of your operations. Go further with the guide to integrating the BCE API into your application, the article on BCE integration with your ERP or CRM, the batch processing guide for mass verification and the article on automated KYC verification via the BCE API.
Frequently asked questions
How do I automatically check whether a Belgian supplier is still active in the BCE register?
Call the /api/companies/{bceNumber} endpoint with your BCE/KBO API key. The response contains a status field: the value AC means active, ST means ceased. Integrate this check into your supplier onboarding workflow and schedule a periodic verification (monthly or quarterly) for existing suppliers.
Can I automatically verify a Belgian supplier's Peppol registration before sending an invoice?
Yes, the BCE/KBO API exposes a /api/peppol/check?vatNumber=BE0123456789 endpoint that returns whether the company is registered on the Peppol network and its reception identifiers. Check before each electronic invoice issuance: if the supplier is not Peppol-registered, fall back to paper or PDF for that recipient.
How do I calculate a supplier risk level from Belgian BCE data?
A simple three-level scoring is sufficient: high risk if the company is inactive (status ST in the BCE), medium risk if the company is active but not Peppol-registered (electronic invoicing impossible), low risk if the company is active and Peppol-registered. You can refine this score by crossing it with the company's age and number of establishments.
How often should I re-verify the status of my Belgian suppliers in the BCE?
For active suppliers in your portfolio, a monthly verification is generally sufficient. For new suppliers or when signing an important contract, perform a real-time check. You can also activate BCE alerts via Company Belgium to be automatically notified of any status change in your portfolio.
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.
