---
title: "Creates a bank transaction"
method: POST
path: "/bank-transactions"
tags: ["Bank Transactions"]
---

# Creates a bank transaction

`POST /bank-transactions`

Inserts a single bank feed line such as a wire, ACH, or adjustment when automated imports miss a statement row.
Specify the hosting bank account and value dates so cash reporting matches what treasury already booked externally.

## Request body

- CreateBankTransactionRequest
  - `bank_account_id` string, uuid, required
  - `date` string, date, required
  - `name` string, required — Transaction description
  - `merchant` string, required — Merchant or counterparty name
  - `net_amount` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
    - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
    - `currency` string, required — Currency code following ISO-4217
  - `fee` RoundedMonetaryAmount — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
    - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
    - `currency` string, required — Currency code following ISO-4217
  - `pending` boolean — Whether the transaction is still pending
  - `excluded` boolean — Whether the transaction is excluded from reconciliation
  - `external_references` ExternalReference[]
    - `type` string, required
    - `id` string, required
    - `url` string, uri

## Response `200`

OK

- BankTransaction
  - `id` string, uuid, required
  - `bank_account_id` string, uuid, required
  - `subsidiary_id` string, uuid, required
  - `date` string, date, required
  - `name` string, required — Transaction description
  - `merchant` string, required — Merchant or counterparty name
  - `net_amount` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
    - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
    - `currency` string, required — Currency code following ISO-4217
  - `fee` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
    - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
    - `currency` string, required — Currency code following ISO-4217
  - `pending` boolean, required — Whether the transaction is still pending
  - `excluded` boolean, required — Whether the transaction is excluded from reconciliation
  - `external_references` ExternalReference[]
    - `type` string, required
    - `id` string, required
    - `url` string, uri

## Other responses

- `default` — Error

---

[API](https://skmtc.net/rillet/apis/rillet-accounting-api.md) · [All operations](https://skmtc.net/rillet/apis/rillet-accounting-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rillet/rillet-accounting-api/versions/a2ab794dd5f2/schema)
