---
title: "Get spending reversal data"
method: GET
path: "/insights/spending"
---

# Get spending reversal data

`GET /insights/spending`

Returns cursor-paginated reversal invoice data for the authenticated creator over a specified time period. Includes refund and chargeback transactions. Pass `fanUuid` to restrict results to a single fan's reversals on this creator.

A reversal is written as its own invoice rather than as a change to the payment it reverses, and always for the full original amount, because Fanvue has no partial refunds. The original payment therefore stays settled and keeps its own row on `/insights/earnings`; read `reversedTransactionOrderId` on the `refund`/`chargeback` rows there to pair the two.

One gap: a payment that already carries its refund or chargeback marker without a linked reversal invoice never gets one written, so a reversal recorded that way has no row here and nothing to pair.

## Query parameters

- `startDate` string, date-time — Start date as ISO 8601 datetime string with optional timezone offset (e.g., 2024-10-20T00:00:00+01:00 or 2024-10-20T00:00:00Z).
- `endDate` string, date-time — End date as ISO 8601 datetime string with optional timezone offset (e.g., 2024-10-25T00:00:00+01:00 or 2024-10-25T00:00:00Z). Non-inclusive - data before this date is included.
- `source` SpendingType[] — Comma-separated list of spending sources
- `cursor` string — Cursor for pagination - If given, pass `nextCursor` to get the next page.
- `size` number — Number of items to return per page (1-50, default: 20). When omitted on a cursor request, the size from the previous page (carried in the cursor) is reused.
- `fanUuid` string, uuid — Restrict results to reversals belonging to a single fan on this creator

## Headers

- `X-Fanvue-API-Version` string, required

## Response `200`

Spending reversal data with cursor pagination

- object
  - `data` object[], required
    - `date` string, required — Payment date as UTC ISO 8601 datetime string
    - `gross` number, required — The reversed payment's amount, converted to USD cents. Every row here is a refund or chargeback, so this is negative and carries the full pre-fee amount of the earning it reverses. That is not always money a fan paid: a referral or affiliate earning can be clawed back too, and `user` is null on those rows.
    - `net` number, required — Creator's reversal (refund/chargeback) impact after Fanvue fees, in USD cents. Negative for the same reason as `gross`.
    - `total` number, required — What the fan was actually charged for the reversed payment, in USD cents: `gross` plus the fan's tax and plus the fan-side transaction fee. Negative like `gross`, and the same basis as `total` on /insights/earnings, so the two endpoints can be summed on one basis.
    - `currency` string, nullable, required — Informational only — the local currency the fan originally paid in (e.g. 'BRL'). The gross and net amounts are already converted to USD cents regardless of this value.
    - `source` 'refund' | 'chargeback', required
    - `messageUuid` string, uuid — Message UUID when the reversed payment was a message transaction
    - `postUuid` string, uuid — Post UUID when the reversed payment was a post
    - `user` object, nullable, required — Fan's user information (null for transactions without a fan like referrals, affiliates)
      - `uuid` string, uuid, required
      - `handle` string, required
      - `displayName` string, required
      - `nickname` string, nullable, required
      - `isTopSpender` boolean, required
  - `nextCursor` string, nullable, required — Cursor for next page, null if no more data

## Other responses

- `400` — Bad Request - API version not supported OR validation failed (dates, sources, cursor, pagination)
- `401` — Unauthorized Response
- `403` — Unauthorized Response
- `410` — API version no longer supported (sunset)
- `429` — Too many requests - rate limit exceeded

## Changes

- **2026-09-25** `431868e8a264` — 1 info
  - added the required property `data/items/total` to the response with the `200` status

[Change history](https://skmtc.dev/fanvue/apis/fanvue-api/changes/insights/spending/get.md)

---

[API](https://skmtc.dev/fanvue/apis/fanvue-api.md) · [All operations](https://skmtc.dev/fanvue/apis/fanvue-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fanvue/apis/fanvue-api/revisions/431868e8a264?raw)
