EU Company Verification (KYB): VIES VAT, LEI, SIREN avatar

EU Company Verification (KYB): VIES VAT, LEI, SIREN

Pricing

from $5.00 / 1,000 company checks

Go to Apify Store
EU Company Verification (KYB): VIES VAT, LEI, SIREN

EU Company Verification (KYB): VIES VAT, LEI, SIREN

KYB (know your business) company verification for Europe: VAT validation in live VIES, LEI lookup (GLEIF), SIREN/SIRET and org numbers checked in official business registries (France, Norway, Finland, Czechia), plus BODACC insolvency. One verdict per company with reasons. MCP-ready.

Pricing

from $5.00 / 1,000 company checks

Rating

0.0

(0)

Developer

Ostrata

Ostrata

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Verify a European company in one call. Give it a company name, a national registration number, an EU VAT number or an LEI. You get back one clean record with a verdict (verified / review / inactive / not_found) and the reasons behind it. The record combines:

Also known as: KYB API, company verification API, business verification, VAT number checker / VIES VAT validation, LEI lookup (GLEIF), SIREN check, company registry lookup, know-your-business (KYB) checks for supplier onboarding. 🇫🇷 vérification d'entreprise, numéro de TVA intracommunautaire, contrôle SIREN · 🇩🇪 Firmenprüfung, USt-IdNr. prüfen.

  • the official business register (France 🇫🇷, Norway 🇳🇴, Finland 🇫🇮, Czechia 🇨🇿), with legal name, status, legal form, address, activity code, creation and cessation dates;
  • a live EU VAT check in VIES (all 27 EU countries + Northern Ireland), with the VAT number derived automatically from the registration number where possible;
  • the LEI from GLEIF (worldwide, CC0);
  • insolvency / liquidation signals (France: BODACC collective proceedings; Finland: PRH bankruptcy/restructuring/liquidation situations; Czechia: ARES insolvency register flag).

Every result cites its sources and their licences. Only official, free, open public-sector APIs are used: no scraping, no logins, no third-party data brokers.

Use cases: supplier and customer onboarding (KYB), B2B checkout VAT checks, invoice and reverse-charge compliance, CRM and ERP data cleaning, lead qualification, and fraud checks ("does this company really exist and is it still active?"). It also works as a tool for AI agents (see Use it from AI agents (MCP)).

Why this Actor

This ActorTypical single-source Actor
Registry + VAT + LEI + insolvency in one row✅❌ one source per Actor
Clear verdict + machine-readable reasons✅❌ raw data only
Accepts names, IDs, VAT numbers and LEIs mixed in one list✅❌
Checksum validation (SIREN/SIRET, org.nr, Y-tunnus, IČO, LEI) before any call✅rarely
Pay only for companies found: not-found and invalid inputs are free✅usually billed per row
Sole proprietors (natural persons) excluded from name searches by default✅❌

Input

Paste one query per line in Companies. Each line can be:

ExampleInterpreted as
Doctolibcompany name, searched in the default country register
NO: Equinorcompany name in Norway (prefix CC: picks the country)
552 120 222 / 55212022200013French SIREN / SIRET
FI: 0112038-9, NO: 923609016, CZ: 27082440Finnish Y-tunnus, Norwegian org.nr, Czech IČO
FR40303265045, DE811569869, IE6388047VEU VAT number (any EU country + XI)
969500BPSLCSC039UV67LEI
ES: Inditexname in a country without a register adapter → searched in GLEIF
{
"companies": ["Doctolib", "FR40303265045", "NO: Equinor", "FI: 0112038-9", "CZ27082440"],
"defaultCountry": "FR",
"maxCandidatesPerQuery": 1,
"checkVat": true,
"checkLei": true,
"checkInsolvency": true,
"excludeSoleProprietors": true,
"minNameScore": "0.5"
}

Options: maxCandidatesPerQuery (1–25, for name searches), minNameScore (0–1), includeRaw (attach the untouched source responses), concurrency (1–10). Up to 5,000 queries per run.

