Compliance & Business
Live on RapidAPI & Zyla
POST /v1/eu-vat-iban/iban
Validate IBANs, BIC/SWIFT codes, and EU/UK VAT numbers with live EU VIES lookup. Validate IBAN checksums (MOD 97-10) across 80+ countries, BIC/SWIFT codes, and EU + UK VAT numbers with optional live EU VIES verification.
Additional endpoints in this module: POST /v1/eu-vat-iban/vat
POST /v1/eu-vat-iban/iban){
"ok": true,
"data": {
"valid": true,
"iban": "DE89370400440532013000",
"formatted": "DE89 3704 0044 0532 0130 00",
"country_code": "DE",
"check_digits": "89",
"bban": "370400440532013000",
"length_valid": true,
"checksum_valid": true,
"bic_valid": true,
"bic_country_match": true,
"errors": []
},
"meta": {
"request_id": "req_vat_01",
"ms": 1
}
}
curl -X POST "https://api.tinplate.dev/v1/eu-vat-iban/iban" \
-H "Content-Type: application/json" \
-H "X-RapidAPI-Key: YOUR_RAPIDAPI_KEY" \
-d '{"iban":"DE89 3704 0044 0532 0130 00","bic":"COBADEFFXXX"}'import { TinplateClient } from "@tinplate/sdk"; // npm install @tinplate/sdk
const tinplate = new TinplateClient({
rapidApiKey: process.env.RAPIDAPI_KEY!,
});
const { data, meta } = await tinplate.call("/v1/eu-vat-iban/iban", {
"iban": "DE89 3704 0044 0532 0130 00",
"bic": "COBADEFFXXX"
});
console.log(`[${meta.ms} ms]`, data);import requests
response = requests.post(
"https://api.tinplate.dev/v1/eu-vat-iban/iban",
headers={
"Content-Type": "application/json",
"X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY",
},
json={
"iban": "DE89 3704 0044 0532 0130 00",
"bic": "COBADEFFXXX"
}
)
print(response.json())const response = await fetch("https://api.tinplate.dev/v1/eu-vat-iban/iban", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY",
},
body: JSON.stringify({
"iban": "DE89 3704 0044 0532 0130 00",
"bic": "COBADEFFXXX"
}),
});
const result = await response.json();
console.log(result);{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "tinplate_eu_vat_iban",
"arguments": {
"iban": "DE89 3704 0044 0532 0130 00",
"bic": "COBADEFFXXX"
}
}
}POST /v1/eu-vat-iban/iban)| Parameter | Type & Constraints | Description |
|---|---|---|
ibanrequired |
stringminLen: 5, maxLen: 64 |
IBAN to validate (spaces allowed). |
bicoptional |
stringminLen: 4, maxLen: 16 |
Optional BIC/SWIFT code (8 or 11 characters) to validate and cross-check country. |
data Object Fields (200 OK)| Field | Type | Description |
|---|---|---|
valid |
boolean |
Field 'valid' |
iban |
string |
Field 'iban' |
formatted |
string |
Field 'formatted' |
country_code |
string |
Field 'country_code' |
check_digits |
string |
Field 'check_digits' |
bban |
string |
Field 'bban' |
length_valid |
boolean |
Field 'length_valid' |
checksum_valid |
boolean |
Field 'checksum_valid' |
bic_valid |
boolean | null |
Field 'bic_valid' |
bic_country_match |
boolean | null |
Field 'bic_country_match' |
errors |
string[] |
Field 'errors' |
Release Version: v1.0.7 ·
Last Verified / Benchmarked: 14 November 2026 ·
Latency Note: Sub-millisecond figures measure in-Worker V8 compute time (typical client HTTPS network RTT to the nearest Cloudflare PoP is 15–65 ms) ·
See Full Portfolio Benchmarks & Corpora →
| Plan | Monthly Price | Included Requests | Rate Limit | Max Request Payload | Best For |
|---|---|---|---|---|---|
| BASIC | $0.00 / month | 500 / month (hard limit) | 10 req / min | 64 KB | Evaluation, local development & CI smoke tests |
| PRO | $9.99 / month | 15,000 / month | 60 req / min | 128 KB | Solo developers & production apps |
| ULTRA | $29.99 / month | 100,000 / month | 300 req / min | 256 KB | Growing SaaS & multi-agent pipelines |
| MEGA | $79.99 / month | 500,000 / month | 1,000 req / min | 256 KB | High-volume enterprise workloads |
Yes, when both iban and bic are provided, it verifies ISO 3166 country alignment.
You still get instant offline format and check-digit validation plus a clear vies_status field instead of a 500 error.
Yes, all 27 EU member states plus XI and GB are supported.
IBAN numbers are validated purely in memory and never cached. Public EU VIES VAT company responses are cached for up to 6 hours in KV.
Worker Zero-Logging Guarantee: Cloudflare Workers Observability and invocation logging are disabled in configuration
(observability.enabled = false, head_sampling_rate = 0, invocation_logs = false). Payloads are processed strictly in volatile V8 memory and never logged or stored by Tinplate.
Marketplace Proxies vs. Direct Bearer Key: Requests sent via RapidAPI or Zyla API Hub pass through those marketplaces' proxy infrastructure (subject to their respective privacy policies). Security-sensitive workloads requiring end-to-end zero-intermediary processing can connect directly to https://api.tinplate.dev using a Direct Bearer Key (Authorization: Bearer <API_KEY>).
Read our full Privacy Notice and OpenAPI 3.0.3 JSON Schema.
POST /v1/invoice-validator
Tier 1
Audit extracted invoices for line-item math errors, VAT mismatches, and Peppol compliance.
POST /v1/hu-business-validator
Compliance & Business
Validate Hungarian adószám, cégjegyzékszám, GIRO bank accounts, and NAV invoice rules.
POST /v1/workday-holiday/between
Compliance & Business
Calculate business days and SLA deadlines across 30+ countries including HU swap Saturdays.