Skip to main content
GET
/
v1
/
transactions
List transactions
curl --request GET \
  --url https://api.moflay.com/v1/transactions \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "trxn_ABC123DEF456GHI",
      "customerId": "cus_MNO345PQR678STU",
      "object": "transaction",
      "environment": "sandbox",
      "type": "payment",
      "amount": 1000,
      "description": "Payment for Order #12345 - Premium Subscription",
      "currency": "KES",
      "status": "completed",
      "phoneNumber": "254712345678",
      "receiptNumber": "QMF7MBB5ED",
      "failureReason": null,
      "metadata": {},
      "source": "api",
      "processedAt": "2024-12-19T10:30:00.000Z",
      "createdAt": "2024-12-19T10:25:00.000Z",
      "paidAt": "2024-12-19T10:32:00.000Z",
      "failedAt": null,
      "unknownAt": null
    }
  ],
  "meta": {
    "cursor": "eyJpZCI6InRyeG5fQUJDMTIzREVGNDU2R0hJIn0=",
    "hasPreviousPage": false,
    "hasNextPage": true
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.moflay.com/llms.txt

Use this file to discover all available pages before exploring further.

Category Reference

Categories describe the economic classification of a transaction event.
Some category values use spaces instead of underscores (e.g., INTERCOMPANY TRANSFER, CLAIM REWARD). Always reference the exact values below.
CategoryDescription
DEPOSITInbound receipt of funds
WITHDRAWALOutbound transfer of funds
SWAPExchange of one asset for another
BRIDGECross-chain transfer
INTERCOMPANY TRANSFERTransfer between legal entities
INTERNAL TRANSFERTransfer within the same legal entity
FEENetwork gas, exchange, or service fee
MINTINGCreation of new tokens
STAKING_REWARDYield from staking
INVOICEPayment received against a customer invoice
BILLPayment against a vendor bill
CLAIM REWARDProtocol or ecosystem reward claim
BORROWBorrowing event
REPAYMENTLoan repayment
RESERVES CHANGETreasury reserves adjustment
REALIZED_PNLRealized profit or loss
NFTNFT mint, sale, or transfer
SPAMSpam/airdrop (auto-hides from accounting)
UNKNOWNUnclassified, pending review

Authorizations

Authorization
string
header
required

The API key to use for authentication

Query Parameters

q
string | null

Search for transactions by description, phone number, or receipt number

Example:

"Premium Subscription"

cursor
string | null

Cursor for pagination, representing the last item from the previous page

Example:

"eyJpZCI6IjEyMyJ9"

customerId
string | null

Filter transactions by specific customer ID

Example:

"cus_MNO345PQR678STU"

statuses
enum<string>[] | null

Array of transaction statuses to filter by. Available statuses: 'initiating', 'pending', 'completed', 'failed', 'canceled', 'unknown'

Current status. Possible values: initiating, pending, completed, failed, canceled, unknown

Available options:
initiating,
pending,
completed,
failed,
canceled,
unknown
Example:
["pending", "completed", "canceled"]
amountRange
number[] | null

Amount range as [min, max] in cents to filter transactions by monetary value. Example: [10000, 50000] for KES 100.00 to KES 500.00

Example:
[10000, 50000]
amount
string[] | null

Array of specific amounts (as strings in KES) to filter transactions by exact values. Values are converted to cents internally.

Example:
["150.75", "299.99", "1000.00"]
limit
number
default:10

The number of transactions to return (1-100)

Required range: 1 <= x <= 100
Example:

10

start
string<date-time> | null

Start date (inclusive) for filtering transactions in ISO 8601 format

Example:

"2024-12-01T00:00:00.000Z"

end
string<date-time> | null

End date (inclusive) for filtering transactions in ISO 8601 format

Example:

"2024-12-31T23:59:59.999Z"

sortOrder
enum<string>
default:desc
Available options:
asc,
desc
Example:

"desc"

sortBy
enum<string>
default:createdAt
Available options:
createdAt,
paidAt,
failedAt,
amount,
status,
phoneNumber,
processedAt
Example:

"createdAt"

Response

List of all transactions

List of all transactions

data
object[]
required
meta
object
required