Skip to main content
GET
/
transaction-list
List user transactions
curl --request GET \
  --url https://aarwcjjzhlmkgdwrisyt.supabase.co/functions/v1/transaction-list \
  --header 'Authorization: Bearer <token>'
{
  "success": true,
  "status": 200,
  "data": {
    "data": [
      {
        "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "type": "wallet_topup",
        "category": "deposit",
        "description": "Wallet top-up",
        "amount": 500000,
        "currency": "NGN",
        "direction": "in",
        "status": "succeeded",
        "escrow_id": null,
        "milestone_id": null,
        "provider": "paystack",
        "provider_charge_id": "ch_abc123",
        "provider_transfer_id": null,
        "provider_refund_id": null,
        "metadata": {},
        "created_at": "2025-12-20T10:00:00.000Z",
        "completed_at": "2025-12-20T10:00:05.000Z"
      },
      {
        "id": "b2c3d4e5-f6a7-8901-bcde-f01234567891",
        "type": "escrow_lock",
        "category": "escrow",
        "description": "Funds locked in escrow",
        "amount": 200000,
        "currency": "NGN",
        "direction": "out",
        "status": "succeeded",
        "escrow_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
        "milestone_id": null,
        "provider": "wallet",
        "provider_charge_id": null,
        "provider_transfer_id": null,
        "provider_refund_id": null,
        "metadata": {},
        "created_at": "2025-12-19T14:00:00.000Z",
        "completed_at": "2025-12-19T14:00:01.000Z"
      }
    ],
    "next_cursor": "2025-12-19T14:00:00.000Z"
  }
}

Authorizations

Authorization
string
header
required

JWT access token obtained from /auth-verify (login context) or /auth-signup. Set the bearer_token environment variable in your API client to apply it globally.

Query Parameters

category
enum<string>

Filter by transaction category group

Available options:
deposit,
withdrawal,
escrow
escrow_id
string<uuid>

Scope results to a specific escrow

status
enum<string>

Filter by transaction status

Available options:
pending,
succeeded,
failed,
canceled
limit
integer
default:20

Number of results per page

Required range: 1 <= x <= 100
before
string<date-time>

Cursor — created_at of the last item from the previous page (next_cursor value)

Response

Transaction list returned

success
boolean
Example:

true

status
integer
Example:

200

data
object