apyhub
β–£ FINANCE Β· STANDARD DATA

Advanced IBAN Validation API

What it does

IBAN Validator checks an International Bank Account Number and returns a simple validation response. Send an iban string and get back an envelope with success and code, plus any additional module blocks the service includes.

Use it when you need to confirm account numbers before payment initiation, onboarding, or bank-detail storage. It fits workflows where a frontend form, backend service, or support tool needs a quick yes/no validation result without parsing the IBAN format yourself.

The service also includes an IBAN Countries endpoint at /countries, which returns the same response envelope. Use it to retrieve the country-related IBAN reference data exposed by the API.

What it does

IBAN Validator checks an International Bank Account Number and returns a simple validation response. Send an iban string and get back an envelope with success and code, plus any additional module blocks the service includes.

Use it when you need to confirm account numbers before payment initiation, onboarding, or bank-detail storage. It fits workflows where a frontend form, backend service, or support tool needs a quick yes/no validation result without parsing the IBAN format yourself.

The service also includes an IBAN Countries endpoint at /countries, which returns the same response envelope. Use it to retrieve the country-related IBAN reference data exposed by the API.

β–£ ENDPOINT 01 / 02
GET
IBAN Validation
https://api.eu.apyhub.com/quadlem/iban-validation/iban-validate

QUICKSTART

GUIDE

Quickstart

Use the following request to validate an IBAN and retrieve associated banking, country, compliance, and risk information.

curl -X GET "https://api.eu.apyhub.com/quadlem/iban-validation/iban-validate?iban=DE89370400440532013000" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

A successful request returns structured information about the IBAN, including its validity, bank details, country information, compliance checks, fraud signals, and confidence score.

{
  "success": true,
  "valid": true,
  "input": "DE89370400440532013000",
  "bank": {
    "name": "Example Bank",
    "bic": "EXAMPLEXXX"
  },
  "country": {
    "code": "DE",
    "name": "Germany",
    "currency": "EUR"
  },
  "sepa": {
    "is_sepa_country": true,
    "instant_payment": true
  },
  "compliance": {
    "fatf_status": "clean",
    "ofac_flag": false
  },
  "fraud_signals": {
    "risk_score": 0,
    "risk_level": "minimal"
  },
  "confidence": {
    "score": 85,
    "grade": "B"
  }
}

Note: The complete response also includes additional modules such as routing, payment_networks, fx, payroll_suitability, account_format, financial_stability, formatted, and other enriched metadata.

TRY ITLIVE Β· 40 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab β€” never sent to orbit or saved.

About this endpoint

What it does

Validates an IBAN and returns a full risk, routing, and compliance profile β€” checksum validation, bank identification, SEPA/SWIFT reachability, sanctions/FATF status, fraud and account-structure signals, and payroll/open-banking suitability.

Query Parameter(s)

AttributeTypeMandatoryDescription
ibanStringYesThe IBAN to validate.

Response

AttributeTypeDescription
successBooleanWhether the request succeeded.
validBooleanWhether the IBAN passed checksum/format validation.
inputStringThe IBAN as submitted.
ibanObjectNormalized IBAN details (electronic/friendly format, length, check digits).
bankObjectBank identification (name, BIC, code, status).
countryObjectIssuing country (code, name, currency).
sepaObjectSEPA reachability (credit transfer, direct debit, instant payment).
complianceObjectSanctions/FATF status.
routingObjectRecommended payment method and settlement speed.
payment_networksObjectSupported rails (SWIFT, SEPA, ACH, etc.).
fraud_signalsObjectVirtual/neobank flags and risk score.
account_signalsObjectStructural anomaly checks.
confidenceObjectOverall confidence score/grade.
formattedObjectDisplay-ready IBAN and bank details block.
(+more)ObjectAdditional modules: correspondent_banking, regulatory, beneficiary_verification, open_banking, fx, direct_debit_rules, islamic_finance, central_bank, payroll_suitability, account_format, iban_recycling, swift_gpi, financial_stability, bank_history.

Query parameters

Name
Type
Description
ibanREQUIRED
string
β€”
β–£ ENDPOINT 02 / 02
GET
IBAN Countries
https://api.eu.apyhub.com/quadlem/iban-validation/countries

QUICKSTART

GUIDE

Quickstart

Use the following request to retrieve the complete list of supported countries and territories.

curl -X GET "https://api.eu.apyhub.com/quadlem/iban-validation/countries" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

A successful request returns the total number of supported countries along with details such as the country code, country name, currency, and flag.

{
  "success": true,
  "code": 200,
  "count": 250,
  "countries": [
    {
      "country_code": "DE",
      "country_name": "Germany",
      "currency": "EUR",
      "flag": "πŸ‡©πŸ‡ͺ"
    },
    {
      "country_code": "US",
      "country_name": "United States",
      "currency": "USD",
      "flag": "πŸ‡ΊπŸ‡Έ"
    },
    {
      "country_code": "AQ",
      "country_name": "Antarctica",
      "currency": null,
      "flag": "πŸ‡¦πŸ‡Ά"
    }
  ]
}

Note: The complete response includes all 250 supported countries and territories, each with its ISO country code, display name, currency (where applicable), and flag.

TRY ITLIVE Β· 10 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab β€” never sent to orbit or saved.

About this endpoint

What it does

Returns the full list of countries and territories supported for IBAN/ISO validation, along with each country's ISO code, name, currency, and flag emoji. Takes no parameters.

Query Parameter(s)

None.

Response

AttributeTypeDescription
successBooleanWhether the request succeeded.
codeIntegerNumeric response code.
countIntegerTotal number of countries returned.
countriesArrayList of country objects.
countries[].country_codeStringISO alpha-2 country code.
countries[].country_nameStringCountry name.
countries[].currencyString or nullISO currency code (null where not applicable, e.g. Antarctica).
countries[].flagStringFlag emoji.

Parameters

No parameters.
β–£ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.