---
title: "List commissions"
method: GET
path: "/api/v1/commissions"
tags: ["Commissions"]
---

# List commissions

`GET /api/v1/commissions`

List commissions for the authenticated developer

Returns a paginated list of commissions with optional filters using
cursor-based pagination. Pass the `endCursor` from a previous response
as `after` to fetch the next page, or the `startCursor` as `before` to
fetch the previous page. Specifying both `after` and `before` returns 422.

## Query parameters

- `limit` integer
- `after` string
- `before` string
- `type` 'surcharge' | 'promo_arbitrage' | 'discount_code' | 'affiliate' | 'out_of_band' — Type of commission earned on an order. Canonical definition used by both the API contract and the internal `@rye-com/ci-commissions` package.
- `status` 'pending' | 'confirmed' | 'updated' | 'finalized' | 'refunded' | 'expired' — Lifecycle status of a commission record.
- `checkoutIntentId` string

## Response `200`

Paginated commissions response

- CommissionListResponse — Paginated commissions response. Use `pageInfo.endCursor` as the next page's `after` query parameter to walk forward; use `pageInfo.startCursor` as the next page's `before` query parameter to walk backward.
  - `pageInfo` object, required
    - `endCursor` string
    - `startCursor` string
    - `hasPreviousPage` boolean, required
    - `hasNextPage` boolean, required
  - `data` CommissionResponse[], required
    - `finalizedAt` string, date-time — Time the commission moved to a terminal status. Unset until finalized.
    - `updatedAt` string, date-time, required — Time the commission last changed (e.g. status transition).
    - `createdAt` string, date-time, required — Time the commission was first recorded.
    - `ryeFee` Money, required
      - `currencyCode` string, required
      - `amountSubunits` integer, required
    - `developerCommission` Money, required
      - `currencyCode` string, required
      - `amountSubunits` integer, required
    - `settlementDirection` 'rye_owes_developer' | 'developer_owes_rye', required — Direction of settlement: who owes whom once the commission is finalized.
    - `status` 'pending' | 'confirmed' | 'updated' | 'finalized' | 'refunded' | 'expired', required — Lifecycle status of a commission record.
    - `type` 'surcharge' | 'promo_arbitrage' | 'discount_code' | 'affiliate' | 'out_of_band', required — Type of commission earned on an order. Canonical definition used by both the API contract and the internal `@rye-com/ci-commissions` package.
    - `checkoutIntentId` string, required — The checkout intent this commission was generated from.
    - `id` string, required — Unique identifier for this commission.

## Other responses

- `401` — Authentication Failed
- `422` — Validation Error

## Changes

- **2026-06-08** `0b28c67737d3` — 1 info
  - the security scope `billing:read` was added to the endpoint's security scheme `bearerAuth`
- **2026-05-13** `f95077641efe` — 4 breaking, 3 info
  - removed the required property `data/items/developerShareAmount` from the response with the `200` status
  - removed the required property `data/items/developerSharePercent` from the response with the `200` status
  - removed the required property `data/items/grossAmount` from the response with the `200` status
  - removed the required property `data/items/ryeShareAmount` from the response with the `200` status
  - …3 more
- **2026-05-13** `5a2e900cb854` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/rye-com/apis/universal-checkout-api/changes/api/v1/commissions/get.md)

---

[API](https://skmtc.dev/rye-com/apis/universal-checkout-api.md) · [All operations](https://skmtc.dev/rye-com/apis/universal-checkout-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/rye-com/universal-checkout-api/revisions/22d8a79f694f/schema)
