---
title: "Get a single customer bank account"
method: GET
path: "/customer_bank_accounts/{customer_bank_account_id}"
tags: ["Customer Bank Account"]
---

# Get a single customer bank account

`GET /customer_bank_accounts/{customer_bank_account_id}`

## Request

- Base URL: `https://api.gocardless.com`
- URL: `https://api.gocardless.com/customer_bank_accounts/{customer_bank_account_id}`
- Auth: HTTP bearer

Retrieves the details of an existing bank account.

## Path parameters

- `customer_bank_account_id` string, required

## Headers

- `GoCardless-Version` string, required

## Response `200`

Successful response

- CustomerBankAccountSingleResourceResponse
  - `customer_bank_accounts` CustomerBankAccount: Customer Bank Accounts hold the bank details of a [customer](https://docs.gocardless.com/docs/api-reference/customer). They always belong to a [customer](https://docs.gocardless.com/docs/api-reference/customer), and may be linked to several Direct Debit [mandates](https://docs.gocardless.com/docs/api-reference/mandate). Note that customer bank accounts must be unique, and so you will encounter a `bank_account_exists` error if you try to create a duplicate bank account. You may wish to handle this by updating the existing record instead, the ID of which will be provided as `links[customer_bank_account]` in the error response. _Note:_ To ensure the customer's bank accounts are valid, verify them first using [bank_details_lookups](https://docs.gocardless.com/docs/api-reference/bank-details-lookup#perform-a-bank-details-lookup), before proceeding with creating the accounts
    - `id` string: Unique identifier, beginning with "BA".
    - `created_at` string, date-time: Fixed [timestamp](https://docs.gocardless.com/docs/api-reference/data-conventions#dates-and-times), recording when this resource was created.
    - `account_holder_name` string: Name of the account holder, as known by the bank. The full name provided when the customer is created is stored and is available via the API, but is transliterated, upcased, and truncated to 18 characters in bank submissions. This field is required unless the request includes a [customer bank account token](https://docs.gocardless.com/docs/collect-payments/integration-types/javascript-drop-in-flow).
    - `account_number_ending` string, nullable: The last few digits of the account number. Currently 4 digits for NZD bank accounts and 2 digits for other currencies.
    - `account_type` 'savings' | 'checking', nullable: Bank account type. Required for USD-denominated bank accounts. Must not be provided for bank accounts in other currencies. See [local details](https://docs.gocardless.com/docs/api-reference/local-bank-details#united-states) for more information.
    - `country_code` string, nullable: [ISO 3166-1 alpha-2 code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements). Defaults to the country code of the `iban` if supplied, otherwise is required.
    - `currency` string, nullable: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) currency code. Currently "AUD", "CAD", "DKK", "EUR", "GBP", "NZD", "SEK" and "USD" are supported.
    - `bank_name` string, nullable: Name of bank, taken from the bank details.
    - `bank_account_token` string, nullable: A token to uniquely refer to a set of bank account details. This feature is still in early access and is only available for certain organisations.
    - `enabled` boolean: Boolean value showing whether the bank account is enabled or disabled.
    - `metadata` CustomerMetadata: Key-value store of custom data. Up to 3 keys are permitted, with key names up to 50 characters and values up to 500 characters.
    - `links` CustomerBankAccountLinks
      - `customer` string: ID of the [customer](https://docs.gocardless.com/docs/api-reference/customer) that owns this bank account.
    - `trusted_recipient` boolean: Whether this customer bank account is registered as a trusted recipient for Outbound Payments. Only present when the feature is enabled for the organisation.
    - `payer_name_verification_result` 'full' | 'close' | 'cannot_perform_verification': The result of the payer name verification check performed when the bank account was created. Only present if a check was performed. - `full`: The name provided matches the name held by the bank. - `close`: The name provided is a close but not exact match to the name held by the bank. - `cannot_perform_verification`: A verification was attempted but could not be completed. This can happen for a number of reasons, including the account holder's bank not participating in the verification scheme, the account not being eligible for verification (e.g. the account holder has opted out), or the bank details not being resolvable, among others.

## Other responses

- `400`: Bad Request
- `401`: Unauthorised
- `404`: Not found
- `422`: Validation Error
- `500`: Internal Error

---

[API](https://skmtc.dev/gocardless/apis/gocardless-api.md) - [All operations](https://skmtc.dev/gocardless/apis/gocardless-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gocardless/apis/gocardless-api/revisions/4dd3dae45364?raw)
