GET
/
validateIBAN
curl --request GET \
  --url https://greipapi.com/validateIBAN \
  --header 'Authorization: Bearer <token>'
{
  "data": {
    "isValid": true,
    "formats": {
      "machine": "BE71096123456769",
      "human": "BE71 0961 2345 6769",
      "obfuscated": "BE** **** **** 6769"
    },
    "country": {
      "name": "Belgium",
      "IANA": "be",
      "ISO3166": "BE",
      "currency": "EUR",
      "centralBank": {
        "url": "http://www.nbb.be/",
        "name": "National Bank of Belgium"
      },
      "membership": "eu_member",
      "isEU": true,
      "length": "16",
      "isSEPA": true,
      "swiftOfficial": true
    }
  },
  "status": "success",
  "executionTime": 1
}

Query Parameters

iban
string
required

The International Bank Account Number (IBAN) you want to validate.

Sample value: BE71096123456769, or BE71 0961 2345 6769.

format
string
default: "JSON"

The format command is used to get a response in a specific format.

Expected values: JSON, XML, CSV, or Newline

For more information please refer to Response Format.

mode
string
default: "live"

The mode command is used to in the development stage to simulate the integration process before releasing it to the production environment.

Expected values: live, or test.

For more information please refer to Development Environment.

userID
string

The userID command can be used to identify requests sent by specific users to monitor in the Events Page.

Expected values: email address, phone number, user id, name, etc.

For more information please refer to User Identifier.

callback
string

The callback command can help you make the response as a JSONP format.

Expected values: any name that can be used as a function name in Javascript, e.g: myFunctionName.

For more information please refer to JSONP Callback.

{
  "data": {
    "isValid": true,
    "formats": {
      "machine": "BE71096123456769",
      "human": "BE71 0961 2345 6769",
      "obfuscated": "BE** **** **** 6769"
    },
    "country": {
      "name": "Belgium",
      "IANA": "be",
      "ISO3166": "BE",
      "currency": "EUR",
      "centralBank": {
        "url": "http://www.nbb.be/",
        "name": "National Bank of Belgium"
      },
      "membership": "eu_member",
      "isEU": true,
      "length": "16",
      "isSEPA": true,
      "swiftOfficial": true
    }
  },
  "status": "success",
  "executionTime": 1
}

Response properties

data
object
required
isValid
boolean
required

A boolean value that you can rely on to determine if the IBAN is valid or not.

formats
object
required
machine
string
required

Machine format of the IBAN.

human
string
required

Human-readable format of the IBAN.

obfuscated
string
required

Obfuscated format of the IBAN.

country
object
required
name
string
required

Country name where the issuing bank is located.

IANA
string
required

The IANA of the country.

ISO3166
string
required

Country code in ISO3166 format.

currency
string
required

Currency of the country.

centralBank
string
required
name
string
required

The name of the central bank of the issuing country.

url
string
required

The URL of the central bank of the issuing country.

membership
string
required

Membership type of the bank.

isEU
boolean
required

Determines whether the user is located within the European Union (EU) and is relevant for processing transactions or validations specific to EU countries.

length
string
required

IBAN length in this country.

isSEPA
boolean
required

Indicates whether the IBAN belongs to a country participating in the Single Euro Payments Area (SEPA)

swiftOfficial
boolean
required

Typically indicates whether the IBAN corresponds to an official institution or entity that is part of the SWIFT network, which facilitates international financial transactions.

status
string
required

The response status.

Expected values: success, or error.

executionTime
integer
required

Time spent in milliseconds to process the data.

Overview

The IIN (Issuer Identification Number), also known as the BIN (Bank Identification Number), is the first 6 digits of a debit or credit card number. These unique numbers are used to identify the issuing entity, such as the bank or financial institution that issued the card.

One of the most common and critical use cases of this method is to detect and prevent fraud payments in your app or website. This is an essential task for any business that accepts online payments, as fraud can lead to significant financial losses and reputational damage.

For example, if you notice a user from the UK purchasing large amounts of your product, and the card used for payment is issued by a bank located in the US, this could be a red flag. This may indicate that the user is using a stolen or fraudulent card to complete the checkout process. By flagging such transactions for review or rejection, you can prevent fraud and protect your business from financial loss.