---
title: "List transactions"
method: GET
path: "/transactions"
tags: ["Transactions"]
---

# List transactions

`GET /transactions`

## Query parameters

- `page` integer
- `perPage` integer
- `status` union
  - string
  - string[]
- `category` union
  - string
  - string[]
- `vendor` union
  - string
  - string[]
- `payer` string[]
- `budget` string[]
- `card` string[]
- `currency` string[]
- `min_amount` number
- `max_amount` number
- `from` string, date-time
- `to` string, date-time
- `search` string
- `team` string

## Response `200`

OK

- object
  - `message` string, required
  - `status` boolean, required
  - `error` boolean, required
  - `data` object
    - `transactions` Transaction[]
      - `code` string
      - `amount` integer — Minor units
      - `currency` string
      - `narration` string, nullable
      - `description` string, nullable
      - `status` string
      - `created_at` string, date-time
      - `updated_at` string, date-time
      - `category` Category — Expense category
        - `code` string
        - `name` string
        - `description` string, nullable
        - `slug` string, nullable
        - `status` string
        - `isSubCategory` boolean
        - `parent` Category — recursive
        - `children` Category[]
      - `recipient` union
        - Vendor — Supplier / payee
          - `code` string
          - `name` string
          - `email` string, email, nullable
          - `description` string, nullable
          - `type` 'business' | 'individual', nullable
          - `status` string
          - `categories` Category[]
            - `code` string
            - `name` string
            - `description` string, nullable
            - `slug` string, nullable
            - `status` string
            - `isSubCategory` boolean
            - `parent` Category — recursive
            - `children` Category[]
        - User
          - `code` string
          - `firstName` string
          - `lastName` string
          - `middleName` string, nullable
          - `email` string, email
          - `name` string — Display name
          - `status` string
          - `role` string, nullable
      - `payer` User
        - `code` string
        - `firstName` string
        - `lastName` string
        - `middleName` string, nullable
        - `email` string, email
        - `name` string — Display name
        - `status` string
        - `role` string, nullable
      - `initiator` User
        - `code` string
        - `firstName` string
        - `lastName` string
        - `middleName` string, nullable
        - `email` string, email
        - `name` string — Display name
        - `status` string
        - `role` string, nullable
      - `integrationSync` object — Sync state
      - `fee` number, nullable
      - `assets` Asset[] — Present if key has `assets.read`
        - `code` string
        - `name` string, nullable — Filename
        - `created_at` string, date-time
        - `url` string, uri — Short-lived signed URL (do not cache)
    - `meta` PaginationMeta
      - `page` integer
      - `perPage` integer
      - `total` integer
      - `hasMore` boolean
      - `nextPage` integer, nullable

## Other responses

- `401` — Unauthorized

---

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