---
title: "Get transaction"
method: GET
path: "/transactions/{transactionId}"
tags: ["Transactions"]
---

# Get transaction

`GET /transactions/{transactionId}`

Get a transaction

## Path parameters

- `transactionId` string, required — Transaction ID (txn_*).

## Query parameters

- `customerPartyId` string — Defaults to your party. To act for another party, pass the ID of a party that has authorized you to act on its behalf.

## 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. A chargeback row is `COMPLETED` once the disputed amount is debited from your wallet, and `RETURNED` if that amount is released back to you, as when you win the case.
      - `createdAt` string, required — RFC 3339 timestamp when this transaction was created.
      - `transactionType` 'payment' | 'transfer' | 'refund' | 'chargeback', required — Transaction type. A `chargeback` row is the disputed amount of a card payment chargeback, debited from your wallet.
      - `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. On a chargeback row, the disputed payment.
        - `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
      - `chargeback` object — The chargeback case a chargeback row debits for.
        - `data` object, required — Related resource identifier.
          - `type` 'chargeback', required — Resource type. Always `chargeback`.
          - `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

## 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-26** `ca3882d75a00` — 1 warning, 1 info
  - added the new `chargeback` enum value to the `data/attributes/transactionType` response property for the response status `200`
  - added the optional property `data/relationships/chargeback` to the response with the `200` status
- **2026-09-23** `bcf3b028c3e5` — 1 warning, 1 info
  - deleted the `query` request parameter `partyId`
  - added the new optional `query` request parameter `customerPartyId`
- **2026-09-18** `fd694514e004` — 1 info
  - added the optional property `data/relationships/refund` to the response with the `200` status
- **2026-09-10** `6baf737b9baa` — 1 warning
  - added the new `refund` enum value to the `data/attributes/transactionType` response property for the response status `200`
- **2026-09-04** `440d168c49de` — 1 info
  - added the optional property `data/relationships/cardPayment` to the response with the `200` status

[Full history](https://skmtc.dev/natural/apis/natural-api/changes/transactions/:transactionId/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/ca3882d75a00?raw)
