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

# List transactions

`GET /transactions`

List transactions

## Query parameters

- `type` 'payment' | 'transfer' | 'refund' | 'all' — Filter by transaction type.
- `limit` integer — Maximum results per page.
- `cursor` string — Cursor from the previous page.
- `counterpartyPartyId` string — Restrict results to transactions whose payment counterparty is this party.
- `walletId` string — Restrict results to transactions visible through this wallet.
- `customerPartyId` string — Restrict results to delegated activity performed for this customer, not activity involving it as a payment counterparty.
- `delegated` boolean — When true, return only transactions an agent performed for a connected customer.

## Headers

- `X-Instance-ID` string, nullable

## Response `200`

Successful Response

- object
  - `data` object[], required
    - `type` 'transaction', required — Resource type. Always `transaction`.
    - `id` string, required — Transaction ID (txn_*).
    - `attributes` object, required
      - `amount` integer, required — Amount in cents.
      - `currency` string, required — Currency code.
      - `status` string, required — Transaction status.
      - `createdAt` string, required — RFC 3339 timestamp when this transaction was created.
      - `transactionType` 'payment' | 'transfer' | 'refund', required — Transaction type.
      - `direction` 'INBOUND' | 'OUTBOUND', required — Direction relative to your party.
      - `description` string, nullable, required — Transaction description.
      - `updatedAt` string, nullable, required — RFC 3339 timestamp when this transaction was last updated, or null.
      - `expectedAvailableAt` string, nullable, required — RFC 3339 timestamp when the funds are expected to be available, or null when unknown.
    - `relationships` object, required
      - `sourceParty` object, required — Source party.
        - `data` object, nullable, required — Related resource identifier.
          - `type` 'party', required — Resource type. Always `party`.
          - `id` string, required
      - `destinationParty` object, required — Destination party.
        - `data` object, nullable, required — Related resource identifier.
          - `type` 'party', required — Resource type. Always `party`.
          - `id` string, required
      - `payment` object — Related payment, when accessible.
        - `data` object, required — Related resource identifier.
          - `type` 'payment', required — Resource type. Always `payment`.
          - `id` string, required
      - `cardPayment` object — Related card payment, when accessible.
        - `data` object, required — Related resource identifier.
          - `type` 'cardPayment', required — Resource type. Always `cardPayment`.
          - `id` string, required
      - `refund` object — Related refund, when accessible.
        - `data` object, required — Related resource identifier.
          - `type` 'refund', required — Resource type. Always `refund`.
          - `id` string, required
      - `transfer` object — Related transfer, when accessible.
        - `data` object, required — Related resource identifier.
          - `type` 'transfer', required — Resource type. Always `transfer`.
          - `id` string, required
      - `wallet` object — Wallet through which this transaction is visible.
        - `data` object, required — Related resource identifier.
          - `type` 'wallet', required — Resource type. Always `wallet`.
          - `id` string, required
  - `meta` object, required
    - `pagination` object, required
      - `hasMore` boolean, required — Whether more results are available.
      - `nextCursor` string, nullable, required — Cursor for the next page, or null when there are no more results.

## Other responses

- `400` — Validation Error
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found. Returned when the resource does not exist, or when it exists but is not accessible to your account. The two cases are intentionally indistinguishable, so that resource IDs cannot be enumerated by probing.
- `409` — Conflict
- `422` — Validation Error. The response contains one error object for each invalid request value.
- `428` — Precondition Required
- `429` — Too Many Requests
- `500` — Internal Server Error
- `501` — Not Implemented
- `502` — Bad Gateway
- `503` — Service Unavailable

## Changes

- **2026-09-18** `fd694514e004` — 1 info
  - added the optional property `data/items/relationships/refund` to the response with the `200` status
- **2026-09-10** `6baf737b9baa` — 1 warning, 1 info
  - added the new `refund` enum value to the `data/items/attributes/transactionType` response property for the response status `200`
  - added the new enum value `refund` to the `query` request parameter `type`
- **2026-09-04** `440d168c49de` — 1 info
  - added the optional property `data/items/relationships/cardPayment` to the response with the `200` status
- **2026-09-02** `c7c12da5915f` — 12 info
  - added the optional property `errors/items/meta/limitScope` to the response with the `400` status
  - added the optional property `errors/items/meta/limitScope` to the response with the `401` status
  - added the optional property `errors/items/meta/limitScope` to the response with the `403` status
  - added the optional property `errors/items/meta/limitScope` to the response with the `404` status
  - …8 more
- **2026-08-27** `359d267dca88` — 1 info
  - deleted the `header` request parameter `X-Agent-ID` with deprecation

[Full history](https://skmtc.dev/natural/apis/natural-api/changes/transactions/get.md)

---

[API](https://skmtc.dev/natural/apis/natural-api.md) · [All operations](https://skmtc.dev/natural/apis/natural-api/llms.txt) · [OpenAPI document](https://skmtc.dev/natural/apis/natural-api/revisions/b61b8441fba4?raw)
