---
title: "List Transactions"
method: GET
path: "/v1/reporting/transactions"
tags: ["v1"]
---

# List Transactions

`GET /v1/reporting/transactions`

List affiliate transactions for your account over a datetime window.

Defaults to the last 30 days ending now. Maximum window is 90 days.
Pass an offset-aware ISO datetime to express local time (e.g. last 6 hours).
Returns a summary of net commission (after take rate) plus a paginated list
of transactions (most recent first). Network-approved commissions appear as
pending.

## Query parameters

- `start_date` string, date-time, nullable — Inclusive start of the window (ISO 8601 datetime with optional offset, e.g. 2026-08-01T00:00:00-04:00). Offset-aware values are converted to UTC; naive values are treated as UTC.
- `end_date` string, date-time, nullable — Inclusive end of the window (ISO 8601 datetime with optional offset, e.g. 2026-08-01T23:59:59-04:00). Offset-aware values are converted to UTC; naive values are treated as UTC.
- `page` integer — Page number (1-indexed).
- `limit` integer — Items per page (max 100).

## Response `200`

Successful Response

- TransactionsResponse — Paginated transactions for a vendor over a date range.
  - `summary` TransactionsSummary, required — Aggregate transaction stats for the requested date range.
    - `total_count` integer, required — Total transactions in the date range.
    - `total_commission` number, required — Sum of vendor net commission (pending + paid) for the date range.
    - `pending_commission` number, required — Vendor net commission still pending payout.
    - `paid_commission` number, required — Vendor net commission already paid out.
  - `items` Transaction[], required
    - `id` string, required — Transaction ID.
    - `order_amount` number, required — Order amount in the transaction currency.
    - `commission_amount` number, required — Vendor net commission (after Channel3 take rate).
    - `status` 'pending' | 'paid', required — Vendor-facing transaction status (approved is surfaced as pending).
    - `purchased_at` string, date-time, required — Purchase timestamp, returned with a UTC offset (Z).
    - `product` AffiliateProduct — Compact product reference on click/transaction items.
      - `id` string, required — Canonical product ID.
      - `title` string, nullable — Product title.
      - `image_url` string, nullable — Product image URL.
    - `brand_name` string, nullable — Brand name, if known.
    - `city` string, nullable — Purchase city, if available.
    - `country` string, nullable — Purchase country, if available.
  - `page` integer, required — Current page (1-indexed).
  - `limit` integer, required — Page size.
  - `total_count` integer, required — Total matching transactions in the date range.
  - `has_more` boolean, required — Whether more pages are available.
  - `start_date` string, date-time, required — Inclusive start of the resolved query window. Always returned with a UTC offset (Z); request values with other offsets are converted.
  - `end_date` string, date-time, required — Inclusive end of the resolved query window. Always returned with a UTC offset (Z); request values with other offsets are converted.

## Other responses

- `400` — Invalid date range
- `401` — Unauthorized - Invalid or missing authentication
- `402` — Payment required
- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/channel3-ai/apis/fastapi.md) · [All operations](https://skmtc.net/channel3-ai/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/channel3-ai/fastapi/revisions/981d371bd83e/schema)
