Start by creating an account here and get your API key.
Every request to the API requires an API key to be provided in the x-api-key
header.
Depending on your plan, you have a limit on the number of API calls you can make per month. The API will also return different data depending on your plan:
Plan | Monthly limit | Detailed bank info | Bulk enabled | Max IBANs per bulk validation |
---|---|---|---|---|
Free | 300 | No | No | - |
Starter | 10,000 | Yes | No | - |
Pro | 50,000 | Yes | Yes | 100 |
Business | Unlimited | Yes | Yes | 2,000 |
details.bank
field will always be null for Free plan users.Base URL: https://api.pocketbase.io
POST - /iban/validate/:iban
Validate an IBAN.
Example request:
curl --location "https://api.secureiban.com/iban/validate/DE22100100100021788102" \
--header "Content-Type: application/json" \
--header "x-api-key: YOUR_API_KEY" \
--request POST
Example response:
{
"details": {
"account_number": "00100021788102",
"bank": {
"address": "BUNDESKANZLERPLATZ 6",
"bic": "PBNKDEFF",
"city": "BONN",
"meta": {
"bank_code": "10010010",
"confidence": "high",
"method": "specific"
},
"name": "Deutsche Bank AG - Postbank Branch",
"phone": "",
"sepa_b2b": true,
"sepa_cor": true,
"sepa_cor1": false,
"sepa_scc": true,
"sepa_sct": true
},
"bank_code": "10010010",
"bban": "100100100021788102",
"country_code": "DE",
"country_name": "Germany",
"currency_code": "EUR"
},
"iban": "DE22100100100021788102",
"message": "Valid IBAN Number",
"valid": true,
"validations": [
{
"code": "BASIC_FORMAT",
"message": "Valid IBAN format",
"valid": true
},
{
"code": "COUNTRY_CODE",
"message": "Valid country code",
"valid": true
},
{
"code": "LENGTH",
"message": "Valid length",
"valid": true
},
{
"code": "CHECKSUM",
"message": "Valid checksum",
"valid": true
},
{
"code": "BBAN_FORMAT",
"message": "Valid BBAN format",
"valid": true
}
]
}
POST - /iban/validate/bulk
Validate a list of IBANs at once.
Example request
curl --location "https://api.secureiban.com/iban/validate/bulk" \
--header "Content-Type: application/json" \
--header "x-api-key: YOUR_API_KEY" \
--request POST \
--data '{"ibans": ["DE22100100100021788102", "DE2210010010002178810"]}'
Example response
{
"count": 2,
"results": [
{
"details": {
"account_number": "00100021788102",
"bank": null,
"bank_code": "10010010",
"bban": "100100100021788102",
"country_code": "DE",
"country_name": "Germany",
"currency_code": "EUR"
},
"iban": "DE22100100100021788102",
"message": "Valid IBAN Number",
"valid": true,
"validations": [
{
"code": "BASIC_FORMAT",
"message": "Valid IBAN format",
"valid": true
},
{
"code": "COUNTRY_CODE",
"message": "Valid country code",
"valid": true
},
{
"code": "LENGTH",
"message": "Valid length",
"valid": true
},
{
"code": "CHECKSUM",
"message": "Valid checksum",
"valid": true
},
{
"code": "BBAN_FORMAT",
"message": "Valid BBAN format",
"valid": true
}
]
},
{
"details": null,
"iban": "DE2210010010002178810",
"message": "Invalid IBAN Number",
"valid": false,
"validations": [
{
"code": "BASIC_FORMAT",
"message": "Valid IBAN format",
"valid": true
},
{
"code": "COUNTRY_CODE",
"message": "Valid country code",
"valid": true
},
{
"code": "LENGTH",
"message": "IBAN length should be 22",
"valid": false
}
]
}
]
}
GET - /balance
Get detailed information about your plan such as the number of API calls left, available features and more.
Example response
{
"api_calls": 1,
"bulk_enabled": false,
"bulk_limit": 0,
"limit": 300,
"plan": "free"
}