Output

One dataset row per company (or per candidate for name searches with maxCandidatesPerQuery > 1). The Overview table view shows the flat fields. Each row also carries nested company, vat, leiRecord, insolvency and sources objects.

FieldMeaning
verdictverified, review, inactive, not_found, invalid_input or error
reasonswhy, e.g. registry_status_active, vat_valid_in_vies, lei_issued, name_match_1, weak_name_match_0.62, vat_number_not_valid_in_vies, insolvency_or_liquidation_flag, registry_status_ceased
warningsnon-blocking notes (e.g. VIES temporarily unavailable, Norway not in VIES)
legalName, country, registrationNumber, registrationNumberTypeidentity
registryStatusactive, ceased or unknown
vatNumber, vatValidVAT number and live VIES result (null = could not be checked)
lei, insolvencyFlag, matchScore, inputIndex, checkedAt

Verdict logic. inactive means the register says the company has ceased. review means something needs a human: VAT invalid, an insolvency/liquidation notice in the last 3 years, a name match below 0.85, a lapsed LEI, or a status that could not be confirmed. verified means the company is active in the register (or has a valid VAT number in VIES where no register is covered), with no red flag.

Sample output (real local runs, 18 Oct 2026)

QueryVerdictLegal nameReg. no.VAT (VIES)LEINotes
DoctolibverifiedDOCTOLIB794598813FR14794598813 ✅969500BPSLCSC039UV67name match 1.0
FR40303265045verifiedSODIMAS303265045✅969500GZTMR1IRVURM23
552 120 222verifiedSOCIETE GENERALE552120222FR27552120222 ✅O2RNE8IBXP4R0TD8PU41
440471100inactiveLB440471100FR63440471100 ❌–ceased + BODACC liquidation
BlablacarverifiedCOMUTO491904546FR76491904546 ✅969500XQAR03ZTKPUC93brand → legal entity
NO: EquinorverifiedEQUINOR ASA923609016n/a (not in VIES)OW6OFBNCKXC4US5C7523
FI: NokiaverifiedNokia Oyj0112038-9FI01120389 ✅549300A0JPRWG1KI7U06
CZ: AlzaverifiedAlza.cz a.s.27082440CZ27082440 ✅315700MJRNJSVB95U852
IE6388047VverifiedGOOGLE IRELAND LIMITED–✅YYPPRNO5HB304LHFVG31VIES + GLEIF
DE: Siemens AktiengesellschaftverifiedSiemens AktiengesellschaftHRB 6684–W38RGI023J3WT1HWRP32via GLEIF
ES: InditexreviewINDUSTRIA DE DISEÑO TEXTIL, S.A. (INDITEX, S.A.)––9598004YCFER8AFHFN23GLEIF status unconfirmed
NO: 123456789invalid_input (free)bad checksum
zzqx nonexistent company 4821not_found (free)

One full row (CZ27082440), shortened:

{
"query": "CZ27082440", "queryType": "vat", "verdict": "verified",
"reasons": ["registry_status_active", "vat_valid_in_vies", "lei_issued"],
"legalName": "Alza.cz a.s.", "country": "CZ", "registrationNumber": "27082440", "registrationNumberType": "ICO",
"registryStatus": "active", "vatNumber": "CZ27082440", "vatValid": true, "lei": "315700MJRNJSVB95U852", "insolvencyFlag": false,
"company": { "legalForm": "Akciová společnost (a.s.)", "registrationDate": "2003-08-26",
"address": { "line": "Jankovcova 1522/53, Holešovice, 17000 Praha 7", "city": "Praha", "country": "CZ" },
"activity": { "code": "532", "scheme": "CZ-NACE" }, "isSoleProprietor": false, "registryVatRegistered": true },
"vat": { "valid": true, "name": "Alza.cz a.s.", "address": "Jankovcova 1522/53, PRAHA 7 - HOLEŠOVICE, 170 00 PRAHA 7" },
"leiRecord": { "entityStatus": "ACTIVE", "registrationStatus": "ISSUED", "corroborationLevel": "FULLY_CORROBORATED" },
"insolvency": { "flag": false, "details": [] },
"sources": [ { "name": "ARES …" }, { "name": "VIES …" }, { "name": "GLEIF LEI API", "license": "CC0 1.0" } ]
}

