POST /check – Check an identifier in its register

REST-API · POST /check · paid route

Check an identifier: directly in the register responsible.

This route checks an identifier in its public register and tells you whether it exists and what the register confirms about it. That is useful before you create a supplier, release an invoice or send an invoice to a new customer.

Eight kinds of identifiers are checked: VAT numbers through VIES, the EU’s query system; SIREN and SIRET through the SIRENE register of INSEE; LEI through GLEIF; ABN through the Australian Business Register; NIP through the Polish White List; Peppol IDs through the Peppol Directory; EORI numbers through the EORI service of the European Commission. Only the identifier itself goes to the register.


Request

How to call the route

Address: POST https://invoicepress.de/wp-json/einvoice-api/v1/check

Key: Send your API key in the header Authorization: Bearer <key>. Without a valid key the route answers with status 401.

Body: The body of the request is JSON with scheme (the kind of identifier: vat, siren, siret, lei, abn, nip, peppol or eori), value (the identifier) and optionally context for extra data a kind needs.


Answer

What comes back

status – valid, invalid, or unknown when the register gives no answer at the moment.

source – Which register answered, e.g. vies, insee or gleif.

evidence – The details the register confirms, such as name and address. What it contains depends on the register.

checkedAt, cached, ttl – Time of the check and whether the answer comes from the cache. Answers from INSEE stay in the cache for 35 days, those of the other registers for one day.

reason – The reason when the result is not valid.

When something goes wrong

Status 400 – The kind of identifier or the identifier is missing, or the kind is not supported.

Status 401 – The key is missing, unknown or blocked.

Status 429 – The quota is used up. The header Retry-After tells you when it works again.


Example

A call with curl

curl -X POST "https://invoicepress.de/wp-json/einvoice-api/v1/check" \
     -H "Authorization: Bearer <key>" \
     -H "Content-Type: application/json" \
     -d '{"scheme":"vat","value":"DE136695976"}'

Cost

Quota and plan

This route is a paid route. Every identifier checked counts as one identifier check against the monthly quota of your plan. To try it, there is the free plan “Free” with a key of your own; it covers about two identifier checks a day. Answers with an error status are not counted.