# List transactions

> Get a policy-gated account transaction history.

`GET /v1/agent-api/accounts/{id}/transactions`

## Path parameters

| Field | Type   | Required | Description |
| ----- | ------ | -------- | ----------- |
| `id`  | string | Yes      |             |

## Query parameters

| Field    | Type    | Required | Description                                                               |
| -------- | ------- | -------- | ------------------------------------------------------------------------- |
| `start`  | string  |          |                                                                           |
| `end`    | string  |          | Inclusive upper bound; must be on or after `start` when both are provided |
| `limit`  | integer |          |                                                                           |
| `offset` | integer |          |                                                                           |

## Responses

| Status | Description                              |
| ------ | ---------------------------------------- |
| `200`  | Account transaction history              |
| `403`  | Account not accessible under this policy |
| `404`  | Readable account not found               |

## Response fields

| Field                             | Type                                                                                                                        | Required | Description                                                                                                                                                                                                                     |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `accountId`                       | string                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |
| `transactions`                    | array of object                                                                                                             | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].id`               | string                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].type`             | `"operator-send"` \| `"operator-transfer"` \| `"operator-deposit"` \| `"operator-refund"` \| `"microdeposit"`               | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].action`           | string                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].status`           | `"pending"` \| `"processing"` \| `"completed"` \| `"failed"` \| `"reversed"`                                                | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].movementStatus`   | `"initiated"` \| `"provider_pending"` \| `"processing"` \| `"completed"` \| `"failed"` \| `"reversed"` \| `"manual_review"` | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].direction`        | `"incoming"` \| `"outgoing"`                                                                                                | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].amount`           | money                                                                                                                       | Yes      | USD amount. With tokenDetails, the settled recipient credit, or zero for a movement within the same account. Otherwise the recorded transaction amount.                                                                         |
| `transactions[].fee`              | money                                                                                                                       | Yes      | With tokenDetails, the net account debit beyond amount, in USD at par, including fees, conversion cost and customer-paid gas. A negative value is a net conversion credit. Otherwise the recorded Catena fee.                   |
| `transactions[].tokenDetails`     | object                                                                                                                      |          | Optional settled token detail for this account. Primary amounts are USD at par; balance holdings use the same asset vocabulary. Omitted when token provenance is unavailable or the organization has no held-asset entitlement. |
| `transactions[].currency`         | string                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].network`          | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `transactions[].counterpartyName` | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `transactions[].method`           | `"ach"` \| `"wire"` \| `"on-chain"`                                                                                         |          |                                                                                                                                                                                                                                 |
| `transactions[].memo`             | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `transactions[].description`      | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `transactions[].txHash`           | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `transactions[].createdAt`        | string                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |
| `transactions[].completedAt`      | string                                                                                                                      |          |                                                                                                                                                                                                                                 |
| `total`                           | number                                                                                                                      | Yes      |                                                                                                                                                                                                                                 |

## Example

### SDK

```ts
import { createCatenaClient } from "@catena/sdk"

// Reads CATENA_SECRET_KEY
const client = createCatenaClient()

const { transactions } = await client.listAccountTransactions(
  "acct_01JC2Y6ZQ8R4M7N9P3S5T6V8WX",
  { start: "2026-10-01T00:00:00Z", limit: 25 },
)
```

### CLI

```sh
catena accounts transactions acct_01JC2Y6ZQ8R4M7N9P3S5T6V8WX \
  --start 2026-10-01T00:00:00Z --limit 25
```

### Response `200`

```json
{
  "accountId": "acct_01JC2Y6ZQ8R4M7N9P3S5T6V8WX",
  "total": 1,
  "transactions": [
    {
      "id": "txn_01JC3C4M6P8R0T2V4X6Z8B1D3F",
      "type": "operator-deposit",
      "action": "receive",
      "status": "completed",
      "direction": "incoming",
      "movementStatus": "completed",
      "amount": {
        "amount": "100.000000",
        "assetId": "USD",
        "asset_id": "USD"
      },
      "fee": {
        "amount": "0.000000",
        "assetId": "USD",
        "asset_id": "USD"
      },
      "currency": "USD",
      "network": "base",
      "counterpartyName": "Acme Supplies",
      "method": "on-chain",
      "memo": "Invoice 42",
      "description": "Refund",
      "txHash": "0x8f3c2a9e1d7b4c6a5e0f9d8c7b6a5f4e3d2c1b0a9f8e7d6c5b4a3f2e1d0c9b8a",
      "createdAt": "2026-10-20T14:00:00.000Z",
      "completedAt": "2026-10-20T14:01:00.000Z"
    }
  ]
}
```
