snaptxt.app
Blog
Validators3 min readNovember 3, 2026

What Is a BSB Number, and How Do You Check One?

An Australian BSB — Bank State Branch — is the six-digit code that routes a payment to the right bank and branch, and it trips people up because, unlike most identifiers, it has no check digit. You can't validate a BSB with arithmetic. Here's what the number actually means and how to check one properly.

What the six digits encode

A BSB is written as XXX-XXX and breaks down like this:

  • First digit — the bank/institution group.
  • First two or three digits — identify the specific financial institution. 06 is Commonwealth Bank, 03/73 is Westpac, 01 is ANZ, 08 is NAB, and so on.
  • Remaining digits — identify the state and the individual branch.

Because the meaning is assigned, not computed, there's no checksum to run. A BSB is valid only if it actually appears in the official register that APCA (now AusPayNet) publishes — the list of every allocated BSB and the branch it belongs to.

Why "BSB validation" is really a lookup

This is the key difference from an ABN, TFN, or ACN. Those have a checksum, so you can tell a well-formed number from a malformed one with math alone. A BSB has none — 999-999 is a perfectly plausible-looking six digits that simply isn't allocated to anyone. So checking a BSB means two things:

  1. Format — exactly six digits, usually shown as XXX-XXX.
  2. Allocation — the prefix maps to a real institution, and ideally the full code exists in the register.

A tool can confirm the format and identify the bank from the prefix instantly; confirming the exact branch requires the current register.

Testing payment forms

When you're testing a form that captures a BSB, you want real, well-known prefixes so your institution-lookup logic has something to match (e.g. 062-000 for CBA). Inventing a random six digits will often "pass format" but map to no bank, which is useful for testing your rejection path. Keep both kinds in your fixtures: valid-prefix codes for the happy path, unallocated ones for the error path.

Try it

The Australian BSB Validator checks a BSB's format and identifies the bank from its prefix, entirely in your browser with nothing sent to a server. If you also handle NZ payments, the New Zealand bank account validator covers that format.

guideaustraliabanking
H

Hanuman Singh · built snaptxt.app · hanumansingh.dev