---
title: "Update Bank Account"
method: POST
path: "/v2/payment/bankaccount/{id}"
tags: ["Bank Accounts"]
---

# Update Bank Account

`POST /v2/payment/bankaccount/{id}`

Update an existing bank account.

## Path parameters

- `id` string, uuid, required

## Headers

- `x-on-behalf-of` string
- `x-idempotency-key` string, uuid

## Request body

- BankAccountUpdateRequest — Common bank account properties shared between request and response.
  - `account_number` string — Bank account number (e.g., IBAN).
  - `bank_name` string — Name of the bank.
  - `swift_code` string — SWIFT/BIC code of the bank.
  - `bank_country_code` string, iso-3166-1-alpha-2 — Two-letter country code (ISO 3166-1 alpha-2) of the bank.
  - `bank_address` string — Physical address of the bank.
  - `bank_code_type` 'aba' | 'bank_code' | 'sort_code' | 'bsb_code' | 'ifsc' | 'cnaps_number' — Type of bank routing code. Required based on currency and country: - `aba` - Required when currency = "USD" and bank_country_code = "US" - `bank_code` - Required when currency = "CAD" or currency = "HKD" - `sort_code` - Required when currency = "GBP" - `bsb_code` - Required when currency = "AUD" - `ifsc` - Required when currency = "INR" - `cnaps_number` - Required when currency = "CNH" and bank_country_code = "CN"
  - `bank_code_value` string — The bank identifier value. The required format depends on the selected `bank_code_type`. Accepted formats by `bank_code_type`: - `aba`: Exactly 9 digits. - `bank_code`: Exactly 3 digits. - `sort_code`: Exactly 6 digits. - `bsb_code`: Exactly 6 digits. - `ifsc`: Exactly 11 characters in the format: - First 4 characters: letters (A–Z) - 5th character: the digit 0 - Last 6 characters: letters (A–Z) or digits (0–9) - `cnaps_number`: Exactly 12 digits.
  - `bank_branch_code` string — Bank branch code. Required when currency = "CAD".

## Response `200`

Bank account updated successfully

- BankAccountResponse — Common bank account properties shared between request and response.
  - `account_number` string — Bank account number (e.g., IBAN).
  - `bank_name` string — Name of the bank.
  - `swift_code` string — SWIFT/BIC code of the bank.
  - `bank_country_code` string, iso-3166-1-alpha-2 — Two-letter country code (ISO 3166-1 alpha-2) of the bank.
  - `bank_address` string — Physical address of the bank.
  - `bank_code_type` 'aba' | 'bank_code' | 'sort_code' | 'bsb_code' | 'ifsc' | 'cnaps_number' — Type of bank routing code. Required based on currency and country: - `aba` - Required when currency = "USD" and bank_country_code = "US" - `bank_code` - Required when currency = "CAD" or currency = "HKD" - `sort_code` - Required when currency = "GBP" - `bsb_code` - Required when currency = "AUD" - `ifsc` - Required when currency = "INR" - `cnaps_number` - Required when currency = "CNH" and bank_country_code = "CN"
  - `bank_code_value` string — The bank identifier value. The required format depends on the selected `bank_code_type`. Accepted formats by `bank_code_type`: - `aba`: Exactly 9 digits. - `bank_code`: Exactly 3 digits. - `sort_code`: Exactly 6 digits. - `bsb_code`: Exactly 6 digits. - `ifsc`: Exactly 11 characters in the format: - First 4 characters: letters (A–Z) - 5th character: the digit 0 - Last 6 characters: letters (A–Z) or digits (0–9) - `cnaps_number`: Exactly 12 digits.
  - `bank_branch_code` string — Bank branch code. Required when currency = "CAD".
  - `id` string — Unique identifier (UUID) of the bank account.
  - `account_name` string — Name of the account holder.
  - `currency` string — Three-letter currency code
  - `account_status` 'Valid' | 'Invalid' — Status of the bank account. - `Valid`: The bank account is active and can be used for settlements. - `Invalid`: The bank account is inactive and cannot be used for settlements.

---

[API](https://skmtc.dev/uqpay/apis/authentication-api.md) · [All operations](https://skmtc.dev/uqpay/apis/authentication-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/uqpay/authentication-api/revisions/cef532a10777/schema)
