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

# List transactions

`GET /transactions`

Returns a paginated list of transactions for your account, newest first.
Use `cursor` from the previous response to fetch the next page.

## Query parameters

- `limit` integer
- `cursor` string
- `status` 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'REVERSED' | 'CANCELLED' — - `PENDING` — Awaiting customer action or provider response - `PROCESSING` — Provider accepted; waiting for final confirmation - `SUCCESS` — Completed successfully - `FAILED` — Transaction failed (provider declined or timeout) - `REVERSED` — Successfully reversed (wallet credited back) - `CANCELLED` — Cancelled before processing
- `type` 'STK' | 'B2C' — - `STK` — M-Pesa STK Push collection - `B2C` — Business to Customer payout

## Response `200`

Paginated list of transactions.

- object
  - `success` boolean, required
  - `data` object, required — Response payload. Shape varies by endpoint.
    - `overview` object — Aggregate counts for the current filter set (ignores cursor).
      - `total` integer — Total number of transactions matching the applied filters.
      - `completed` integer — Number of transactions with status `SUCCESS`.
      - `failed` integer — Number of transactions with status `FAILED`.
      - `pending` integer — Number of transactions with status `PENDING`.
    - `items` Transaction[]
      - `transactionId` string, uuid — Unique transaction identifier.
      - `tenantId` string, uuid
      - `type` 'STK' | 'B2C' — - `STK` — M-Pesa STK Push collection - `B2C` — Business to Customer payout
      - `status` 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'REVERSED' | 'CANCELLED' — - `PENDING` — Awaiting customer action or provider response - `PROCESSING` — Provider accepted; waiting for final confirmation - `SUCCESS` — Completed successfully - `FAILED` — Transaction failed (provider declined or timeout) - `REVERSED` — Successfully reversed (wallet credited back) - `CANCELLED` — Cancelled before processing
      - `amount` number — Transaction amount in KES.
      - `currency` string
      - `phone` string — Customer phone in `254XXXXXXXXX` format.
      - `channelId` string, uuid, nullable
      - `accountReference` string, nullable — Reference you supplied (STK) or external reference (B2C).
      - `transactionDesc` string, nullable
      - `provider` string, nullable
      - `providerRequestId` string, nullable
      - `providerCheckoutId` string, nullable
      - `resultCode` string, nullable — M-Pesa result code. `"0"` = success.
      - `resultDesc` string, nullable
      - `createdAt` string, date-time
      - `updatedAt` string, date-time
    - `nextCursor` string, nullable — Pass this value as `cursor` to fetch the next page. `null` means no more pages.
  - `requestId` string, uuid, required — Unique identifier for this API request. Include in support tickets.

## Other responses

- `401` — Missing, invalid, or revoked API key.
- `429` — Rate limit exceeded — 60 requests per minute per API key.

---

[API](https://skmtc.dev/palpluss/apis/palpluss-api.md) · [All operations](https://skmtc.dev/palpluss/apis/palpluss-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/palpluss/palpluss-api/revisions/33fd40a3b314/schema)
