---
title: "Get program spending summary report"
method: GET
path: "/v2/loyalties/programs/{programId}/reports/spending/summary"
tags: ["Programs"]
---

# Get program spending summary report

`GET /v2/loyalties/programs/{programId}/reports/spending/summary`

<Warning>

<Badge color="yellow">BETA endpoint</Badge>

This is a work-in-progress documentation of a BETA endpoint. The parameters, fields, request and response bodies, and other data may subject to change. If you want to share feedback or improvements, contact [Voucherify support](https://www.voucherify.io/contact-support) or your Technical Account Manager.

</Warning>

Returns total points-spending statistics for the program (all time), optionally
filtered by card definition.

## Path parameters

- `programId` string, required

## Query parameters

- `filters` SpendingReportListFilters — Filters for spending reports.
  - `junction` 'AND' | 'OR' — Logical junction between the field filters. Defaults to AND behavior.
  - `card_definition_id` SpendingReportFilterCardDefinitionIdConditions — ID filter conditions for card definition ids. Values must match pattern `^lcdef_[a-f0-9]+$`. `$is`/`$is_not` accept a single value (string or 1-element array); `$in`/`$not_in` accept a string or an array of 1-100 values.
    - `conditions` object, required
      - `$is` union — Matches rows whose card definition id equals the given value.
        - string
        - string[]
      - `$is_not` union — Matches rows whose card definition id does not equal the given value.
        - string
        - string[]
      - `$in` union — Matches rows whose card definition id is one of the given values.
        - string
        - string[]
      - `$not_in` union — Matches rows whose card definition id is not one of the given values.
        - string
        - string[]

## Response `200`

Program spending summary report.

- SpendingReportSummaryResponse — Program spending summary report result.
  - `data` SpendingReportSummaryEntry[] — Report entries, one per card definition.
    - `id` string — Identifier of the summary row.
    - `card_definition_id` string — Identifier of the card definition (format `lcdef_...`).
    - `success` number — Total number of successful spending operations.
    - `success_on_reward` number — Total number of successful reward purchases.
    - `success_on_order` number — Total number of successful order payments.
    - `points` number — Total points spent.
    - `points_on_rewards` number — Total points spent on reward purchases.
    - `points_on_order` number — Total points spent on order payments.
    - `amount_on_order` number — Total order amount paid with points.
    - `object` string — Object type marker. Always `spending_summary_report`.
  - `object` string — Object type marker. Always `report`.

## Other responses

- `400` — Validation error - request body or query parameters failed validation, or the operation is not allowed in the current resource state.
- `404` — Resource not found.
- `409` — Conflict - e.g. duplicate resource or invalid state transition.
- `500` — Internal server error.

---

[API](https://skmtc.dev/voucherifyio/apis/voucherify-api-async-actions.md) · [All operations](https://skmtc.dev/voucherifyio/apis/voucherify-api-async-actions/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/voucherifyio/voucherify-api-async-actions/revisions/4982266e0494/schema)
