Skip to main content
GET
/
transactions
List transactions
curl --request GET \
  --url https://api.palpluss.com/v1/transactions \
  --header 'Authorization: Basic <encoded-value>'
{
  "success": true,
  "data": {
    "items": [
      {
        "transactionId": "fa98a577-95ea-4a8f-8467-1fbe74f5d6f4",
        "type": "STK",
        "status": "SUCCESS",
        "amount": 1000,
        "currency": "KES",
        "phone": "254712345678",
        "accountReference": "INV-2024-001",
        "createdAt": "2026-03-01T08:00:00.000Z",
        "updatedAt": "2026-03-01T08:01:30.000Z"
      }
    ],
    "nextCursor": "eyJpZCI6ImZhOThhNTc3In0="
  },
  "requestId": "c1b2a3d4-0000-0000-0000-000000000000"
}

Pagination

Transactions are returned newest first. To fetch subsequent pages, pass the nextCursor value from the previous response as the cursor query parameter:
# Page 1
curl "https://api.palpluss.com/v1/transactions?limit=20" \
  -u "$PALPLUSS_API_KEY:"

# Page 2 (using nextCursor from page 1)
curl "https://api.palpluss.com/v1/transactions?limit=20&cursor=eyJpZCI6ImZhOThhNTc3In0=" \
  -u "$PALPLUSS_API_KEY:"
When nextCursor is null, you have reached the last page.

Filtering

Combine status and type filters to narrow results:
# All successful STK payments
curl "https://api.palpluss.com/v1/transactions?type=STK&status=SUCCESS" \
  -u "$PALPLUSS_API_KEY:"

# All pending B2C payouts
curl "https://api.palpluss.com/v1/transactions?type=B2C&status=PENDING" \
  -u "$PALPLUSS_API_KEY:"

Authorizations

Authorization
string
header
required

Use your API key as the username. Leave the password field empty.

Authorization: Basic <base64(apikey:)>

You can also pass the raw API key:

Authorization: Basic <apikey>

Query Parameters

limit
integer
default:20

Number of records per page (1–100, default 20).

Required range: 1 <= x <= 100
cursor
string

Pagination cursor from the previous response nextCursor field.

status
enum<string>

Filter by transaction status.

  • 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
Available options:
PENDING,
PROCESSING,
SUCCESS,
FAILED,
REVERSED,
CANCELLED
type
enum<string>

Filter by transaction type.

  • STK — M-Pesa STK Push collection
  • B2C — Business to Customer payout
Available options:
STK,
B2C

Response

Paginated list of transactions.

success
boolean
required
Example:

true

data
object
required

Response payload. Shape varies by endpoint.

requestId
string<uuid>
required

Unique identifier for this API request. Include in support tickets.

Example:

"c1b2a3d4-e5f6-7890-abcd-ef1234567890"