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

# Statement

> GET /v2/statement — paginated double-entry ledger with running balances and embedded transaction objects.

Each entry represents a single debit or credit line against one of your sub-accounts, with a balance before and after. When the movement was generated by a Noxpay process — Crossramp Checkout, onramp, offramp, withdrawal — the full transaction object is embedded inline.

## Query parameters

| Parameter      | Type    | Description                                                                  |
| -------------- | ------- | ---------------------------------------------------------------------------- |
| `limit`        | integer | Max results per page (default: `20`, max: `100`)                             |
| `offset`       | integer | Pagination offset (default: `0`)                                             |
| `currency`     | string  | Filter by currency code (e.g. `USDT_TRX`, `BRL`)                             |
| `account_type` | string  | Filter by sub-account: `available`, `in_transit`, `to_receive`, or `blocked` |
| `date_from`    | string  | Start date filter — `YYYY-MM-DD`                                             |
| `date_to`      | string  | End date filter — `YYYY-MM-DD`                                               |

## Response fields

| Field     | Type    | Description                             |
| --------- | ------- | --------------------------------------- |
| `total`   | integer | Total matching entries across all pages |
| `limit`   | integer | Page size used                          |
| `offset`  | integer | Current offset                          |
| `entries` | array   | List of statement entry objects         |

## Statement entry

| Field                          | Type           | Description                                                                                     |
| ------------------------------ | -------------- | ----------------------------------------------------------------------------------------------- |
| `id`                           | integer        | Unique ledger line identifier                                                                   |
| `date`                         | string         | ISO 8601 timestamp of the journal entry                                                         |
| `account.id`                   | integer        | Internal ledger account ID                                                                      |
| `account.name`                 | string         | Human-readable label (e.g. `USDT (TRX) available`)                                              |
| `account.code`                 | string         | Full double-entry account code (e.g. `2.1.1.100.1.1.1`)                                         |
| `account.currency`             | string         | Raw ledger currency code (e.g. `USDT_TRX`)                                                      |
| `account.currency_pretty_name` | string         | Display name (e.g. `USDT (TRX)`)                                                                |
| `debit`                        | float          | Amount debited from this account                                                                |
| `credit`                       | float          | Amount credited to this account                                                                 |
| `previous_balance`             | float          | Account balance before this entry                                                               |
| `balance`                      | float          | Account balance after this entry                                                                |
| `transaction`                  | object \| null | Embedded transaction object when generated by a Noxpay process; `null` for internal adjustments |

## Account sub-type from code

The last segment of `account.code` identifies the sub-account bucket:

| Code segment | Type         | Description                          |
| ------------ | ------------ | ------------------------------------ |
| `1`          | `available`  | Immediately withdrawable             |
| `2`          | `in_transit` | Sent; awaiting on-chain confirmation |
| `3`          | `to_receive` | Pending inbound                      |
| `4`          | `blocked`    | Frozen for compliance or dispute     |

## Embedded transaction object

When `transaction` is present, the `template` field tells you what kind of process generated the entry:

| Template value            | Process                       |
| ------------------------- | ----------------------------- |
| `crossramp_checkout`      | Crossramp Checkout            |
| `onramp`                  | Onramp to Global Account      |
| `onramp_instant`          | Onramp to External Address    |
| `offramp`                 | Offramp from Global Account   |
| `offramp_instant`         | Offramp from External Address |
| `withdraw_dash_same_curr` | Withdrawal                    |

The `attributes` object contains the fields relevant to that template. See the per-resource pages for full attribute tables.

<RequestExample>
  ```bash theme={null}
  curl "https://checkout.noxpay.io/v2/statement?limit=20&offset=0" \
    -H "api-key: <key>"
  ```

  ```python theme={null}
  import requests

  response = requests.get(
      "https://checkout.noxpay.io/v2/statement",
      headers={"api-key": "<key>"},
      params={"limit": 20, "offset": 0},
  )
  print(response.json())
  ```

  ```javascript theme={null}
  const params = new URLSearchParams({ limit: 20, offset: 0 });
  const response = await fetch(
    `https://checkout.noxpay.io/v2/statement?${params}`,
    { headers: { "api-key": "<key>" } }
  );
  const data = await response.json();
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "total": 128,
    "limit": 20,
    "offset": 0,
    "entries": [
      {
        "id": 4521,
        "date": "2024-05-01T12:00:00Z",
        "account": {
          "id": 42,
          "name": "USDT (TRX) available",
          "code": "2.1.1.100.1.1.1",
          "currency": "USDT_TRX",
          "currency_pretty_name": "USDT (TRX)"
        },
        "debit": 0.00,
        "credit": 100.00,
        "previous_balance": 50.00,
        "balance": 150.00,
        "transaction": {
          "end2end": "NOXabc123",
          "template": "crossramp_checkout",
          "created_at": "2024-05-01T11:59:00Z",
          "updated_at": "2024-05-01T12:00:00Z",
          "status": { "en": "Success", "pt": "Sucesso" },
          "substatus": { "en": "Success", "pt": "Sucesso" },
          "message": { "en": "Transaction completed successfully", "pt": "Transação concluída com sucesso" },
          "error_message": { "en": "", "pt": "" },
          "attributes": {
            "quote": 5.45,
            "currency_exit_received": "USDT (TRX)",
            "amount_payment": 550.00,
            "amount_received": 100.00,
            "client_name": "João Silva",
            "client_tax_id": "12345678901"
          }
        }
      }
    ]
  }
  ```
</ResponseExample>
