SWIFT BIC Code Finder Guide: Read, Check and Use Bank Identifier Codes

Sending money to another country requires more than an account number. The payment system needs to know which bank, in which country, should receive the money, and that routing information is carried by a SWIFT BIC, also called a SWIFT code or BIC. SWIFT is the messaging network banks use to communicate payment instructions, and the Business Identifier Code, BIC, is the standard identifier for a financial institution within that network, defined by the ISO 9362 standard. A finder tool helps you look up or decode a BIC, but the code itself is only useful if it is correct, current, and matched to the right account, and this guide explains how to check all three.

This guide is general information about the code format and payment practice, not advice about any particular payment. International payments involve fees, exchange rates, cut-off times, and compliance checks that vary by bank and corridor, and the receiving bank's own instructions should always govern. If a code and an account number disagree, or if anything about a payment request looks unexpected, stop and verify through a trusted channel before sending, because international payments can be difficult or impossible to recall once executed.

The structure: 8 or 11 characters

A BIC is either 8 or 11 characters long, and each group of characters has a meaning. The first four characters are the bank code, letters that identify the institution, usually an abbreviation of its name. The next two characters are the country code, following the ISO country standard, so DE means Germany, GB means the United Kingdom, and PK means Pakistan. The next two characters are the location code, usually letters or digits, which identify the city or region of the bank's head office or main processing centre. Together, those eight characters identify the institution. An optional three-character branch code follows, making eleven characters in total, and identifies a specific branch or department. When the branch code is XXX, it denotes the head office or primary office, and an 8-character BIC is generally treated as equivalent to the same code plus XXX.

A well-known example illustrates the structure. The code DEUTDEFF, for a major German bank, splits as DEUT for the bank code, DE for the country code, Germany, and FF for the location code, Frankfurt. Its eleven-character form, DEUTDEFFXXX, adds XXX for the head office. Reading a code this way lets you sanity-check it: a code whose country characters do not match the country of the bank you expect, or whose bank characters bear no resemblance to the bank's name, deserves a second look. The check is not proof, because bank codes are abbreviations that are not always obvious, but a mismatch between the country code and the expected country is a strong warning that the code belongs to a different institution or country than intended.

How to verify a BIC before sending

Verification has three layers, and all three matter. First, check the format: the code must be 8 or 11 characters, with the right character types in each position, and the country code must be a real country code. A finder tool or a bank's own directory can perform this check, and it catches typing errors, transposed characters, and codes that are the wrong length. Second, check the directory: confirm that the code is registered to the bank you intend, in the country you intend, using an official directory or the receiving bank's published details. Banks merge, rename, and close branches, and old codes circulate in outdated documents, so a code that was correct years ago may no longer be correct. Third, confirm with the recipient through a trusted channel, such as the bank's official website or a phone number you already trust, not a number supplied in the same message as the code, because payment fraud often involves supplying a plausible but wrong code.

Match the BIC to the account details as a set. An international payment usually needs the beneficiary's full name, account number or IBAN where used, the BIC, and sometimes the bank's address. The IBAN itself contains a bank identifier and a country code in many countries, and those should agree with the BIC's bank and country. If the IBAN's country differs from the BIC's country, something is wrong, and the payment should not proceed until it is resolved. Similarly, if the beneficiary name does not match the account name, many banks will flag or reject the payment, and some will still process it to the account number regardless of the name, so a name mismatch is a reason to pause, not a detail to ignore.

Worked example with sample values

Take the sample code DEUTDEFF as a worked decoding example. Split it into its groups: the first four characters are D, E, U, T, giving the bank code DEUT. The next two characters are D, E, giving the country code DE, which is Germany. The final two characters are F, F, giving the location code FF. Count the characters: 4 plus 2 plus 2 equals 8, so this is an 8-character BIC, identifying the institution without a specific branch. Its 11-character head-office form appends XXX, giving DEUTDEFFXXX, and counting again, 8 plus 3 equals 11, confirming the length. Each step is a simple count and split, but performing it explicitly catches the most common error, which is copying a code with a character missing or added, and then discovering the error only after the payment has been delayed or rejected.

Now apply the verification layers to this sample. Format: 8 characters, letters throughout, country code DE is a real country code, so the format passes. Directory: the code is registered to a German bank, so if the intended recipient bank is in Germany, the country agrees, but the bank identity must still be confirmed against the recipient's own bank, because other German banks have different bank codes. Recipient confirmation: the recipient's bank statement, official website, or branch should list the same code for the same account. If any layer fails, the payment should wait. A code that passes format but fails directory or recipient confirmation is not safe to use, because format alone only proves the code is well-formed, not that it belongs to the intended bank.

Fees, timing, and common payment details

International payments through the SWIFT network usually involve fees at more than one point, and the fee arrangement, often described by codes such as OUR, SHA, or BEN, determines who pays them. Under one arrangement, the sender bears all fees, so the recipient receives the full amount. Under another, fees are shared, so the recipient receives less than the sent amount. Under a third, the recipient bears the fees. The arrangement should be agreed with the recipient in advance, especially for payments that must arrive in full, such as invoice settlements or deposits, because a shortfall caused by fees can be mistaken for an underpayment. Exchange rates add a second variable: the rate applied, and any margin in it, affects the amount received in the recipient's currency, and it should be confirmed before sending, not assumed.

Timing depends on cut-off times, time zones, weekends, and public holidays in both countries, as well as compliance checks. A payment sent late in the day may not be processed until the next business day, and a payment to a country in a distant time zone may arrive a day later than expected even when everything is correct. Keep the payment reference, the amount, the currency, and the confirmation from your bank, and share the reference with the recipient so they can trace the payment at their end. If a payment is delayed beyond the expected time, contact your bank with the reference rather than sending a second payment, because duplicate payments are harder to untangle than delayed ones.

Common mistakes to avoid

The first mistake is copying a BIC from an unverified source, such as a message, an old invoice, or a search result, without confirming it with the receiving bank. The second is confusing a BIC with other identifiers: a BIC identifies the bank, an IBAN identifies the account, and a national sort code or routing number serves a different system, so substituting one for another will fail. The third is using an 8-character code when a specific branch code is required, or using a branch code for a closed branch. The fourth is ignoring a mismatch between the BIC country and the IBAN country, or between the beneficiary name and the account name. The fifth is assuming a valid format means a valid destination: format checks catch typos, not wrong banks. Verify format, directory, and recipient together, keep the payment reference, and treat any surprise in a payment request as a reason to pause and check through a trusted channel.

Try it next

Try the SWIFT BIC Code Finder Guide tool with your own numbers, then explore the IBAN Validator and the India IFSC Code Finder for related calculations. For a companion read, see /blog/iban-validator-guide/, which applies the same measure-carefully habit to a different problem.