---
title: "Create multiple transactions for a user"
method: POST
path: "/transactions-collection"
tags: ["transactions"]
---

# Create multiple transactions for a user

`POST /transactions-collection`

Requires **transactions:read:all** and **transactions:write:all** scopes. A maximum of 50 transactions is imposed.

## Query parameters

- `categorise` boolean

## Request body

- object[] — List of transactions to be created or updated. Minimum 1 item required. Maximum 50 items allowed.
  - `accountId` string, required — The id of the account the transaction belongs to
  - `amount` object, required
    - `value` integer, required — The amount of the transaction in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
  - `categoryId` string, required — The category id. Standard categories are prefixed with 'std', custom categories are prefixed with 'cus'
  - `categoryIdConfirmed` boolean — Flag indicating whether the user has confirmed the category id as correct
  - `date` string, date-time, required — The date that the transaction occurred. Where available this will contain an accurate time, where the time is not available it will default to midday.
  - `longDescription` string, required — The full text description of the transactions - often as it is represented on the users bank statement
  - `shortDescription` string — A cleaned up and shorter description of the transaction, this can be edited
  - `notes` string — Arbitrary text that a user can add about a transaction
  - `status` 'posted' | 'pending' — Whether the transaction has been posted (booked) or is still a pending transaction. During the transition from pending to posted the description will normally change.
  - `projectId` string — The project ID the transaction is associated with
  - `enhancedCategories` object — Categories to enrich a transaction with
    - `uk-tax-hmrc` string — The UK HMRC Tax category to aid in tax return queries

## Response `200`

Successful Transaction Response

- object
  - `data` object[]
    - `id` string, uuid, required — The unique id of the transaction
  - `links` Links
    - `next` string, uri — The url to retrieve the next page of results from
    - `prev` string, uri — The url to retrieve the previous page of results from
    - `self` string, uri, required — The url of the current resource(s)
  - `meta` object

## Other responses

- `400` — Unsuccessful Response - Bad request - Missing query parameters - Missing body properties
- `401` — Unsuccessful Response - Not authorised - Missing authorization header - Invalid access Token
- `403` — Unsuccessful Response - Forbidden - Invalid scopes

---

[API](https://skmtc.net/moneyhub/apis/moneyhub-data-api.md) · [All operations](https://skmtc.net/moneyhub/apis/moneyhub-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/moneyhub/moneyhub-data-api/revisions/f2eb965eb9af/schema)
