# IBAN Check

> IBAN Check is a paid API for AI agents from 402.com.tr, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-09).

Validates an IBAN offline by checking country registry length, structure, and ISO 7064 mod-97 checksum, returning normalized form, country, SEPA membership, and bank identifier.

## Facts

- Endpoint: GET https://402.com.tr/api/x402/iban-check?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-09
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/iban-check-a873d14f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_wyzN6sI9HUCGDCxZ3i9Uu

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability iban-check-a873d14f
```

Example prompt: Can you validate this IBAN for me — DE89370400440532013000 — and tell me if it's structurally correct, which country it belongs to, and whether it's SEPA-eligible?

## When to prefer this

Use this endpoint when you need a fast, offline structural validation of an IBAN before initiating a payment or cleaning financial data. It is ideal for catching human entry errors like transposed digits, dropped characters, or O-for-0 substitutions. It does not confirm account existence, so pair it with a live bank API if account existence verification is also required.

## Known failure modes

- Invalid IBAN with named failing check (length mismatch, structural pattern failure, or mod-97 checksum error)
- Malformed or empty input returns error indicating missing or invalid IBAN parameter
- Unsupported or unrecognized country prefix may limit bank identifier extraction but still validates checksum

## How this service works

Validate an IBAN offline: country registry length, structure, and the ISO 7064 mod-97 checksum that catches what humans and spreadsheets actually get wrong — a transposed pair, a dropped character, an O typed for a zero. Returns the normalised and print-formatted forms, country, SEPA membership, and the bank identifier where the layout is known. Every rejection names WHICH check failed, so you know whether to fix the row or drop it. Structure only: a valid IBAN is not proof the account exists.

## Output

Returns the normalized and print-formatted IBAN, the country it belongs to, SEPA membership status, and the bank identifier if the country layout is known. On failure, specifies which check failed (length, structure, or mod-97 checksum) so the caller knows precisely what is wrong.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "iban"
     ],
     "properties": {
      "iban": {
       "type": "string",
       "description": "IBAN"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/iban-check-a873d14f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 402.com.tr](https://www.zero.xyz/host/402.com.tr/llms.txt)
