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

# List statement lines

> Lists the on-chain statement lines for one wallet in one asset over a
date range — the same enriched data the business portal's statements
show. Each line carries a human-readable description (the payment's
title where one exists) and the wallet's own reference for the leg:
the reference the payer typed on outgoing lines, the one the payee
typed on incoming ones. A swap appears on each involved asset's
statement as its own line. Unlike /transactions (payment-record
status from submission), this reflects settled on-chain movements and
lags the chain by the reporting pipeline's sync interval.




## OpenAPI

````yaml /api-reference/openapi.yaml get /statements/transactions
openapi: 3.1.0
info:
  title: Zeam API Gateway
  version: 1.0.0
  description: >
    The Zeam API Gateway is the single, REST-based external surface for
    registered

    integrators. Every request, including token issuance, carries the
    application

    secret header `x-zeam-auth` — there is no unauthenticated route. Protected

    requests additionally carry a bearer access token obtained from

    POST /v1/auth/token; the gateway verifies it and resolves the caller's

    association server-side — you do not need to supply an association id

    header. Errors use RFC 7807 `application/problem+json`.
  license:
    name: Proprietary
    url: https://zeam.app
  contact:
    name: Zeam Platform Team
    url: https://zeam.app
servers:
  - url: https://api.zeam.money/gw/v1
    description: >-
      Zeam API Gateway. The sandbox and production environments share this base
      URL; your application's registration determines which one a request runs
      in.
security:
  - BearerAuth: []
    ZeamAuth: []
tags:
  - name: Auth
    description: Public token issuance.
  - name: Wallets
    description: Association wallets with embedded balances.
  - name: Assets
    description: Platform asset registry.
  - name: Beneficiaries
    description: Association beneficiaries and their payment destinations.
  - name: Connectors
    description: Connector discovery.
  - name: Quotes
    description: Off-ramp quotes.
  - name: Payments
    description: >-
      P2P transfers, swaps, and off-ramp cash-outs, plus the compliance
      reference lookups used when building an off-ramp.
  - name: Transactions
    description: Transaction records, the polling and history complement to webhooks.
  - name: Webhooks
    description: Association webhook registrations.
paths:
  /statements/transactions:
    get:
      tags:
        - Statements
      summary: List statement lines
      description: |
        Lists the on-chain statement lines for one wallet in one asset over a
        date range — the same enriched data the business portal's statements
        show. Each line carries a human-readable description (the payment's
        title where one exists) and the wallet's own reference for the leg:
        the reference the payer typed on outgoing lines, the one the payee
        typed on incoming ones. A swap appears on each involved asset's
        statement as its own line. Unlike /transactions (payment-record
        status from submission), this reflects settled on-chain movements and
        lags the chain by the reporting pipeline's sync interval.
      operationId: listStatementTransactions
      parameters:
        - name: walletId
          in: query
          required: true
          description: >-
            The wallet whose statement to list; must belong to the caller's
            association.
          schema:
            type: string
            format: uuid
        - name: assetCode
          in: query
          required: true
          description: Asset code the statement is denominated in (e.g. ZARZ).
          schema:
            type: string
        - name: startDate
          in: query
          required: true
          description: First day included (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: endDate
          in: query
          required: true
          description: Last day included (YYYY-MM-DD).
          schema:
            type: string
            format: date
      responses:
        '200':
          description: >-
            The statement lines, oldest first, in the standard collection
            envelope (hasMore is always false — the full range is returned).
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/StatementLine'
                  pagination:
                    $ref: '#/components/schemas/Pagination'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '502':
          $ref: '#/components/responses/UpstreamError'
components:
  schemas:
    StatementLine:
      type: object
      required:
        - date
        - description
        - amount
      description: |
        One on-chain statement line for the requested wallet + asset.
        `description` is the payment's human-readable title where the payment
        carries one, otherwise the legacy generated text. `reference` is the
        viewing wallet's own reference for the leg (payer's on outgoing lines,
        payee's on incoming ones); null when the leg carries none.
      properties:
        date:
          type: string
          format: date
          example: '2026-08-27'
        description:
          type: string
          example: Zeam Payment
        amount:
          type: string
          example: '-150.00'
          description: 'Signed from the wallet''s perspective: negative = outgoing.'
        reference:
          type: string
          nullable: true
          example: Charl Aug Salary
        runningBalance:
          type: string
          example: '1250.00'
          description: >-
            The wallet's balance in this asset after the line, anchored on the
            same month-opening balance the PDF statement uses.
        rowId:
          type: string
          example: 0248033847292375041-2-1
          description: >-
            Opaque, stable identity for the line — unique within a wallet's
            statement and identical on every export of the same settled row. Use
            as a dedupe key (e.g. OFX FITID); it carries no other semantics.
    Pagination:
      type: object
      required:
        - nextCursor
        - hasMore
      properties:
        nextCursor:
          type:
            - string
            - 'null'
          description: Cursor for the next page, or null at the end.
        hasMore:
          type: boolean
    Problem:
      type: object
      required:
        - type
        - title
        - status
      description: RFC 7807 problem details.
      properties:
        type:
          type: string
          format: uri
          example: https://errors.zeam.app/validation-error
        title:
          type: string
          example: Validation Error
        status:
          type: integer
          example: 422
        detail:
          type: string
          example: The 'amount' field must be a positive decimal.
        instance:
          type: string
          example: /v1/quotes
        requestId:
          type: string
          example: 01J8Z6K3QW9F2
        errors:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
              message:
                type: string
  responses:
    BadRequest:
      description: Malformed request.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Unauthorized:
      description: Missing or invalid authentication.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Forbidden:
      description: Authenticated but not permitted.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    NotFound:
      description: Resource not found.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    UpstreamError:
      description: An unexpected error occurred while completing the request.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Access token issued by POST /v1/auth/token.
    ZeamAuth:
      type: apiKey
      in: header
      name: x-zeam-auth
      description: >-
        Application secret (the apiKey issued at registration), required on
        every request.

````