# Cross-check the identifiers printed on an invoice you received

A VIES VAT validation answers “does this number exist?”. It does not answer “does this number belong to the company sending me this invoice?”. That gap is what /v1/facture/verifier closes, by recomputing the VAT number from the printed company number and confronting it with the one on the page.

## The textbook case, verified in production

Take Carrefour's VAT number, `FR14652014051`. It is **valid at VIES**: any classic validation will confirm it. Put it on an invoice that also shows Danone's company number, and the verdict becomes `incoherent`, reason `tva_ne_correspond_pas_au_siren` — because the VAT number computed from Danone's company number is `FR27552032534`, not Carrefour's.

That is precisely what a plain VIES validation cannot see, and exactly the kind of inconsistency found on an invoice that was copied, diverted, or fabricated from a genuine letterhead.

> Three verdicts only, from a closed list: `coherent`, `incoherent`, `inverifiable`. No free text, so no interpretation needed on the caller's side.

## What is cross-checked, field by field

| Identifier on the invoice | Check performed |
| --- | --- |
| Company number | Existence in the official registry and **administrative status**: a ceased company still invoicing is flagged. |
| VAT number | Compared with the number **computed from the company number**, **and** validated live at VIES. Both checks, not either. |
| IBAN | ISO 13616 form, mod-97 check digits, bank identified against official registries. |

> ⚠️ The IBAN check is a **form** check — ISO 13616 structure, mod-97 key digits, bank identified against official registries. It is **not** a payee verification: neither the account holder's name nor the account's existence is checked, and the response says so (`verification_titulaire: non_disponible`). Against bank-details fraud it reduces the risk; it does not remove it.

## Where this fits in an accounts-payable workflow

Upstream of matching, right after the invoice fields are extracted — whether the invoice arrives as a PDF, as Factur-X, or through your platform. Since the route's unit price is the one shown in the table below, the check can be systematic rather than reserved for large amounts: repeated small invoices are where fraud slips through best.

> ⚠️ Sirenic **is not an accredited French e-invoicing platform (PDP)**, never accesses the central directory, and neither issues, transmits nor routes any invoice. These routes prepare and verify data; carrying the invoice remains your platform's job.

## How you pay

Every 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](mailto:contact@sirenic.eu?subject=Euro%20credit%20packs) 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](https://api.sirenic.eu/openapi.json) and in [llms.txt](https://api.sirenic.eu/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
```

## Routes used and pricing

| Route | Price | What it returns |
| --- | --- | --- |
| `/v1/facture/verifier` | $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. |
| `/v1/tva/verifier/{numero}` | $0.003 | EU VAT validation against the official VIES service: validate any intra-community VAT number (all member states) for compliance and due diligence. This tax id check is the tax half of verify supplier before payment, and a required check under the e-invoicing mandate France September 2026. Returns valid/invalid/unavailable status with the VIES consultation identifier as proof — VAT number validation usable across Europe for KYB and supplier onboarding. |
| `/v1/iban/verifier/{iban}` | $0.005 | IBAN verification and bank validation for SEPA payments: a FORM check to verify a supplier before payment — ISO 13616 structure + mod-97 key, plus bank identification from FREE official sources (FR via ACPR/REGAFI incl. LEI and SIREN; BE NBB; AT OeNB incl. LEI; NL BIC list; DE Bundesbank file). French BICs via GLEIF/SWIFT BIC-to-LEI. NOT a payee verification for instant payments: neither the holder name nor the account's existence is checked (verification_titulaire: non_disponible). |

> ⚠️ 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.

## Frequently asked questions

### What does the inverifiable verdict mean?

That one of the checks could not be run — typically VIES being unavailable for the member state concerned. It is deliberately distinct from incoherent: an outage must never read as an anomaly attributable to the supplier.

### Does the route read the invoice PDF?

No. It takes the identifiers you pass it and cross-checks them against each other and against the registries. Extraction from the document stays on your side, which avoids sending a whole accounting document to a third party.

### Does a coherent verdict guarantee the invoice is owed?

No, and reading it that way would be dangerous. It guarantees that the printed identifiers do not contradict each other and match an existing, active company. It says nothing about whether the work was done, whether the amount is right, or whether that bank account really belongs to that supplier.

## Take it further

- [See a real response (free)](https://api.sirenic.eu/exemples/facture-verifier.json)
- [Get the quote for /v1/facture/verifier](https://api.sirenic.eu/v1/facture/verifier)
- [Read the route reference](https://api.sirenic.eu/en/api)
- [Get notified about euro packs](mailto:contact@sirenic.eu?subject=Euro%20credit%20packs)

## Read next

- [Verify a supplier before you pay them](https://api.sirenic.eu/en/use-cases/verify-supplier-before-payment-identity-vat-iban)
- [Validate an intra-community VAT number](https://api.sirenic.eu/en/use-cases/validate-intra-community-vat-number-against-vies-pay-per)

---

Volume figures on this page were measured in our database on 2026-08-19. They are dated snapshots, not live counters.

Full catalogue : https://api.sirenic.eu/