API documentation
One base URL, four REST endpoints, and an MCP server. Authenticate with ?key= or an Authorization: Bearer header. Get a free key →
IBAN
Checksum (mod-97) + per-country length. Pure compute.
GET /api/v1/iban?iban=DE89370400440532013000&key=YOUR_KEY
{ "valid": true, "countryCode": "DE", "country": "Germany", "expectedLength": 22, "checksumValid": true }BIC / SWIFT
ISO 9362 format + component breakout.
GET /api/v1/bic?bic=DEUTDEFF500&key=YOUR_KEY
{ "valid": true, "bankCode": "DEUT", "countryCode": "DE", "locationCode": "FF", "branchCode": "500" }EU VAT (VIES)
Live validation via the official EU VIES service. Returns 502 if VIES is down (retry).
GET /api/v1/vat?vat=DE811569869&key=YOUR_KEY
{ "vatNumber": "DE811569869", "valid": true, "name": "…", "source": "EU VIES" }VIN (NHTSA)
Decode + validate a 17-char VIN via NHTSA vPIC.
GET /api/v1/vin?vin=1HGCM82633A004352&key=YOUR_KEY
{ "vin": "1HGCM82633A004352", "valid": true, "make": "HONDA", "model": "Accord", "modelYear": "2003" }MCP server (for AI agents)
Streamable-HTTP MCP endpoint exposing validate_iban, validate_bic, validate_vat, and decode_vin. Pass your key via the Authorization header, ?key=, or an apiKey tool argument.
MCP endpoint: https://www.checkfmt.com/mcp (POST, JSON-RPC 2.0)
{ "mcpServers": { "checkfmt": { "url": "https://www.checkfmt.com/mcp?key=YOUR_KEY" } } }Errors
401 invalid/missing key · 429 monthly limit reached · 400 missing parameter · 422 malformed input · 502 upstream relay (VIES/NHTSA) unavailable.