The short answer
Before you onboard a French or Spanish business customer, one call tells you whether the company exists in the official register, whether it is still active, where it is registered and which identifiers it uses. verify_company turns that into a decision you can file: an outcome with its reasons, the checks that passed or failed, warning signals, and a proof code an auditor can look up later. Every fact carries its source and the date it was checked.
It covers the register step of KYB (Know Your Business). It doesn't replace your ownership checks, your document checks or your own risk rules, and it never names a person.
A real example
On 12 October 2026 we asked the live API, without a key, to verify a well-known French company for onboarding: Peugeot SA, SIREN 552100554. This is the one-line answer it gave:
FR data: partial coverage (All French companies in the public Sirene directory, live from the official Annuaire des Entreprises API (refreshed after 7 days).). PEUGEOT SA (FR, SIREN 552100554): unverified, inactive per Annuaire des Entreprises (API Recherche d'entreprises), checked 2026-10-12. Proof FUE-FR-20261012-C8G7R6.
The outcome is unverified, with the reason company_inactive: the official register shows the company as ceased. A name match or a valid number is not enough, and the answer says so instead of returning a green tick. The proof code FUE-FR-20261012-C8G7R6 lets you, or your auditor, retrieve the exact verification later. More real answers are on the examples page.
How it works
Three calls cover most onboarding files:
- No official number yet?
search_companies(country, query)finds the company by name (2 units a page), best match first, each result with a score and the reasons for it. Pick the right one, and keep its ID. - Decide.
verify_company(country, identifier, reference)checks the company against the register (5 units): identifier valid, record found, status active, address present, data fresh. Pass your own case ID asreference, so the proof code ties back to your file. - File it. With an API key,
review_report(country, identifier)produces one review-ready report (8 units): identity, facts with sources, last year's changes and gaps, and every check at once (insolvency, sanctions screening of the company's own names, address, VAT).
The same calls exist over REST for your back office, and as MCP tools for an AI agent that prepares the file. Setup and every parameter are in the docs.
What to keep in your KYB file
- The outcome and its reasons (
verified,partial,unverifiedorinsufficient_data). - The proof code, so the verification can be retrieved as it was served.
- The source of each fact, its link and the check date.
- What could not be confirmed. An honest gap is worth recording: it tells the next reviewer where to look.
Spain is different
Spanish records come from the BORME, the official gazette of the Registro Mercantil. Fuentio holds companies with an act published there since 2 January 2009: these are events, not a full register. Status is “unknown” unless an act says otherwise, and Spanish companies can’t be looked up by NIF or CIF: search by company name, then use the registry sheet. When we tried a NIF on 12 October 2026, the API answered:
invalid_identifier: 'B12345678' has the format of a NIF/CIF but its check digits are wrong. Next step: Spanish tax-ID (NIF/CIF) lookup isn't supported. Search by company name instead: search_companies(country='ES', query='<company name>').
That polite decline is the point: you get the next step, never a guessed company.
Limits
- France and Spain only.
- No person's name in any answer: directors, shareholders and sole traders are not served.
- France has no share-capital data, and “ceased” (cessée) is the directory's status, not a legal dissolution.
- VAT registration is never checked: the answer links the official VIES page.
- A register check confirms what the register records. The decision stays yours.
Next steps
- See more real answers, then read the docs to connect your back office or your agent.
- Plans start with a free key (100 units a month); see pricing.
- Or send us up to 20 of your own customers: the free pilot returns a checked file within 24 hours.