docs / validate

Validation API

Validation API

base /validate/v14 endpoints
post/validate/v1/vat1 credit

Validate an EU VAT number via VIES → validity + registered company name & address.

ParameterAllowed / rangeDescription
vat_numberrequiredThe VAT number to validate against EU VIES. Either a full VAT incl. the 2-letter country prefix (e.g. 'IE6388047V', 'DE811569869') or just the digits when you also pass `country`. Spaces/dots/dashes are ignored.
countryoptionalISO-3166 / VIES country code for the VAT number (e.g. DE, FR, IE, NL). Optional if `vat_number` already starts with the prefix. VIES uses EL for Greece and XI for Northern Ireland; GR/GB are accepted and mapped.
Try in playground →
post/validate/v1/iban1 credit

Validate + parse an IBAN offline (ISO 13616 mod-97) → country, BBAN, bank/branch/account. Optional enrich=true adds BIC + bank name/city (openiban.com, proxied).

ParameterAllowed / rangeDescription
ibanrequiredThe IBAN to validate + parse (offline, ISO 13616 mod-97). Spaces and dashes are ignored; case-insensitive. Returns country, check-digits, BBAN, bank/branch/account, and the checksum math.
enrich = falseoptionalIf true and the IBAN is valid, also fetch BIC + bank name/city from openiban.com (free, proxied). Bank-directory coverage is openiban's supported set (proven live: DE/NL/LU/LI; AT/BE/CH listed but their directory may miss codes). Never changes the validity verdict — the mod-97 result is ours, offline. Default false keeps iban 100% offline.
Try in playground →
post/validate/v1/email1 credit

Validate an email: syntax + live MX + disposable-domain + role-account flags.

ParameterAllowed / rangeDescription
emailrequiredThe email address to validate: RFC-5322-pragmatic syntax + live MX lookup (DNS-over-HTTPS) + disposable-domain + role-account detection.
check_mx = trueoptionalWhether to perform the live MX/DNS lookup (default true). Set false for a pure offline syntax+disposable check (no network, faster).
Try in playground →
post/validate/v1/batch1 credit

Validate up to 100 mixed items ({type:vat|iban|email,value}) in one call.

ParameterAllowed / rangeDescription
itemsrequiredUp to 100 mixed validation items. Each is an object {type: vat|iban|email, value: <string>} (vat items may also carry a `country`). Each item is validated independently — a bad entry yields valid:false, it never fails the whole batch.
check_mx = trueoptionalWhether to perform the live MX/DNS lookup (default true). Set false for a pure offline syntax+disposable check (no network, faster).
Try in playground →