# Check a list of BIC and IBAN codes at once

> Paste a spreadsheet column of BICs and IBANs, or IBAN and BIC pairs, and get a reason for every failing row, duplicates flagged, and a CSV to fix the source file.

- Page: https://swiftcodelookup.com/check-a-list-of-bic-and-iban-codes/
- Official rule or bank page: [Swift, ISO 13616 IBAN Registry, and SWIFT BIC policy (January 20, 2023)](https://www.swift.com/swift-resource/11971/download)
- Read on: 2026-10-30
- Registry data as JSON: https://swiftcodelookup.com/data/check-a-list-of-bic-and-iban-codes.json

The checker on this page runs in the visitor's browser and applies published rules only: the BIC format of ISO 9362, the Swift IBAN Registry and the modulo 97 test.

## Why check a whole list

Supplier files, payroll exports and customer forms collect bank details typed by hand. One wrong character can bounce a payment days later, with fees on the way out and back. Checking the column before a payment run takes seconds, and the browser does all the work: nothing is uploaded, which matters when the file holds other people's account numbers.

## What you can paste

- **One code per line.** Each line is recognized as an IBAN (longer than 11 characters, or starting with two letters and two digits) or as a BIC.
- **An IBAN and a BIC on the same line,** separated by a tab, comma, semicolon or vertical bar. That is what you get when you copy two adjacent columns from a spreadsheet. The row is then also checked as a pair.
- **A header row** such as "IBAN" or "BIC;IBAN" is skipped.
- Up to 2,000 rows.

## What each row is checked against

| Code | Checks |
|---|---|
| BIC | 8 or 11 characters; letters in positions 1 to 6, letters or digits after that (the 4!a 2!a 2!c [3!c] format in SWIFT's policy); characters 5 and 6 a real ISO 3166-1 country code; position 8 = 0 flagged as a test and training code |
| IBAN | Country in the Swift IBAN Registry; exact length and pattern for that country; modulo 97 check digits |
| IBAN + BIC on one row | Same country; for countries whose IBAN holds a four-letter bank code, the same letters at the start of the BIC |
| Whole list | Repeated rows, marked "same as row N" |

Sources: [Swift IBAN Registry](https://www.swift.com/swift-resource/11971/download), [SWIFT BIC policy](https://www2.swift.com/knowledgecentre/rest/v1/publications/bic_policy/3.0/bic_policy.pdf), [Swift ISO 9362 information paper](https://www.swift.com/swift-resource/9586/download).

## One code, start to finish
The list pre-filled above has ten rows. What the tool says about four of them:

| Row | Pasted | Result |
|---|---|---|
| 4 | GB82WEST12345698765423 | Fails: length and pattern fine for the UK, check digits do not add up; the reason lists the few positions to look at, including 21–22, where two digits are swapped |
| 5 | GB29NWBK60161331926819 (tab) NWBKGB2L | Passes as a pair: both GB, and NWBK appears in both |
| 7 | NWBK GB 2L | Passes: spaces are removed, NWBKGB2L is a valid shape |
| 9 | CHASUS33 | Passes, and flagged as the same as row 8 |

Row 10, AB12, fails with "Length is 4 characters: 4 too few for an 8-character code".

## Using the result

- **Show only rows with a problem** to work through the failures.
- **Copy rows with a problem** puts row number, code and reason on the clipboard, tab-separated, ready to paste into an email to whoever owns the file.
- **Download results (CSV)** gives every row with its country and reason. Cells that start with =, +, - or @ are prefixed with an apostrophe so a spreadsheet does not run them as formulas.

## What it cannot tell you

A row that passes is well formed. The code may still be unassigned or closed, and the account may belong to someone else. For a large payment run, confirm new or changed details with the payee by phone, and in the euro area use your bank's [payee name check](https://swiftcodelookup.com/verification-of-payee/). If a row fails, do not "fix" an IBAN yourself by guessing a digit: a corrected-looking IBAN can be another person's real account. Ask for it again.

Single codes are easier in the [BIC checker](https://swiftcodelookup.com/) or the [IBAN checker](https://swiftcodelookup.com/iban-checksum/), which show each character.

---
SWIFT Code Guide. Errors or changed codes: contact@swiftcodelookup.com
