eu-verifyFor AI agents · pay per call

European company verification API for AI agents

Verify any European company in a single call. Give a country (FR, UK, IE, NO, FI, SK, PL, CZ) and its national registry number and this endpoint checks existence and status in the official registry, insolvency signals (BODACC for France, registry flags elsewhere), VAT validity against VIES, the LEI record at GLEIF, the legal name against the EU, US OFAC, UN, UK and French sanctions lists, the EORI customs number and the company domain's age and mail setup.

It returns one verdict - pass, review or fail - with a confidence level, the reasons, and a per-check source and timestamp, plus an explicit coverage map that says what was checked, what is structurally not covered for that country and what was temporarily unavailable. This is factual verification of official public records, not a credit score: no payment-behavior data, no probability of default, and a sanctions match always says review, never an automated fail. $0.10 per call in USDC, no account, no API key, never billed on failure.

Endpoint

GET /v1/eu/company-check$0.10 per call (USDC on Base, x402). Also available as the MCP tool verify_company_eu on https://data.greeneris.io/mcp.

Parameters

ParamDescription
countryOne of FR, UK, IE, NO, FI, SK, PL, CZ (required)
idNational registry number: SIREN/SIRET, company number, orgnr, y-tunnus, ICO or NIP (required)
vatVAT number to check when not derivable from the id (IE, SK)
leiKnown 20-character LEI to verify instead of searching
eoriEORI customs number to validate
domainCompany website domain for age and MX signals

Example

curl -i "https://data.greeneris.io/v1/eu/company-check?country=FR&id=552032534"
# HTTP/1.1 402 Payment Required + machine-readable quote
# (any x402 client pays the quote and retries automatically)

Response after payment:

{"ok": true, "data": {"subject": {"country": "FR", "id": "552032534", "legal_name": "DANONE", "natural_person": false}, "verdict": "pass", "confidence": "high", "reasons": ["Registered and active; no insolvency, sanctions, VAT or domain flag on any checked component."], "checks": {"registry": {"status": "checked", "exists": true, "company_status": "active"}, "vat": {"status": "checked", "is_valid": true}, "sanctions": {"status": "checked", "verdict": "no_match"}}, "coverage": {"checked": ["registry", "insolvency", "vat", "lei", "sanctions", "eori"], "degraded": []}, "flags": []}}

What agents use it for

How payment works

Call the endpoint: you get HTTP 402 with a signed quote (price, receiving address, network). Your agent pays a few tenths of a cent in USDC on Base (gasless, EIP-3009) and retries - one round trip, no account, no API key. Settlement only happens after a successful answer. Full catalog: llms.txt.

Related