IBAN validation
POST/validate-iban
The IBAN validation checks an IBAN based on specific criteria including length, country code, format, checksum, structure and SEPA country recognition.
The following components of the IBAN are checked:
- Country code: verifies if the country code submitted is representing a valid country.
- Length: verifies if the IBAN length is correct for the specific country.
- Checksum: verifies that the checksum part of the IBAN is plausible towards the remainder of the IBAN.
- Structure: validates the structure of the IBAN.
In case the IBAN is valid, the following data is returned: IBAN, country code, check whether the country is part of SEPA (Single Euro Payments Area), account number, sort code and check sum.
Base URLs
SANDBOX | PRODUCTION | |
---|---|---|
API Base URL | https://ibanchecker.cons.shared.upcf.jpmmps.com/api/v1 | https://ibanchecker.shared.upcf.jpmmps.com/api/v1 |
Merchant Key | Provided by Product Solution Specialist | Provided by Customer Relationship Manager |
API Authentication Key | Provided by Product Solution Specialist | Provided by Customer Relationship Manager |
The following section will describe the procedure and results of an IBAN validation. To perform the IBAN validation, provide IBAN number.
Request
Header Parameters
Must be application/json
Must be be en-US
The origin of the request
The client making the request
- application/json
Body
required
validationRequest
object
required
Possible values: <= 34 characters
, Value must match regular expression ^[A-Z]{2}[0-9]{2}[a-zA-Z0-9]{1,30}$
IBAN number to be validated.
Responses
- 200
- 400
- 401
- 403
- 404
- 500
IBAN verified successfully
- application/json
- Schema
- Example (from schema)
- Example
Schema
validationRequest
object
required
IBAN number from the request that was validated.
Possible values: <= 34 characters
, Value must match regular expression ^[A-Z]{2}[0-9]{2}[a-zA-Z0-9]{1,30}$
IBAN number to be validated.
validationResult
object
required
Indicates whether the provided IBAN is valid.
validationDetails
object
Flags indicating which validation checks passed.
Check if the value provided as country code is a valid ISO country code.
IBAN length is correct for a specific country.
Last two digits checksum matches the calculated value.
IBAN conforms to the correct formatting of its country. For certain countries, there might be additional rules governing the structure of the IBAN, such as which specific numbers/characters appear in specific positions. This field verifies that the number/letter pattern is correct.
ibanDetails
object
Possible values: Value must match regular expression [A-Z]{2}[0-9]{2}[a-zA-Z0-9]{1,30}
The IBAN number received in the request.
Possible values: <= 34 characters
The IBAN number received in the request.
Possible values: <= 2 characters
ISO 3166-1 country provided in IBAN participates in SEPA.
Indicates if country provided in IBAN participates in SEPA.
Bank Account Number extracted from the IBAN.
Possible values: <= 8 characters
Domestic bank identifier / sort code of the bank e.g., Bankleitzahl in Germany or Code Banque & Code Guiche in France.
sepaSchemeSupport
object
Indicates if SEPA schemes available for this bank.
Indicates if SEPA credit transfer is supported.
Indicates if SEPA schemes available for this bank.
Indicates if SEPA B2B direct debit is supported.
{
"validationRequest": {
"iban": "DE89750500000000123456"
},
"validationResult": {
"isValidIban": true,
"validationDetails": {
"countryCode": true,
"length": true,
"checksum": true,
"structure": true
},
"ibanDetails": "DE89750500000000123456"
}
}
{
"validationRequest": {
"iban": "DE89750500000000123456"
},
"validationResult": {
"isValidIban": true,
"validationDetails": {
"countryCode": true,
"length": true,
"checksum": true,
"structure": true
},
"ibanDetails": {
"iban": "DE89750500000000123456",
"countryCode": "DE",
"sepaCountry": true,
"accountNumber": "0000000123456",
"sortCode": "75050000",
"checksum": "97"
}
}
}
Invalid input
- application/json
- Schema
- Example (from schema)
- Example
Schema
{
"message": "string"
}
{
"message": "Invalid IBAN format"
}
Unauthorized: no valid API key provided
- application/json
- Schema
- Example (from schema)
- Example
Schema
{
"message": "string"
}
{
"message": "Unauthorized"
}
FORBIDDEN: The API key doesn't have permissions to perform the request
- application/json
- Schema
- Example (from schema)
- Example
Schema
{
"message": "string"
}
{
"message": "Access denied"
}
Not Found
For error handling, please refer to this section.
- application/json
- Schema
- Example (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Resource not found.",
"code": "not_found"
}
]
}
Internal Server Error
For error handling, please refer to this section.
- application/json
- Schema
- Example (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Internal server error."
}
]
}