CMB, HSBC, CITI Swift Code

I love to study all kinds of “code”, since it is a perfect combination of society and computer technology. I don’t like to use addresses that is readable by human, since it is not accurate, and a computer code of whatever kind is attractive to me. I have studied the code on Shanghai taxi, Chinese car plate and PNR on all airline tickets.


SWIFT standards for Society of Worldwide Interbank Financial Telecommunication (source). It is just like an international post code for banks to identify another bank.

Just as there are 6 digits for Chinese post code, the SWIFT is a 8 digit code (with option 3 more code attached).

The first four characters are bank code.

The following four are city name – two for country, and two for city. The country part follows ISO 3166-1 alpha-2, or to be easier, the top level domain name for the country.

Then the additional 3 can be branch offices, with default value to XXX – the primary office.

Bank Codes

Here is my collection of codes of banks.

DEUT = Deutsche Bank

HSBC = HSBC (Hong Kong-Shanghai Banking Cooperation) – nice name

CITI = CITI (Citi Bank) – nice name

CMBC = CMB (China Merchant Bank)

PCBC = China Construction Bank

BKCH= Bank of China – bad code

Bank of Agriculture

COMM = Bank of Communications – good name

ICBK = Bank of Industry and Commerce – really bad code since ICBC was taken

This is a handy tool to look up all the names and codes.

Country and City

In China, it is always CN. So CN… CN… CN… for the foreign and local banks in China.

The city code is weird, since there is no standard code for each city in each country, so it is very confusing. It seems there are different code for the same city.

There are at least two ways to say Shanghai: SH or SX.

There are two ways to say Beijing: BJ or BX.

I saw BS as in CMBCCNBS050 for CMBC

Final Examples

For international wire transfer, the following are the best bet with sources from their websites. Disclaimer: Never trust a non-office website like this one when you want to wire money.


Bank of China = BKCHCNBJ

HSBC = HSBCCNSH – the best swift code I saw so far – clear and simple.

Citibank = CITICNSX – What is SX? Is it Shanghai?

Old Technology?

When I started to transfer money, I am using CMB Online Bank, and PayPal, and Alipay. It is all electronic, and the destination is accurately identified by an email address or an account number.

Using bank transfer, you not only need to provide the account name, account number, and also the ADDRESS of the bank, and many other information. It seems to be complicated. I just feel the bank system is slow moving – just because of the network effect of existing infrustructure, like SWIFT, it is very hard for other system and more advanced system to replace it. It just takes time and some opportunities.

5 thoughts on “CMB, HSBC, CITI Swift Code

  1. The International Bank Account Number (IBAN) is an international standard for identifying bank accounts across national borders. It was originally adopted by the European Committee for Banking Standards, and was later adopted as an international standard under ISO 13616:1997 and now as ISO 13616:2007. The official IBAN registrar under ISO 13616:2003 is SWIFT and the IBAN registry is currently at SWIFT.

    The IBAN was originally developed to facilitate payments within the European Union but the format is flexible enough to be applied globally.

    The IBAN consists of a ISO 3166-1 alpha-2 country code, followed by two check digits and up to thirty alphanumeric characters for the domestic bank account number (incorporating routing information), called the BBAN (Basic Bank Account Number). It is up to each country’s national banking community to decide on the length of the BBAN for accounts in that country, but its length must be fixed for any given country.

    The IBAN should not contain spaces when transmitted electronically. However, when printed on paper, the IBAN is expressed in groups of four characters separated by a single space, the last group being of variable length.


  2. hmm… since you travel alot. why not list all the airport codes such as PVG, BKK, SHA, LAX, CKG, etc.

Leave a Reply

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