Getting started
Base URL
https://bankvalidation.cleariflow.com/v1/bic/
Validation endpoint
The bic endpoint requires your API key and a BIC parameter to perform comprehensive validation of Business Identifier Codes.
https://bankvalidation.cleariflow.com/v1/bic/
? api_key = YOUR_UNIQUE_API_KEY
& bic = DEUTDEFF500
This successful request validates a German BIC and returns detailed information:
{
"bic": "DEUTDEFF500",
"is_valid": true,
"country_code": "DE",
"country_name": "Germany",
"bank_code": "DEUT",
"bank_name": "Bank information not available",
"location_code": "F",
"branch_code": "500",
"details": {
"type": "BIC",
"active": true,
"institution_type": "Bank"
}
}
Request parameters
Your unique API key. Note that each user has unique API keys for each of
Cleariflow APIs, so your Bank Validation API key will not work for your Exchange
Rates API, for example.
The Business Identifier Code to validate. Spaces are allowed and will be automatically removed during processing. The BIC should follow the ISO 9362 standard format.
Response parameters
The API response is returned in a universal and lightweight JSON format.
The normalized BIC without spaces, returned in uppercase format.
Overall validation result indicating whether the BIC is valid according to all validation rules.
The two-letter ISO country code (e.g., DE for Germany, US for United States).
The full name of the country associated with the BIC.
The 4-character bank identifier code (e.g., DEUT for Deutsche Bank).
The name of the bank (currently shows “Bank information not available”).
The 2-character location code indicating the city or region (e.g., FF for Frankfurt).
The 3-character branch code (optional, may be empty for 8-character BICs).
Additional detailed information about the BIC type and status.
The type of identifier (typically “BIC”).
Whether the BIC is currently active and in use.
The type of financial institution (e.g., “Bank”, “Credit Union”).
Examples
Valid German BIC (8 characters)
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=DEUTDEFF
Response:
{
"bic": "DEUTDEFF",
"is_valid": true,
"country_code": "DE",
"country_name": "Germany",
"bank_code": "DEUT",
"bank_name": "Bank information not available",
"location_code": "FF",
"branch_code": "",
"details": {
"type": "BIC",
"active": true,
"institution_type": "Bank"
}
}
Valid German BIC (11 characters with branch)
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=DEUTDEFF500
Response:
{
"bic": "DEUTDEFF500",
"is_valid": true,
"country_code": "DE",
"country_name": "Germany",
"bank_code": "DEUT",
"bank_name": "Bank information not available",
"location_code": "FF",
"branch_code": "500",
"details": {
"type": "BIC",
"active": true,
"institution_type": "Bank"
}
}
Valid US BIC
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=CHASUS33
Response:
{
"bic": "CHASUS33",
"is_valid": true,
"country_code": "US",
"country_name": "United States",
"bank_code": "CHAS",
"bank_name": "Bank information not available",
"location_code": "33",
"branch_code": "",
"details": {
"type": "BIC",
"active": true,
"institution_type": "Bank"
}
}
Valid UK BIC
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=NWBKGB2L
Response:
{
"bic": "NWBKGB2L",
"is_valid": true,
"country_code": "GB",
"country_name": "United Kingdom",
"bank_code": "NWBK",
"bank_name": "Bank information not available",
"location_code": "2L",
"branch_code": "",
"details": {
"type": "BIC",
"active": true,
"institution_type": "Bank"
}
}
Invalid BIC
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=INVALID
Response:
{
"bic": "INVALID",
"is_valid": false,
"country_code": "",
"country_name": "",
"bank_code": "",
"bank_name": "Bank information not available",
"location_code": "",
"branch_code": "",
"details": {
"type": "BIC",
"active": true
}
}
Error handling
Missing BIC parameter
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY
Response:
{
"error": {
"message": "Missing bic",
"code": "missing_bic"
}
}
Missing API key
Request:
GET https://bankvalidation.cleariflow.com/v1/bic/?bic=DEUTDEFF500
Response:
{
"error": {
"message": "API key is required",
"code": "missing_api_key"
}
}
BIC Structure
The BIC consists of several components:
- Bank Code (4 characters): Unique identifier for the financial institution
- Country Code (2 characters): ISO 3166-1 alpha-2 country code
- Location Code (2 characters): City or region identifier
- Branch Code (3 characters): Optional branch identifier (XXX for main office)
- 8-character BIC:
DEUTDEFF (Deutsche Bank, Germany, Frankfurt)
- 11-character BIC:
DEUTDEFF500 (Deutsche Bank, Germany, Frankfurt, Branch 500)
Common location codes
- FF: Frankfurt, Germany
- 33: New York, United States
- 2L: London, United Kingdom
- PP: Paris, France
- MM: Milan, Italy
Validation Rules
The API performs comprehensive validation including:
- Length Validation: Checks if the BIC is 8 or 11 characters long
- Format Validation: Verifies the BIC follows the ISO 9362 standard
- Character Validation: Ensures only alphanumeric characters are used
- Country Code Validation: Validates the country code format
- Bank Code Validation: Checks the bank identifier format
- Bank Code: 4 alphanumeric characters
- Country Code: 2 alphabetic characters (ISO 3166-1)
- Location Code: 2 alphanumeric characters
- Branch Code: 3 alphanumeric characters (optional)
BIC vs SWIFT
BIC (Business Identifier Code) and SWIFT are often used interchangeably:
- BIC: The official ISO 9362 standard name
- SWIFT: The messaging network that popularized the code
- SWIFT Code: Alternative name for BIC
All BICs can be used for SWIFT messaging, but not all SWIFT codes are valid BICs.
Supported Countries
The API supports BIC validation for 50+ countries including:
- Europe: Germany, France, Italy, Spain, Netherlands, Belgium, Austria, Switzerland, UK, Poland
- Americas: United States, Canada, Brazil, Mexico
- Asia: Japan, Singapore, Hong Kong, Australia
- Africa: South Africa, Egypt, Nigeria
For a complete list of supported countries, see the Supported Countries page.
Use Cases
BIC validation is essential for:
- International Wire Transfers: Ensuring accurate routing information
- SEPA Payments: European payment system requirements
- Banking Applications: Customer account validation
- Financial Compliance: Regulatory reporting requirements
- Payment Processing: E-commerce and fintech applications