Timing in those runs: about 1.5 s per company with all checks on. France takes longer when VIES is busy, because the Actor retries automatically.

Pricing (pay per event)

  • $0.005 per company check delivered ($5 per 1,000), charged only for rows with verdict verified, review or inactive.
  • not_found, invalid_input and error rows are free.
  • No subscription. Apify platform usage is included. Set a maximum cost per run in the run options: the Actor stops cleanly when that budget is reached.

Use it from AI agents (MCP)

Every public Apify Actor is automatically available as a tool on the Apify MCP server (https://mcp.apify.com). Add the Actor in Claude Desktop, Cursor, VS Code or any MCP client:

{ "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=ostrata/eu-company-check" } } }

Then ask: "Check whether FR40303265045 and NO: Equinor are active companies with valid VAT numbers." The input is a plain list of strings and the output carries a verdict and reasons, so agents can act on it directly. You can also call it over the Apify API (run-sync-get-dataset-items) or with the apify-client libraries. (Replace ostrata with the publishing account's username if different.)

Data sources & licences

SourceCoverageLicence
API Recherche d'entreprises (INSEE Sirene + RNE, DINUM)FR registerLicence Ouverte 2.0
BODACC via DILA open dataFR collective proceedingsLicence Ouverte 2.0
Brønnøysundregistrene – EnhetsregisteretNO registerNLOD 2.0
PRH – YTJ open data API v3FI registerCC BY 4.0
ARES (Ministry of Finance CZ)CZ registerpublic open data
VIES (European Commission)EU VAT validitypublic EU service
GLEIF APILEI worldwide, name search elsewhereCC0 1.0

The Actor respects each API's published rate limits, using per-host throttling, Retry-After handling and exponential backoff.

Limitations

  • Register adapters exist for FR, NO, FI and CZ. In other countries, names are looked up in GLEIF, so this covers only companies that have an LEI, and VAT numbers are checked in VIES. UK, DE, NL and others are planned.
  • Some countries (e.g. Germany, Spain) never return the name or address in VIES. You then get vatValid but legalName: null.
  • VIES is sometimes unavailable for a member state. The Actor retries and, if it still fails, returns vatValid: null with a warning instead of a false negative.
  • Finnish register status codes are not formally documented. The mapping used (1 = registered, 4 = ceased) is based on observed data.
  • Results reflect the sources at query time. This is a data tool, not legal advice.

Privacy

The Actor queries company registers only. By default it excludes sole proprietors (natural persons) from name searches. It does not return directors, shareholders or any personal contact data. Your input list is processed in your own Apify run and is not stored by the author.


🇫🇷 En bref

Vérifiez une entreprise européenne en un appel : nom, SIREN/SIRET, numéro de TVA intracommunautaire ou LEI → une fiche unique avec un verdict (verified / review / inactive / not_found). La fiche combine le registre officiel (France via l'API Recherche d'entreprises, Norvège, Finlande, Tchéquie), le contrôle TVA en direct dans VIES (avec calcul automatique de la TVA depuis le SIREN), le LEI GLEIF et les procédures collectives BODACC.

0,005 $ par entreprise trouvée. Les recherches sans résultat et les saisies invalides sont gratuites. Uniquement des sources publiques officielles (Licence Ouverte 2.0, NLOD, CC BY, CC0), sans scraping. Les entrepreneurs individuels sont exclus des recherches par nom par défaut. Utilisable comme outil MCP par les agents IA via mcp.apify.com.

Publié par Sublime Traders SAS (Ostrata), France.