Skip to main content
GET
List transfers
This list does not use the shared filter grammar. The parameters are fixed — no :operator suffixes — one sort key only, and the page size defaults to 20 rather than 25.
To reconcile, page by -createdAt with a pinned upper bound, or read the transactions ledger, which is the record of what actually moved.

Error codes

Authorizations

Authorization
string
header
required

A secret API key, sent as Authorization: Bearer sk_test_… in sandbox or Bearer sk_live_… in live.

Query Parameters

page
integer
default:1

One-based page number.

Required range: x >= 1
pageSize
integer
default:20

Records per page.

Required range: 1 <= x <= 100

Case-insensitive term, 1 to 100 characters.

Required string length: 1 - 100
sort
enum<string>

One key only. Prefix with - for descending order.

Available options:
createdAt,
-createdAt,
totalDebit,
-totalDebit,
status,
-status
status
enum<string>

Filter by transfer status.

Available options:
awaiting_approval,
submitting,
pending,
completed,
failed,
reversed,
rejected
destinationType
enum<string>

Filter by destination type.

Available options:
own_account,
sakawave_tag,
external
sourceCurrency
enum<string>

Filter by source currency.

Available options:
NGN,
USD,
GBP,
EUR,
GHS,
ZAR,
UGX,
CAD,
MXN,
AED
destinationCurrency
enum<string>

Filter by destination currency.

Available options:
NGN,
USD,
GBP,
EUR,
GHS,
ZAR,
UGX,
CAD,
MXN,
AED,
AUD,
SGD,
HKD,
KES,
TZS,
BRL,
CNY,
XAF,
PHP,
USDC

Response

Successful response.

items
object[]
required
pagination
object
required