Where are BIC/SWIFT and IBAN codes mandatory?

You’ll need to quote BIC and IBAN codes when sending International Payments to the following 47 countries:

* All EU and EEA countries: Austria, Belgium, Bulgaria, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Republic of Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, The Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden and UK

* the following non EU and EEA countries: Andorra, Bahrain, Georgia, Greenland, Jordan, Kuwait, Lebanon, Moldova, Monaco, Pakistan, Palestine, Qatar1, Saudi Arabia, Switzerland, Tunisia and United Arab Emirates.

IBAN is the acronym for ISO 13616 standard compliant International Bank Account Number. All IBANs have a fixed length of 30 characters. SWIFT or BIC codes are routing international identifiers of banks to transfer orders.  Cross border payments must indicate BIC up to 1st February, 2016. After that date the BIC will not be required. IBAN / BIC are linked due to Regulation 260/2012. The SEPA Regulation states that the use of the IBAN and BIC is mandatory when making SEPA compliant payments and direct debits.
IBAN BIC countries by www.mintme.com 2014

Map of the IBAN BIC countries by www.mintme.com 2014

As you can see on the map above, the are where the use of BIC and IBAN is compulsory is larger than the SEPA or the Single Euro Payments Area. This is made of the 28 EU member states, the four members of the EFTA (Iceland, Liechtenstein, Norway and Switzerland), Monaco and San Marino.

The code used to plot this map on R was:

# These are the ISO3 names of the countries you’d like to plot in red
theCountries <- c(“AND”,”AUT”,”BHR”,”BEL”,”BGR”,”CYP”,”CZE”,”DNK”,”EST”,”FIN”,”FRA”,”GEO”,”DEU”,”GRC”,

# malDF is a data.frame with the ISO3 country names plus a variable to
# merge to the map data
malDF <- data.frame(country = c(“AND”,”AUT”,”BHR”,”BEL”,”BGR”,”CYP”,”CZE”,”DNK”,”EST”,”FIN”,”FRA”,”GEO”,”DEU”,”GRC”,
swift = c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1))

# This will join your malDF data.frame to the country map data
malMap <- joinCountryData2Map(malDF, joinCode = “ISO3”,nameJoinColumn = “country”)
# 47 codes from your data successfully matched countries in the map
# 0 codes from your data failed to match with a country code in the map
# 198 codes from the map weren’t represented in your data

# And this will plot it, with the trick that the color palette’s first
# color is red
mapCountryData(malMap, nameColumnToPlot=”swift”, catMethod = “categorical”,
missingCountryCol = gray(.8))
inspired by BenBarnes at Stackoverflow.com

Leave a Reply

Your email address will not be published. Required fields are marked *