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

# Redemptions and analytics

> See when your vouchers are redeemed and read statistics.

## What you can see

Each redemption of one of your vouchers appears in the **provider projection**, exactly these fields:

```json theme={null}
{
  "id": 6030,
  "resource": "redemption",
  "status": "completed",
  "voucherSetId": 2030,
  "voucherId": 5030,
  "redeemedAt": "2026-10-21T17:42:10.120Z",
  "voidedAt": null,
  "_links": { "self": { "href": "https://api.voucher-staging.allride.io/provider/v1/redemptions/6030", "type": "application/json" } }
}
```

By design, you never see which consumer redeemed, through which channel, for which customer, entity or link, with what metadata, or the void reason. `status` is `completed` or `voided` (`voidedAt` set); a void by the consumer never returns the voucher to stock.

* `GET /provider/v1/redemptions` with filters `voucherSetId`, `voucherId`, `status`, `redeemedAt`, `voidedAt`, sorted by `redeemedAt`.
* `GET /provider/v1/redemptions/{redemptionId}` for one.
* Webhooks [`redemption-created`](https://docs-provider.voucher.allride.io/webhooks/events/redemption-created) and [`redemption-voided`](https://docs-provider.voucher.allride.io/webhooks/events/redemption-voided) carry the same projection.

For incremental sync, filter `redeemedAt` from the newest value you saw minus 60 seconds, sort by `redeemedAt` and deduplicate by `id` (see [Syncing large collections](https://docs-provider.voucher.allride.io/guides/pagination.md#syncing-large-collections)).

## Statistics

Statistics have no consumer dimension. They are eventually consistent (up to two minutes) and use calendar periods in your partner's `timezone` unless you pass another whole-hour `timezone`.

| Operation | Returns |
| - | - |
| `GET /provider/v1/analytics/summary` | Redemptions today, last 7 and 30 days, this and last month; voids; voucher sets per status; stock overview; open change requests |
| `GET /provider/v1/analytics/redemptions` | Redeemed, voided and net counts and face value per day, ISO week or month, optionally per voucher set (`groupBy=voucher-set`) or cumulative |
| `GET /provider/v1/analytics/inventory` | Vouchers added, revoked and redeemed per bucket, plus current stock |
| `GET /provider/v1/analytics/stock` | Stock and alert state per voucher set |

```bash theme={null}
curl -sS -G "$VOUCHER_API_BASE_URL/provider/v1/analytics/redemptions" \
  -H "Authorization: Bearer $VOUCHER_API_KEY" \
  --data-urlencode "from=2026-10-01" --data-urlencode "to=2026-11-01" \
  --data-urlencode "granularity=week" --data-urlencode "groupBy=voucher-set"
```

* `from` (inclusive) and `to` (exclusive) are dates; they are widened to whole buckets and echoed. At most 366 days, 260 weeks or 120 months (`range-too-large`).
* `voucherSetId` takes up to 50 of your set ids, comma-separated.
* A time zone whose offset is not a whole number of hours (for example `Asia/Kolkata`) → `invalid-timezone`; `GET /partner/v1/timezones` lists the accepted ones.
* Series are dense (zero buckets included). Voids count in the bucket of `voidedAt`. `faceValue` sums the set's face value in euros at redemption time.

## Downloading redemptions

There are no export endpoints. To get redemptions as a file, page through `GET /provider/v1/redemptions` with `perPage=100` and the filters you need, as described in [Downloading large lists](https://docs-provider.voucher.allride.io/guides/pagination.md#downloading-large-lists); the download key of redemptions is `redeemedAt`. Monthly statistics come from one `GET /provider/v1/analytics/redemptions?granularity=month` call. The provider dashboard does both for you with "Download CSV / Excel".

## Related

* [Pagination, filtering and sorting](https://docs-provider.voucher.allride.io/guides/pagination.md)
* [Stock and alerts](https://docs-provider.voucher.allride.io/provider/stock-and-alerts.md)
* [Webhooks](https://docs-provider.voucher.allride.io/webhooks/overview.md)


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