---
title: "List Company Transactions"
method: GET
path: "/companies/{company_id}/transactions"
tags: ["stripe"]
---

# List Company Transactions

`GET /companies/{company_id}/transactions`

## Request

- Base URL: `https://api.nanocorp.so` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nanocorp.so/companies/{company_id}/transactions`
- Auth: HTTP bearer

List a company's customer sales (newest first) with refunded flag + product names.

``kind`` is the Money tab's ALL / RENEWALS / ONE-TIME filter and ``total`` is
the count for that same filter, so paging past the 100-row cap works and the
foot never sums a capped page (spec 2026-09-15 §4.3).

The three chips never overlap: RENEWALS is the non-create subscription reasons
(``subscription_cycle`` and friends), ONE-TIME is the negation of EVERY
subscription reason, so a plan's first charge (the NEW PLAN lane) appears under
ALL alone.

## Path parameters

- `company_id` string, uuid, required

## Query parameters

- `limit` integer
- `offset` integer
- `email` string, nullable
- `kind` 'all' | 'renewals' | 'one_time'

## Response `200`

Successful Response

- TransactionListResponse
  - `transactions` TransactionResponse[], required
    - `id` string, required
    - `customer_email` string, nullable
    - `customer_name` string, nullable
    - `product_names` string[]
    - `presentment_amount_cents` integer, required
    - `presentment_currency` string, required
    - `usd_amount_cents` integer, required
    - `stripe_payment_intent_id` string, nullable
    - `refunded` boolean
    - `refundable` boolean
    - `kind` 'sale' | 'new_plan' | 'renewal'
    - `plan_renews_at` string, date-time, nullable
    - `created_at` string, date-time, required
  - `total` integer

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-07** `33b623259808`: 1 info
  - added the optional property `transactions/items/plan_renews_at` to the response with the `200` status
- **2026-09-17** `fdb61f8c4234`: 4 info
  - added the new optional `query` request parameter `kind`
  - added the new optional `query` request parameter `offset`
  - added the optional property `total` to the response with the `200` status
  - added the optional property `transactions/items/kind` to the response with the `200` status

[Operation history](https://skmtc.dev/nanocorp/apis/nanocorp-api/changes/companies/:company_id/transactions/get.md)

---

[API](https://skmtc.dev/nanocorp/apis/nanocorp-api.md) - [All operations](https://skmtc.dev/nanocorp/apis/nanocorp-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nanocorp/apis/nanocorp-api/revisions/291bb76b720b?raw)
