---
title: "List a creator's checkout-link payments"
method: GET
path: "/creators/{creatorUserUuid}/checkout-links/payments"
---

# List a creator's checkout-link payments

`GET /creators/{creatorUserUuid}/checkout-links/payments`

List checkout-link payments for the specified creator, most recent first, with cursor-based pagination. Filter by your own `clientReferenceId` to reconcile a specific checkout, or by `status`. Webhooks remain the primary delivery mechanism; this endpoint is for reconciliation and recovering missed events.

<Info>
  **Polling for real-time updates? Use a webhook instead.**

  If you are calling this endpoint on a schedule to detect new activity, subscribe to the `checkout_link.payment.succeeded`, `checkout_link.payment.pending`, `checkout_link.payment.failed` webhook events instead — you'll get pushed updates in real time without polling. See the [webhook documentation](https://api.fanvue.com/docs/checkout/payments).
</Info>

## Path parameters

- `creatorUserUuid` string, uuid, required

## Query parameters

- `limit` integer — Number of results to return (default 20, max 100).
- `cursor` string — Cursor for pagination, as returned in a previous page's `nextCursor`.
- `clientReferenceId` string — Filter to payments carrying this exact `client_reference_id`.
- `status` 'pending' | 'succeeded' | 'failed' — Filter to payments with this status.

## Headers

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

## Response `200`

List of checkout-link payments

- object
  - `data` object[], required
    - `invoiceNumber` string, required — Fanvue's unique payment identifier. Use this as the idempotency key for fulfilment.
    - `status` 'pending' | 'succeeded' | 'failed', required — Settlement status of the payment.
    - `billingReason` 'one_time' | 'subscription_initial' | 'subscription_renewal', required — What the payment was for: a one-off purchase, the first payment of a subscription, or a subscription renewal. Matches the `billing_reason` on the checkout_link.payment.* webhook.
    - `refundStatus` 'pending' | 'approved' | 'failed' | 'refunded' | 'rejected' | 'withdrawn' | 'disputed', nullable, required — Where this payment stands on being handed back, or null when nothing has been asked for or paid back. The first six values are the status of the payment's most recent refund request (see the refund-requests endpoints); `refunded` also covers a refund Fanvue issued without a request, and `disputed` means the fan raised a chargeback, which blocks a refund.
    - `clientReferenceId` string, nullable, required — The merchant-supplied reference passed at checkout via `?client_reference_id=`. Use it to match the payment to your own order/customer.
    - `gross` number, required — Gross amount the buyer paid, in minor units.
    - `net` number, nullable, required — Creator net amount after fees, in minor units.
    - `fees` object, required
      - `fanvueFee` number, nullable, required — Fanvue fee, in minor units.
      - `transactionFee` number, nullable, required — Payment processing fee, in minor units.
    - `currency` string, nullable, required — Informational only — the local currency the fan originally paid in (e.g. 'BRL'). The gross, net, and fee amounts are already converted to USD minor units regardless of this value.
    - `transactionId` string, nullable, required — Payment processor transaction reference.
    - `createdAt` string, date-time, required — When the payment was created.
    - `paidAt` string, date-time, nullable, required — When the payment settled, if it did.
    - `checkoutLink` object, required
      - `uuid` string, nullable, required — UUID of the checkout link used.
      - `name` string, nullable, required — Name of the checkout link / offer.
      - `productUuid` string, nullable, required — UUID of the purchased product.
      - `productPriceUuid` string, nullable, required — UUID of the purchased product price.
    - `purchaser` object, required
      - `uuid` string, nullable, required — UUID of the purchasing Fanvue user.
      - `email` string, nullable, required — Email of the purchasing Fanvue user.
    - `metadata` object, required — Arbitrary merchant metadata passed at checkout via `?metadata[key]=value`.
  - `nextCursor` string, nullable, required — Cursor for the next page, or null if none.

## Other responses

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

## Changes

- **2026-09-10** `4d08f36ad6c8` — 2 info
  - removed the pattern `^\d+$` from the `query` request parameter `cursor`
  - added the required property `data/items/refundStatus` to the response with the `200` status
- **2026-08-30** `dce5621fe589` — 1 breaking
  - added the pattern `^\d+$` to the `query` request parameter `cursor`

[Change history](https://skmtc.dev/fanvue/apis/fanvue-api/changes/creators/:creatorUserUuid/checkout-links/payments/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)
