DE ♦ EN (Theano GmbH)  » Countries

Forgot password?


New customer? Register

Supported Countries

Move the mouse pointer over any country to make the map zoomable (with the mouse wheel) and draggable (left mouse button).


Orange: supported by our web service.
Dark blue: SEPA country without complete support by our web service.
Medium blue: IBAN country (not SEPA), not yet completely supported by us.
Light blue: Partial IBAN country, not yet completely supported by us.

Country domestic account number validation? bank code validation? BICs available?
Albania no yes yes¹
Austria yes yes yes¹
Belgium yes yes yes¹
Bosnia and Herzegovina yes yes yes¹
Bulgaria no yes yes¹
Croatia yes yes yes¹
Czech Republic yes yes yes¹
Denmark no yes yes¹
Estonia yes yes yes¹
Finland yes yes yes¹
France yes yes yes¹
Georgia no yes yes¹
Germany yes yes yes¹
Hungary yes yes yes¹
Ireland yes yes yes³
Israel no yes yes¹
Italy yes yes yes³
Kazakhstan no yes yes¹
Kosovo yes yes yes¹
Latvia no yes yes¹
Liechtenstein yes yes yes¹
Lithuania no yes yes¹
Luxembourg no yes yes¹
Malta no yes yes¹
Monaco yes yes yes¹
Netherlands yes no yes
Norway yes yes yes¹
Poland no yes yes²
Portugal yes yes yes³
Romania no yes yes¹
San Marino yes yes yes³
Serbia yes yes yes¹
Slovakia yes yes yes¹
Slovenia yes yes yes¹
Spain yes yes yes¹
Sweden yes yes yes¹
Switzerland yes yes yes¹
Turkey no yes yes¹
United Arab Emirates no yes yes¹
United Kingdom yes yes yes¹

¹ These BICs are regularly copied from an official directory (usually from the national bank). If a BIC is defined for some bank code, we will return this one unique BIC.

² These BICs are also regularly copied from an official directory. However, there are bank codes for which more than one BIC is defined. In such a case, we return all possible BIC candidates, so you might have to figure out which one is the correct one.

³ These BICs are regularly updated by combining two official directories, one with BICs and bank names, and another one with bank names and bank codes. We join these directories based on the bank names. Some occasional errors might occur as a result due to naming inconsistencies. Also, the BICs are not always unique, and you might need to determine which one out of several candidates is correct.

Whenever we return several BIC candidates, we always first return short ones (with 8 instead of 11 significant digits). Usually these shorter BICs are good candidates.

Data subscription

We collect publicly available data about BICs and bank codes and aggregate them into one large, international database which is checked for updates every day.

Please contact us if you would like to buy a subscription with the possibility of daily downloads. Prices can be found here.

Data format, record structure

Sweden is not included (for technical reasons).
For the Netherlands (optional add-on), we provide a table whose format is explained below.
For all other countries listed with a "yes" in the BIC column in the table above, we provide a CSV file (alternatively, a file with fixed field widths) with the following fields:
RecordID, CountryCode, bankcode, branch category, bank name, bank city, bank street, BIC, modification marker, additional BIC candidates.
- RecordID: a number we have assigned to the record. We aim to keep it constant over the life of a record (where that fails, we generate a record deletion and new record creation event).
- CountryCode: 2-letter ISO code
- branch category: space character if unknown, otherwise 1=headquarters, 2=one level below that, 3=another level below that (3 currently occurs for CH/LI only)
- modification marker: A=Added since your last export, D=Deleted, M=Modified, U=Unchanged
- additional BIC candidates: for countries where we cannot provide a unique BIC code for every bank code, we list other possibilities here. The BIC field contains the most likely BIC. That BIC is not repeated in the "additional BIC candidates" field.

The optional extra file for the Netherlands has these columns:
- beginning of prefix range
- end of prefix range
- percentage
The prefix ranges might overlap (if the percentage is below 100). To determine the most likely BIC for a Dutch account, pad it with leading zeros to 10 characters, then cut off the first six characters. If the first two characters are "00", this is a former Postbank account, now ING. The BIC code is then INGBNL2A. If the first two characters are not "00", determine the records for which the first six characters lie within the prefix range. The BIC (or, if you are unlucky, several BICs) can then be found in the BIC column of matching records, along with a percentage which gives an indication of the likelihood.


We update the database as soon as we notice a change in the source directories from which it is compiled. For some countries, the delay is close to zero (if we know about changes in advance), for some countries it is a day or two, and for some we simply import in regular intervals (once a month or so, which can lead to a few weeks' delay).
As an overall result, the data can change on any day.
Subscribers can pick their own preferred update interval.

License in a nutshell

We give you a license to use the data within your own organization, by arbitrarily many users at once. We do not give you the right to give significant portions of the data to third parties. Enriching data from third parties with our data is possible, though (for instance, adding a BIC to an already known account number record).