IBAN format · CH

Swiss IBAN format

The Swiss IBAN format is defined by ISO 13616 and is fixed for every account opened in Switzerland. A Swiss IBAN is always 21 characters long and uses the structure pattern 5!n12!c: 5 digits (0–9), then 12 characters (A–Z, 0–9). The first two characters are the country code CH, the next two are MOD 97 check digits, and the remaining 17 characters form the BBAN, which Switzerland divides into 2 fields. This page breaks down each field, shows a worked CH IBAN, and explains how the check digits are computed.

Country code
CH
Total length
21 chars
Check-digit algo
MOD 97-10
ISO 13616 pattern
5!n12!c
5 digits (0–9), then 12 characters (A–Z, 0–9)

Structure breakdown

The Switzerland BBAN (positions 5–21) is the country-specific part of the IBAN and is 17 characters long. Switzerland splits it into 2 fields: Field 1 is 5 digits; Field 2 is 12 characters. The exact meaning of each field (bank code, branch, account number) is defined by Switzerland's national registry and is stable, so any CH IBAN that matches the pattern and length is structurally valid even before the MOD 97 check.

Country code
ISO 3166 — Switzerland
CH
Check digits
MOD 97-10 checksum
93
BBAN field 1
5 digits · digits (0–9)
00762
BBAN field 2
12 characters · alphanumeric (A–Z, 0–9)
011623852957

The table below applies the 5!n12!c pattern to a real, MOD 97-valid Swiss IBAN (CH9300762011623852957). Each row shows one field of the IBAN — country code, check digits, then the BBAN fields in order — so you can see exactly how the CH IBAN is assembled. This is the same breakdown the IBAN validator produces when you paste a Swiss IBAN.

Swiss IBAN examples by bank

Bank-specific Swiss IBAN examples are useful for testing parsers because the national skeleton stays constant while the BBAN values change. The table below gives three distinct, deterministic fixtures labelled for UBS, Credit Suisse, Zürcher Kantonalbank. They are generated to match the Switzerland pattern (5!n12!c), exact 21-character length, and MOD 97-10 checksum; they are not live accounts and must never be used to send funds. In production, copy the beneficiary's complete IBAN from an official bank document rather than trying to derive one from a public BIC or a bank name. Compare the rows field by field. The country prefix and two check digits occupy positions 1–4 in every row, while the BBAN fields carry the bank's national routing and account data. A parser should preserve every leading zero, retain letters where the pattern allows them, and avoid assuming that all European IBANs have the same length. These fixtures are intentionally different so automated tests can catch code that accidentally hard-codes one sample value or validates only the prefix. When documenting a bank integration, record the source and date of any real example separately from these synthetic fixtures. Banks merge branches, change correspondent arrangements, and may publish different BICs for head office and specialist offices. The IBAN format page can confirm structure; only the account holder or receiving bank can confirm that a particular IBAN is open and ready to receive a payment.

Synthetic IBAN fixtures for common Switzerland banks
BankBIC/SWIFTSynthetic IBAN fixtureChecks
UBSConfirm with the receiving bankCH96123451234EFGH567821 chars · MOD 97 valid
Credit SuisseConfirm with the receiving bankCH5023456234EFGH5678A21 chars · MOD 97 valid
Zürcher KantonalbankConfirm with the receiving bankCH053456734EFGH5678AB21 chars · MOD 97 valid

Swiss IBAN check digits

Positions 3–4 of a Swiss IBAN hold two MOD 97-10 check digits. ISO 13616 computes them by rearranging the IBAN so the BBAN leads and the country code plus check digits trail, converting letters to numbers (A=10 … Z=35), and taking the giant resulting integer mod 97. The check digits are chosen so the whole IBAN leaves a remainder of 1. If any single character in the CH IBAN is mistyped, the remainder changes and validation fails — which is why the format checker on this page can flag a typo from one wrong digit.

What makes a Swiss IBAN valid

