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

# List the voucher history

> Paginated list of vouchers sold by the shop's terminals.

Requires login. Returns the vouchers sold by the shop's terminals, paginated.

> [!TIP]
>
> The default order is by voucher `id` (descending), which is the stock order, not the sale order. To list the latest sales first, send `"field": "usedAt", "order": "descend"`.

## Body

**pagination** `object` *required*

**properties**

**current** `integer` *required*

Page number, starting at `1`.

**pageSize** `integer` *required*

Items per page: `10`, `25`, `50`, `100`, `500` or `1000`.

**field** `string` (default: id)

Sort field: `id`, `usedAt`, `updatedAt`, `createdAt`, `value`, `operator`, `status`.

**order** `string` (default: descend)

`ascend` or `descend`. Only used together with `field`.

**search** `string`

Part of a recharge code (`cartNumber`).

**filters** `object`

All keys are optional; values are arrays.

**properties**

**operator** `string[]`

One of the operators, e.g. `["orange", "tt"]`.

**value** `number[]`

One of the values, e.g. `[5]`.

**status** `string[]`

One of the [statuses](https://docs.tunimobile.com/reference/voucher-statuses.md), e.g. `["printed", "confirmed"]`.

**serieNumber** `string[]`

Serial number contains the text, e.g. `["00123"]`.

**terminalId** `integer[] | integer`

Printed by one of these terminals, e.g. `[88]` or `88`. Only the shop's own terminals are kept; others are ignored. Empty or missing: all terminals of the shop.

**usedAt** `string[]`

Sold between the two dates, e.g. `["2026-10-01 00:00:00", "2026-10-31 23:59:59"]`.

**updatedAt** `string[]`

Last update between the two dates.

## Response

**info** `object`

Pagination info: `total`, `current`, `pageSize`, `pageSizeOptions`, `totalPage`.

**results** `object[]`

**properties**

**id** `integer`

Voucher id.

**status** `string`

[Voucher status](https://docs.tunimobile.com/reference/voucher-statuses.md).

**serieNumber** `string`

Serial number.

**operator** `string`

Operator.

**value** `number`

Face value in TND.

**usedAt** `string`

Sale date.

**usedBy** `integer`

Id of the terminal that printed the voucher.

**batchId** `integer`

Internal stock batch id.

**expireAt** `string`

Expiry date.

**createdAt** `string`

Stock entry date.

**updatedAt** `string`

Last update.

> [!NOTE]
>
> The list does not return the recharge code (`cartNumber`). To print a ticket again, use [reprint](https://docs.tunimobile.com/api/vouchers/reprint.md) or [duplicate](https://docs.tunimobile.com/api/vouchers/duplicate.md).

```bash cURL theme={null}
curl -b cookies.txt -c cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "pagination": { "current": 1, "pageSize": 25 },
    "field": "usedAt",
    "order": "descend",
    "filters": {
      "operator": ["orange"],
      "status": ["printed", "confirmed"],
      "usedAt": ["2026-10-01 00:00:00", "2026-10-31 23:59:59"]
    }
  }' \
  https://apitest.tunimobile.com/v1/vouchers
```

```json 200 theme={null}
{
  "status": "success",
  "code": 200,
  "message": "OK",
  "data": {
    "info": {
      "total": 134,
      "current": 1,
      "pageSize": 25,
      "pageSizeOptions": ["10", "25", "50", "100", "500", "1000"],
      "totalPage": 6
    },
    "results": [
      {
        "id": 987654,
        "status": "confirmed",
        "createdAt": "2026-09-02T08:00:00+01:00",
        "updatedAt": "2026-10-28T10:15:09+01:00",
        "usedAt": "2026-10-28T10:15:03+01:00",
        "serieNumber": "0012345678",
        "value": 5,
        "operator": "orange",
        "expireAt": "2027-06-30T00:00:00+01:00",
        "batchId": 12,
        "usedBy": 88
      }
    ]
  }
}
```


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