type: object
properties:
  filters:
    type: object
    properties:
      generalLedgerAccountId:
        type: string
        format: uuid
        description: Filter entries by general ledger account ID.
        example: "1e3b42ec-587d-4fe5-8807-22c0235ee825"
      postingDateFrom:
        type: string
        format: date
        description: Filter entries with posting date from this date (inclusive).
        example: "2024-01-01"
      postingDateTo:
        type: string
        format: date
        description: Filter entries with posting date to this date (inclusive).
        example: "2024-01-31"
      inMatchingGroup:
        type: [boolean, "null"]
        description: |
          Filter by matching group membership.
          - `true`: only entries that are part of a matching group
          - `false`: only entries not in any matching group
          - `null` or omitted: no filter applied
        example: true
      matchingGroupIds:
        type: array
        description: Filter entries belonging to any of the specified matching group IDs.
        items:
          type: string
          format: uuid
        example: ["b653c04b-cf30-42f3-8b09-350121c8903c"]
    required: [generalLedgerAccountId]
  pagination:
    $ref: '../shared/RequestPagination.yaml'
    title: RequestPagination
required: [filters]