A Swiss IBAN is structurally valid only when it passes three independent checks at once. First, the character set: the first two characters must be the letters CH, the next two must be digits, and the BBAN may contain only digits and uppercase letters. Second, the length: the CH IBAN must be exactly 21 characters, because Switzerland fixes its BBAN at 17 characters and ISO 13616 fixes the country code and check digits at four. Third, the MOD 97 checksum. The 5!n12!c pattern adds one more layer — it confirms the BBAN splits into 2 fields of the right size and type, so a Swiss IBAN with the right total length but the wrong internal split still fails. This is why the format checker on this page is stricter than a generic length-only check.

Using a Swiss IBAN in an international transfer

Use this Swiss IBAN format reference as one step in a complete international-transfer workflow. First ask the beneficiary for the legal account name, complete IBAN, receiving-bank SWIFT/BIC, bank address, currency, and payment reference. Normalize the IBAN to uppercase without spaces for the payment payload, but show four-character groups when a person reviews it. Confirm that the first two characters are CH, the value is exactly 21 characters, and every BBAN field follows 5!n12!c. Then open the Switzerland SWIFT/BIC directory to select the receiving bank's published code. Do not substitute a domestic clearing number, card number, or branch phone number for an IBAN. If the bank portal offers separate fields for bank code, branch, and account number, follow that bank's documented split; never guess from character positions alone. Some portals require an 8-character BIC, while others accept the 11-character branch form. Preserve an 11-character BIC exactly as supplied and do not append XXX unless the bank instructs you to. Before submitting, run the normalized value through the validator and save the result with the invoice or transfer reference. A valid MOD 97 result proves only syntax and arithmetic. It cannot check sanctions screening, account status, beneficiary-name matching, currency restrictions, or correspondent-bank rules. For a first payment or a last-minute change of bank details, verify the instruction through a known phone number or secure banking channel. If a transfer is rejected, give support the exact submitted IBAN, BIC, value date, and return reason; editing digits until the checksum passes can route money to the wrong account.

Common Swiss IBAN format mistakes

Most Switzerland IBAN format errors come from a handful of avoidable mistakes. Pasting a domestic Switzerland account number instead of the IBAN is the most common: the IBAN always starts with CH and is exactly 21 characters, while a local account number is usually shorter and has no country prefix. Dropping or adding a character when copying from a statement is next; because the length is fixed, even one extra digit fails. Confusing the country code with a similar one changes both the expected length and the check digits, so the whole IBAN fails. Including spaces in the stored value is harmless when a checker normalizes input, but can break payment forms that count characters literally — strip spaces before submitting the CH IBAN. The internal BBAN boundaries matter as much as the total length. Switzerland defines field 1 (5 digits), field 2 (12 alphanumeric characters); do not move a leading zero from one field to the next or convert an alphanumeric field to a number in your database. A spreadsheet may silently trim zeroes, an OCR scan may change O to 0, and a copy from a PDF may insert a non-breaking space. Normalize only approved separators, convert letters to uppercase, then validate the complete value again. Never “repair” a failed checksum by changing random digits: request a fresh beneficiary instruction from the bank. For QA, keep negative fixtures for Swiss IBANs: one value with the wrong country prefix, one that is 20 characters, one that is 22 characters, one with an illegal symbol, and one with a single changed check digit. A robust parser should reject all five and accept the grouped human display form after removing spaces. A mathematically valid checksum still does not prove that a bank account exists, belongs to the named beneficiary, or accepts the intended currency, so operational verification remains essential.

Swiss IBAN and SWIFT codes

When you send or receive an international payment to Switzerland, the IBAN tells the network which account to credit, and the bank's SWIFT/BIC code tells it which bank holds that account. After checking the CH IBAN format here, open the Switzerland SWIFT codes page to find the receiving bank's BIC and complete the wire instructions.

Switzerland IBAN overview →View CH IBAN example →Validate this CH IBANFind SWIFT code from an IBAN →Generate a test IBAN →