Identity & Verification

IBAN and bank details validation API

Catch payment details mistakes before a transfer fails. Send an IBAN, a BIC and a US routing number in any combination and get the exact problem, the bank code and account number, SEPA membership and whether the BIC matches the IBAN country.

Category Identity & Verification
Endpoints 1
Key Features 4
Frequently asked questions 4

Used by people at these companies

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeLLM Pulse

Trust signals before you integrate

Transparent docs, authenticated requests, and visible reliability details make it easier to evaluate DomScan before you ship.

Live Service status

Check live service health and documented failure responses before you integrate.

OpenAPI API artifacts

OpenAPI, Swagger, Postman, CLI, SDK, and MCP links are one click away.

API keys Protected access

Authenticated endpoints use API keys with clear credit costs before you call them.

10,000 Free allowance

Start with 10,000 monthly credits and upgrade only when usage grows.

What this API helps you ship

Use this page as a production brief: endpoints, examples, response shape, and the workflow pieces needed to plug DomScan into your own product.

Product workflows

Embed domain checks, DNS intelligence, risk signals, or enrichment into onboarding, search, and internal tools.

Analyst automation

Replace repeated manual lookups with scheduled jobs, alerting, and reproducible investigation steps.

Clean JSON data

Use predictable fields, documented status codes, and credit costs instead of scraping provider pages.

AI and ops tooling

Feed agents, dashboards, SOAR playbooks, and CRMs through OpenAPI, SDK, Postman, or MCP.

Integration workflow

A simple path from first request to repeatable production usage.

1
Authenticate once

Send your API key with the documented header and keep requests consistent across services.

2
Query with examples

Start from the curl and HTTP samples, then map the parameters into your application code.

3
Operate and monitor

Use status codes, credit costs, and response fields to build retries, logs, and alerts.

Developer kit

Jump from this page into machine-readable docs, request collections, SDKs, or agent tooling.

Parameters and response map

Scan the inputs, output fields, and status codes before wiring the endpoint into your client.

Request parameters

Parameter

ibanbicrouting_number
Response fields

Example response

validibaniban.validiban.ibaniban.iban_printiban.country_codeiban.bank_codeiban.account_numberiban.sepaiban.checksiban.checks.lengthiban.checks.structure
Status coverage

HTTP status codes

200400401402409422429

Endpoints

POST /v1/bank/validate
Credits: 1Authentication: Authentication required

Trust signals before you integrate

Transparent docs, authenticated requests, and visible reliability details make it easier to evaluate DomScan before you ship.

Live Service status

Check live service health and documented failure responses before you integrate.

OpenAPI API artifacts

OpenAPI, Swagger, Postman, CLI, SDK, and MCP links are one click away.

API keys Protected access

Authenticated endpoints use API keys with clear credit costs before you call them.

10,000 Free allowance

Start with 10,000 monthly credits and upgrade only when usage grows.

Key Features

Every IBAN country

Country, length, national account format and ISO 7064 check digits for every country in the IBAN registry, plus territories that use a parent country's format.

Bank code and account number

A valid IBAN is split into bank code, branch code and account number, in both electronic and print formats.

BIC and routing numbers

BIC/SWIFT structure and country, test codes, and US ABA routing numbers with their check digit and Federal Reserve district.

Private by design

Validation runs offline. Account numbers are never sent to a third party and are not kept in request logs.

Example request

POST /v1/bank/validate bash
curl -X POST -H "X-API-Key: $DOMSCAN_API_KEY" -H "Content-Type: application/json" \
  -d '{"iban": "DE89 3704 0044 0532 0130 00", "bic": "COBADEFFXXX"}' \
  "https://domscan.net/v1/bank/validate"

Example response

200 OK json
{
  "valid": true,
  "iban": {
    "valid": true,
    "iban": "DE89370400440532013000",
    "iban_print": "DE89 3704 0044 0532 0130 00",
    "country_code": "DE",
    "bank_code": "37040044",
    "account_number": "0532013000",
    "sepa": true,
    "checks": { "length": "pass", "structure": "pass", "checksum": "pass" }
  },
  "bic": { "valid": true, "bic": "COBADEFFXXX", "institution_code": "COBA", "country_code": "DE" },
  "bic_iban_country_relation": "same",
  "signals": []
}

Frequently asked questions

Does a valid IBAN prove the account exists?

No. It proves the IBAN is correctly formed, which catches almost every typing mistake. Only the account holder's bank can confirm that the account is open and whose it is.

What happens when the BIC is from another country?

The result carries a signal, never an error, because some payments legitimately use a BIC from another country. Territories such as Guernsey, Jersey or the French overseas departments are recognised.

Do you return the bank name?

No. There is no free, complete and official directory of bank names, so the API returns the bank and branch codes from the IBAN instead.

How many credits does it cost?

One credit per request, whether you send an IBAN, a BIC, a routing number or all three.

Related tools and resources

HTTP status codes

These are the HTTP status codes to handle, so you can tell apart successful responses, auth issues, credits, rate limits, missing data, and upstream failures.

OK 200

Request successful

Bad Request 400

Invalid parameters

Unauthorized 401

Missing or invalid API key/session.

Payment Required 402

Not enough credits to run this request.

HTTP 409 409

These are the HTTP status codes to handle, so you can tell apart successful responses, auth issues, credits, rate limits, missing data, and upstream failures.

HTTP 422 422

These are the HTTP status codes to handle, so you can tell apart successful responses, auth issues, credits, rate limits, missing data, and upstream failures.

Too Many Requests 429

Rate limit exceeded