---
title: "List account transactions"
method: GET
path: "/core/accounts/{accountId}/transactions"
tags: ["Transactions"]
---

# List account transactions

`GET /core/accounts/{accountId}/transactions`

## Request

- Base URL: `https://api.enterprise.sandbox.uphold.com`
- URL: `https://api.enterprise.sandbox.uphold.com/core/accounts/{accountId}/transactions`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `/core/oauth2/token` scopes: `core.accounts:read`, `core.transactions:read`
- TypeScript: <https://skmtc.dev/uphold/apis/core-api/docs/core/accounts/:accountId/transactions/get.ts> (a function with typed inputs; its response is checked against the schema)

List transactions for an account.

## Path parameters

- `accountId` string, uuid, required

## Query parameters

- `perPage` integer

## Headers

- `X-On-Behalf-Of` string
- `X-Uphold-User-Ip` union
  - string, ipv4
  - string, ipv6
- `X-Uphold-User-Agent` string
- `X-Uphold-User-Origin` string
- `X-Uphold-User-Country` string
- `X-Uphold-User-Subdivision` string
- `X-Uphold-User-City` string

## Response `200`

Transactions retrieved.

- object
  - `transactions` Transaction[], required
    - `id` string, uuid, required: The id of the transaction.
    - `origin` TransactionOriginEndpoint, required
      - `asset` string, required: The asset of the endpoint.
      - `amount` string, required: The amount of the endpoint.
      - `rate` string, required: The rate of the endpoint against its counter-part (origin to destination and vice-versa).
      - `node` union, required
        - object
          - `type` 'account', required: The type of the node.
          - `id` string, uuid, required: The account id.
          - `ownerId` string, uuid, required: The id of the user that owns the account.
        - TransactionNodeExternalAccountBank
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'bank', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
        - TransactionNodeExternalAccountCard
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'card', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the external account (e.g., 3DS).
        - TransactionNodeExternalAccountApm
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'apm', required: The rail type through which the transaction is made.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the external account (e.g., 3DS).
        - TransactionNodeExternalAccountCrypto
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'crypto', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
          - `execution` union
            - object
              - …
            - object
              - …
            - object
              - …
        - object
          - `type` 'apm', required: The type of the node.
          - `method` 'apple-pay' | 'google-pay' | 'paypal' | 'venmo', required: The alternative payment method to be used in the operation.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the APM (e.g., 3DS).
        - object
          - `type` 'bank-address', required: The type of the node.
          - `network` string, required: The network of the bank transfer.
        - object
          - `type` 'crypto-address', required: The type of the node.
          - `network` string, required
          - `address` string
          - `reference` string: The additional identifier (e.g., destination tag, memo, or message) for the crypto address.
          - `execution` union
            - object
              - …
            - object
              - …
            - object
              - …
    - `destination` TransactionDestinationEndpoint, required
      - `asset` string, required: The asset of the endpoint.
      - `amount` string, required: The amount of the endpoint.
      - `rate` string, required: The rate of the endpoint against its counter-part (origin to destination and vice-versa).
      - `node` union, required
        - object
          - `type` 'account', required: The type of the node.
          - `id` string, uuid, required: The account id.
          - `ownerId` string, uuid, required: The id of the user that owns the account.
        - TransactionNodeExternalAccountBank
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'bank', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
        - TransactionNodeExternalAccountCard
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'card', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the external account (e.g., 3DS).
        - TransactionNodeExternalAccountApm
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'apm', required: The rail type through which the transaction is made.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the external account (e.g., 3DS).
        - TransactionNodeExternalAccountCrypto
          - `type` 'external-account', required: The type of the node.
          - `id` string, uuid, required: The external account id.
          - `ownerId` string, uuid, required: The id of the user that owns the external account.
          - `via` 'crypto', required: The rail type through which the transaction is made.
          - `network` string, required: The network used for the transaction with the external account.
          - `execution` union
            - object
              - …
            - object
              - …
            - object
              - …
        - object
          - `type` 'apm', required: The type of the node.
          - `method` 'apple-pay' | 'google-pay' | 'paypal' | 'venmo', required: The alternative payment method to be used in the operation.
          - `confirmationUrl` string, uri: The URL to confirm the authorization using the APM (e.g., 3DS).
        - object
          - `type` 'bank-address', required: The type of the node.
          - `network` string, required: The network of the bank transfer.
        - object
          - `type` 'crypto-address', required: The type of the node.
          - `network` string, required
          - `address` string
          - `reference` string: The additional identifier (e.g., destination tag, memo, or message) for the crypto address.
          - `execution` union
            - object
              - …
            - object
              - …
            - object
              - …
    - `denomination` TransactionDenomination
      - `asset` string, required: The asset in which the transaction is denominated.
      - `amount` string, required: The amount of the transaction.
      - `rate` string, required: The rate against the specified target (origin or destination).
      - `target` 'origin' | 'destination', required: Whether this exact amount should be paid by the origin or received by the destination.
    - `fees` object[], required
      - `type` 'deposit' | 'exchange' | 'network' | 'withdrawal', required: The type of the fee.
      - `code` string, required: The code of the fee.
      - `asset` string, required: The asset in which the fee is denominated.
      - `amount` string, required: The amount of the fee.
      - `percentage` string: The percentage of the fee, if the amount was calculated from a percentage.
      - `beneficiary` 'uphold' | 'partner': The entity that receives the fee.
    - `status` 'processing' | 'on-hold' | 'completed' | 'failed', required: Status of the transaction.
    - `statusDetails` object: The details of the status of the transaction.
      - `reason` 'apm-account-holder-data-mismatch' | 'apm-authorization-failed' | 'apm-missing-account-holder-data' | 'apm-payment-method-declined' | 'bank-account-holder-name-mismatch' | 'beneficiary-country-restricted' | 'card-declined' | 'card-declined-by-bank' | 'card-expired' | 'card-permanently-declined-by-bank' | 'card-unauthorized' | 'card-unsupported' | 'card-withdrawals-unsupported' | 'insufficient-funds' | 'pending-requests-for-information' | 'provider-maximum-limit-exceeded' | 'screening-verification-failed' | 'travel-rule-verification-failed' | 'unspecified-error' | 'velocity': The reason why the transaction failed or is on hold.
    - `quotedAt` string, date-time, required: The time at which the quote was created.
    - `createdAt` string, date-time, required: The time at which the transaction was created.
    - `updatedAt` string, date-time, required: The last time at which the transaction was updated.
    - `completedAt` string, date-time: The date and time the transaction was completed.
  - `pagination` Pagination, required: The pagination information.
    - `first` string, uri: The URL to the first set of results.
    - `prev` string, uri: The URL to the previous set of results.
    - `next` string, uri: The URL to the next set of results.

## Other responses

- `400`: Bad Request.
- `401`: Unauthorized.
- `403`: Forbidden.
- `404`: Resource not found.
- `429`: Too Many Requests.

---

[API](https://skmtc.dev/uphold/apis/core-api.md) - [All operations](https://skmtc.dev/uphold/apis/core-api/llms.txt) - [OpenAPI document](https://skmtc.dev/uphold/apis/core-api/revisions/6c663575c57a?raw)
