The textbook case, verified in production: Carrefour's VAT number is valid at VIES; placed on an invoice showing Danone's company number, it returns incoherent. That is precisely what a VIES validation alone cannot see.
See a real response (free) Get the quote for /v1/facture/verifier
Catalogue description, exactly as agents read it:
Invoice verification for France — cross-check the identifiers PRINTED ON an invoice in one call: SIREN against the official registry (existence, active status, live), the VAT number on the invoice against the one computed from the SIREN AND live against VIES, the IBAN (ISO form, key digits, bank identified). Deterministic verdict coherent/incoherent/inverifiable, closed-list reasons. Flags a VAT that belongs to another company or a ceased supplier. Not a payee verification.
Dated snapshot from 2026-08-16, truncated to one item per array. It is not live data. The full extract is served free of charge from the samples surface, and the schema from the OpenAPI document.
{
"siren": "552032534",
"etat_administratif": "actif",
"controles": {
"tva": {
"fournie": "FR27552032534",
"attendue_pour_ce_siren": "FR27552032534",
"correspond_au_siren": true,
"vies": {
"statut": "valide"
}
},
"iban": {
"valide": true,
"exemple_de_documentation": true,
"banque": {
"identifiee": true
}
}
},
"verdict": "coherent",
"raisons": [
{
"code": "iban_exemple_documentation",
"niveau": "information",
"source": "IBAN publié comme EXEMPLE de documentation — bien formé ; existence du compte non contrôlée."
}
],
"non_verifie": [
"existence_du_compte",
"nom_du_titulaire"
],
"source": "Composition Sirenic : INSEE Sirene (état, live), croisement TVA calculée (clé FR déterministe), VIES (Commission européenne, live), contrôle de forme IBAN + registres bancaires officiels",
"disclaimer": "Croisement déterministe des identifiants affichés par une facture (raisons en liste fermée, tracées à leur source) — ni un avis de conformité fiscale, ni une Verification of Payee : le volet bancaire contrôle la FORME et identifie la banque, sans vérifier l'existence du compte ni le nom du titulaire — un IBAN valide mais substitué n'est pas détectable ici. / Deterministic cross-check of the identifiers printed on an invoice — neither tax advice nor a Verification of Payee: the bank leg checks FORM and identifies the bank; a valid-but-swapped IBAN cannot be detected here."
}
Price: $0.02. The authoritative amount is the one in the 402 quote returned by the route itself — not this text, which derives from the same grid but is still just a page.
An error response cancels the payment: a 400, 404 or 503 is never billed. An upstream outage closes the route with a 503 rather than serving a degraded response.
# 1. Le devis, sans rien payer : la route répond 402 avec son montant
curl -i https://api.sirenic.eu/v1/facture/verifier
# 2. L'appel réglé — le client x402 paie le devis et rejoue la requête
npx x402-fetch https://api.sirenic.eu/v1/facture/verifier
# 3. Ou en MCP, dans Claude Code / Cursor / un agent
claude mcp add --transport http sirenic https://api.sirenic.eu/mcp
The route does not read the PDF: it cross-checks the identifiers you pass. Extraction stays on your side, which avoids sending a whole accounting document to a third party. And it is not a payee verification.
/v1/facturation/dossier — $0.03/v1/tva/verifier/{numero} — $0.003/v1/iban/verifier/{iban} — $0.005Every route is paid per call, in USDC or EURC on the Base network, over the x402 protocol: no account to create, no API key, no subscription. The first call returns a 402 quote your client settles, then replays the call. A failed call is never billed.
Would you rather have a euro invoice and prepaid credits? That is in preparation, and we will not announce a date until it is open. Write to contact@sirenic.eu and we will let you know when it opens.
Paid responses are Ed25519-signed: you can later prove what was served to you, and when. The whole catalogue is free to read in the OpenAPI document and in llms.txt.
One call, end to end
# Client x402 (npm) — le devis 402 est réglé et l'appel rejoué automatiquement
npx x402-fetch https://api.sirenic.eu/v1/entreprise/552032534
# Ou en MCP, dans Claude Code / Cursor
claude mcp add --transport http sirenic https://api.sirenic.eu/mcp
| Route | Price | What it returns |
|---|---|---|
/v1/facture/verifier (free sample) | $0.02 | Invoice verification for France — cross-check the identifiers PRINTED ON an invoice in one call: SIREN against the official registry (existence, active status, live), the VAT number on the invoice against the one computed from the SIREN AND live against VIES, the IBAN (ISO form, key digits, bank identified). Deterministic verdict coherent/incoherent/inverifiable, closed-list reasons. Flags a VAT that belongs to another company or a ceased supplier. Not a payee verification. |
The IBAN check is not a payee verification: neither the account holder's name nor the account's existence is checked (verification_titulaire: non_disponible).
Sirenic is not an accredited French e-invoicing platform (PDP), never accesses the central directory, and neither issues, transmits nor routes any invoice.
No account to create, no key to request: the first step is free and shows you exactly what you would be buying.
See a real response (free) Get the quote for /v1/facture/verifier Get notified about euro packs