NewConnect Claude, Gemini, ChatGPT, and other AI agents to API Ninjas via our MCP server

BSB API

The BSB API is a comprehensive BSB lookup and BSB checker tool. Validate any 6-digit Australian BSB number and retrieve the associated bank, branch, address, and supported payment systems.

A BSB (Bank-State-Branch) number is a 6-digit code that identifies the bank and branch holding an Australian bank account, usually written as two groups of three digits separated by a hyphen (e.g. 062-000). It is used to route domestic Australian payments via Direct Entry, RTGS, and the New Payments Platform (NPP).

Looking up bank codes in other countries? See our Routing Number API (US), Canada Routing Number API, and Sort Code API (UK).

Available endpoints:

  • /v1/bsblookup - Look up an Australian bank branch by BSB number
  • /v1/bsbsearch - Search for Australian branches by bank name and location
(4.5)

From 3,018 users

2,900+

Applications using this API

API Status

Online - All Systems Operational

API Response Times

Average
P50
P75
P90
P95
387ms408ms450ms837ms1173ms

Didn't find what you were looking for? Suggest an improvement


/v1/bsblookup GET

https://api.api-ninjas.com/v1/bsblookup

Returns detailed information about an Australian bank branch based on its BSB number.

Parameters

  • bsb  required

    The 6-digit Australian BSB number, with or without a hyphen (e.g. 062-000 or 062000).

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of objects, each containing the following fields, or an error if the request is unsuccessful.

  • bank_name premium only

    The name of the bank.

  • bsb

    The 6-digit BSB number, hyphenated.

  • branch_name premium only

    The name of the branch.

  • street_address premium only

    The street address of the branch.

  • suburb

    The suburb of the branch.

  • state

    The Australian state or territory code (e.g. NSW, VIC, QLD).

  • postcode

    The 4-digit Australian postcode of the branch.

  • country

    Always AU.

  • phone_number premium only

    The customer service phone number of the bank.

  • direct_entry_supported premium only

    Whether the branch supports Direct Entry (DE) payments — the Australian equivalent of ACH.

  • rtgs_supported premium only

    Whether the branch supports RTGS (Real-Time Gross Settlement) wire transfers via RITS.

  • npp_supported premium only

    Whether the branch supports the New Payments Platform (NPP) for instant payments and PayID.

  • swift_code premium only

    The SWIFT/BIC code of the bank, useful for international wire transfers. May be null if the bank does not participate in SWIFT. See our SWIFT Code API for full SWIFT lookups.

Sample Request Live Demo!

bsb

Try our APIs in the API playground

Sign up for a free API key to get started — no credit card required.

https://api.api-ninjas.com/v1/bsblookup?bsb=062-000

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON
[
    {
      bank_name:"COMMONWEALTH BANK OF AUSTRALIA",
      bsb:"062-000",
      branch_name:"48 Martin Place Sydney",
      street_address:"48 Martin Place",
      suburb:"Sydney",
      state:"NSW",
      postcode:"2000",
      country:"AU",
      phone_number:"13 22 21",
      direct_entry_supported:true,
      rtgs_supported:true,
      npp_supported:true,
      swift_code:"BKWAAU6P"
    }
]

Code Examples

1 2 curl -X GET "https://api.api-ninjas.com/v1/bsblookup?bsb=062-000" \ -H "X-Api-Key: YOUR_API_KEY"

If your programming language is not listed in the Code Example above, you can still make API calls by using a HTTP request library written in your programming language and following the above documentation.


/v1/bsbsearch GETPremium Only

https://api.api-ninjas.com/v1/bsbsearch

Search for Australian bank branches and their BSB numbers by bank name and location. Returns a list of branches matching the search criteria.

At least one of the parameters listed below is required. Each request can only return up to 10 results - use the offset parameter to paginate through results.

Parameters

  • bank_name  optional

    Bank name to search for.

  • suburb  optional

    Suburb to search for branches.

  • state  optional

    Australian state or territory code (e.g. NSW, VIC, QLD).

  • postcode  optional

    4-digit Australian postcode to search for branches.

  • offset  optional annual subscriptions only

    Number of results to offset for pagination.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of objects, each containing the same fields as the previous response , or an error if the request is unsuccessful.

Sample Search Request Live Demo!

bank_name
suburb
state
postcode
offset

Try our APIs in the API playground

Sign up for a free API key to get started — no credit card required.

https://api.api-ninjas.com/v1/bsbsearch?bank_name=Commonwealth+Bank

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Search Response

JSON
[
    {
      bank_name:"COMMONWEALTH BANK OF AUSTRALIA",
      bsb:"062-000",
      branch_name:"Sydney CBD",
      street_address:"48 Martin Place",
      suburb:"Sydney",
      state:"NSW",
      postcode:"2000",
      country:"AU",
      phone_number:"13 22 21",
      direct_entry_supported:true,
      rtgs_supported:true,
      npp_supported:true,
      swift_code:"CTBAAU2S"
    },
    {
      bank_name:"COMMONWEALTH BANK OF AUSTRALIA",
      bsb:"062-001",
      branch_name:"Pitt Street Sydney",
      street_address:"175 Pitt Street",
      suburb:"Sydney",
      state:"NSW",
      postcode:"2000",
      country:"AU",
      phone_number:"13 22 21",
      direct_entry_supported:true,
      rtgs_supported:true,
      npp_supported:true,
      swift_code:"CTBAAU2S"
    },
    "..."
]

Frequently Asked Questions

  • Yes, but you must have a premium subscription. Commercial use of the BSB API is not permitted on the free tier. See our pricing page to choose a plan that fits your needs.
  • Sign up for a free account to instantly get your API key, then pass it in the X-Api-Key header on every request. The documentation above includes ready-to-run examples in cURL, Python, JavaScript, Node.js, and more.
  • Your API requests will simply be denied once you hit your monthly quota — you will never be charged more than the plan you signed up for. To increase your quota, you can upgrade your plan any time on our pricing page.
  • The API responds with a standard HTTP status code and a JSON error message describing the problem. See our error codes reference for the full list of codes and how to resolve each one, or contact support if you need help.
  • Send a GET request to the /v1/bsblookup endpoint with the bsb parameter set to the 6-digit BSB number, supplied either with a hyphen (062-000) or without (062000). It returns the matching branch's bank_name, branch_name, street_address, suburb, state, and postcode.
  • Use the /v1/bsbsearch endpoint (premium only), which accepts any combination of the bank_name, suburb, state, and postcode parameters and returns up to 10 matching branches per request; use the offset parameter to paginate through additional results. See pricing for premium access.
  • Each response indicates whether the branch supports the three main Australian rails via the direct_entry_supported (the equivalent of ACH), rtgs_supported (Real-Time Gross Settlement wire transfers via RITS), and npp_supported (New Payments Platform instant payments and PayID) fields, all of which are premium only.
  • Yes, the response includes a swift_code field with the bank's SWIFT/BIC code, though it may be null if the bank does not participate in SWIFT; for full SWIFT lookups see our SWIFT Code API.