> ## Documentation Index
> Fetch the complete documentation index at: https://assetpay.gg/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Wallet Transaction

> Fetch the full detail of one wallet funding, such as a crypto deposit or withdrawal, by the id returned from the transaction list.

Returns one funding owned by the merchant that holds the API key. A funding is a deposit, withdrawal, refund or internal transfer. Use the `id` from [`GET /v1/ledger/transactions`](https://assetpay.gg/docs/api-reference/ledger/list-transactions).

**Authentication:** Merchant API Key (`api-key` header)
**Scope:** `LEDGER_READ`

> [!NOTE]
>
> Admin credits and debits appear in the transaction list but are not fundings. Their ids return `404 NOT_FOUND` here.

## Request

```http theme={null}
GET https://api.assetpay.gg/v1/ledger/transactions/5f0c2a4e-7b1d-4c39-9a8e-2d6f1b3c4e5a
api-key: ap_...
```

### Path Parameters

| Parameter | Type | Description |
| - | - | - |
| `transactionId` | string | The funding `id` from the transaction list |

## Response

```json theme={null}
{
  "requestId": "...",
  "success": true,
  "data": {
    "id": "5f0c2a4e-7b1d-4c39-9a8e-2d6f1b3c4e5a",
    "type": "WITHDRAWAL",
    "status": "COMPLETED",
    "amount": {
      "usd": 500.00,
      "crypto": "499.000000",
      "token": "USDT",
      "chain": "TRX",
      "exchangeRate": "1"
    },
    "address": "TXYZ...",
    "txnHash": "a1b2c3...",
    "fee": 1.00,
    "timestamps": {
      "created": "2026-09-10T14:02:11.000Z",
      "updated": "2026-09-10T14:20:45.000Z",
      "completed": "2026-09-10T14:20:45.000Z",
      "expired": null
    }
  }
}
```

The fields are the same as a list item, plus two more:

| Field | Type | Description |
| - | - | - |
| `amount.exchangeRate` | string | USD per token at the time of the funding. `"0"` when no rate was recorded. |
| `timestamps.expired` | string \| null | When an unpaid deposit expired, otherwise `null`. |

See [List Wallet Transactions](https://assetpay.gg/docs/api-reference/ledger/list-transactions.md#response) for the rest.

## Rate Limits

| Merchant Status | Limit |
| - | - |
| Verified | 100 requests / 5 min |
| Unverified | 10 requests / min |

## Errors

| Code | Key | When |
| - | - | - |
| 1003 | `NOT_FOUND` | No funding with this id belongs to your merchant account |
| 1100 | `UNAUTHORIZED` | Neither an `api-key` header nor a `Bearer` `Authorization` header was sent (HTTP 401) |
| 1300 | `MERCHANT_API_KEY_REQUIRED` | An admin API key was used; this route needs a merchant key (HTTP 403) |
| 1301 | `ACCOUNT_DISABLED` | The account that owns the API key is not active (HTTP 403) |
| 1901 | `INVALID_API_KEY` | The key does not exist or was revoked |
| 1904 | `API_KEY_IP_DENIED` | The request IP is not in the key's whitelist |
| 1908 | `INSUFFICIENT_SCOPE` | The key does not have the `LEDGER_READ` scope |
| 1005 | `RATE_LIMITED` | Rate limit exceeded |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.