Check whether a European company can receive an electronic invoice today, throug
Check whether a European company can receive an electronic invoice today, through which Peppol participants and formats, and which national e-invoicing mandate applies to it from which date. Give a French SIREN or SIRET, an intra-EU VAT number, a national company number with its country (BE KBO, NL KvK, IT P.IVA, DE), or a company name and country. The Peppol Directory is queried by free text AND by exact participant on every scheme plausible for the country (FR 0002, 0009, 0225 SIREN_routing, 9957; BE 0208, 9925; NL 0106, 0190, 9944; DE 0204, 9930; IT 0211, 0210, 9906...), results are merged and unrelated hits dropped; document types are mapped to stable capabilities (Peppol BIS Billing invoice and credit note, CII, Factur-X, PINT, order) with a can_receive_einvoice verdict. Identity from Sirene/RNE (France) or VIES; obligation calendar per country with its official source. Charged only if the company is found (a company found but not on Peppol is a 200, registered:false). 20 free calls/day per IP with header X-Free-Trial: 1.
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
GET https://resolve402.dev/api/einvoice-readiness
| Category | Company and compliance |
|---|---|
| Provider host | resolve402.dev |
| Networks | eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp |
| Payment schemes | exact |
| Self-reported calls, 30 days | 0 from 0 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-20 | valid payment request | 402 | $0.005 | 926 ms |
Example input (from the provider)
{
"method": "GET",
"queryParams": {
"siren": "552032534"
},
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"company": {
"description": "Company name, with country (used when no identifier is given; the closest Peppol entity name is kept)",
"type": "string"
},
"company_id": {
"description": "National company number, with country: BE KBO/BCE (0417497106), NL KvK (24330087), IT Partita IVA, DE Leitweg-ID...",
"type": "string"
},
"country": {
"description": "ISO-2 country (EU/EEA), required with company_id and company: FR, BE, NL, DE, IT, ES, PL, LU, AT, DK, SE, FI, NO...",
"type": "string"
},
"siren": {
"description": "French SIREN (9 digits, Luhn-checked) or SIRET (14 digits). Sets country=FR.",
"type": "string"
},
"vat": {
"description": "Intra-EU VAT number with country prefix, e.g. FR27552032534, BE0417497106, NL810433941B01, DE811569869",
"type": "string"
}
},
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}