---
title: "Updates a bank_transaction"
method: PUT
path: "/api/v1/bank_transactions/{id}"
tags: ["bank_transactions"]
---

# Updates a bank_transaction

`PUT /api/v1/bank_transactions/{id}`

## Request

- Base URL: `https://demo.invoiceninja.com`
- URL: `https://demo.invoiceninja.com/api/v1/bank_transactions/{id}`
- Auth: none declared. Required headers: `X-API-TOKEN`, `X-Requested-With`
- TypeScript: <https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/docs/api/v1/bank_transactions/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

Handles the updating of a bank_transaction by id

## Path parameters

- `id` string, string, required

## Query parameters

- `include` string

## Headers

- `X-API-TOKEN` string, required
- `X-Requested-With` string, required

## Response `200`

Returns the bank_transaction object

- BankTransaction
  - `id` string: The bank integration hashed id
  - `user_id` string: The user hashed id
  - `transaction_id` integer: The id of the transaction rule
  - `amount` number: The transaction amount
  - `currency_id` string: The currency ID of the currency
  - `account_type` string: The account type
  - `description` string: The description of the transaction
  - `category_id` integer: The category id
  - `category_type` string: The category description
  - `base_type` string: Either CREDIT or DEBIT
  - `date` string: The date of the transaction
  - `bank_account_id` integer: The ID number of the bank account

## Other responses

- `401`: Authentication error
- `403`: Authorization error
- `422`: Validation error
- `429`: Rate Limit Exceeded
- `5XX`: Server error
- `default`: Unexpected Error

## Changes

- **2026-04-20** `69a36036d334`: 1 info
  - the response optional property `id` became read-only for the status `200`
- **2024-06-06** `8e82a2bd77e0`: 2 breaking, 14 info
  - the response's body type changed from no type to `object` for status `200`
  - the response's body type changed from no type to `object` for status `default`
  - added the optional property `account_type` to the response with the `200` status
  - added the optional property `amount` to the response with the `200` status
  - …12 more
- **2024-06-05** `e61df65649e2`: 2 breaking, 14 warning
  - the response's body type changed from `object` to no type for status `200`
  - the response's body type changed from `object` to no type for status `default`
  - removed the optional property `account_type` from the response with the `200` status
  - removed the optional property `amount` from the response with the `200` status
  - …12 more
- **2024-03-09** `9772f0a059b2`: 1 info
  - added the non-success response with the status `429`
- **2024-03-07** `71171a40d629`: 5 breaking, 19 info
  - the response's body type changed from no type to `object` for status `200`
  - the response's body type changed from no type to `object` for status `401`
  - the response's body type changed from no type to `object` for status `403`
  - the response's body type changed from no type to `object` for status `422`
  - …20 more

[Operation history](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/changes/api/v1/bank_transactions/:id/put.md)

---

[API](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference.md) - [All operations](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/revisions/bcda1f823746?raw)
