curl --request GET \
--url https://examples.staging.rampapay.com/v1/wallets/transactions \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://examples.staging.rampapay.com/v1/wallets/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://examples.staging.rampapay.com/v1/wallets/transactions"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "dep_3Nc8Wq1Zr6Tm9Kx4Lp7Vb2Hs",
"type": "top_up",
"direction": "in",
"status": "pending",
"currency": "USDT",
"available_change": "+0.000000",
"reserved_change": "+0.000000",
"balance_after": null,
"reference": {
"type": "deposit",
"id": "dep_3Nc8Wq1Zr6Tm9Kx4Lp7Vb2Hs",
"chain": "tron",
"tx_hash": "c41e7b2d9a6f3085e2c7b4a1d8f5e2093b6c9a4d7e1f8b5c2a9d6e3f0b7c4a18",
"amount": "250.000000"
},
"created_at": "2026-09-27T14:07:02.000Z"
},
{
"id": "txn_Qm4Vb8Xc2Nz6Lk1Jh5Gf9Ds3",
"type": "payout_settled",
"direction": "out",
"status": "completed",
"currency": "USDT",
"available_change": "+0.000000",
"reserved_change": "-102.040000",
"balance_after": {
"available": "897.960000",
"reserved": "0.000000"
},
"reference": {
"type": "payout",
"id": "po_9Fz3Kd7RwP2mX8cT4nB6vQ1h",
"transaction_id": "W-1001"
},
"created_at": "2026-09-27T14:06:12.000Z"
},
{
"id": "txn_Pw7Ty2Ur9Ie4Oq6Wa1Sd8Fg3",
"type": "payout_held",
"direction": "out",
"status": "completed",
"currency": "USDT",
"available_change": "-102.040000",
"reserved_change": "+102.040000",
"balance_after": {
"available": "897.960000",
"reserved": "102.040000"
},
"reference": {
"type": "payout",
"id": "po_9Fz3Kd7RwP2mX8cT4nB6vQ1h",
"transaction_id": "W-1001"
},
"created_at": "2026-09-27T14:06:05.000Z"
},
{
"id": "txn_Hj3Kl8Zx5Cv1Bn7Mq2We9Rt4",
"type": "top_up",
"direction": "in",
"status": "completed",
"currency": "USDT",
"available_change": "+1000.000000",
"reserved_change": "+0.000000",
"balance_after": {
"available": "1000.000000",
"reserved": "0.000000"
},
"reference": {
"type": "deposit",
"id": "dep_7Hq2Lx9TbR4mW1cZ8kP3sN6v",
"chain": "tron",
"tx_hash": "9f1c2e7a4b3d5c6e8f0a1b2c3d4e5f60718293a4b5c6d7e8f9a0b1c2d3e4f5a6",
"amount": "1000.000000"
},
"created_at": "2026-09-27T13:58:20.000Z"
}
],
"next_cursor": null
}Your wallet statement
Scope: wallet:read
Newest first. One row per movement on your USDT wallet, money in and money out. direction in: top_up (a USDT transfer to your address). direction out: payout_held (you paid a QR at a quote; its total moves from available to reserved), payout_settled (the payment completed; the reserved amount leaves), payout_released (the payment failed; the reserved amount returns to available). An adjustment is in or out by its sign. status is completed once the movement is booked. A top-up still confirming on-chain is pending, or in_review if it reached your address but could not be credited automatically (Rampa resolves it); those rows come first on the first page, with zero changes and balance_after null, and their id is the deposit’s dep_ id until they complete, when the booked row takes its own txn_ id. Track a deposit or a payment by reference.id, which stays the same, or fetch its rows with reference_id. currency is the row’s: every amount on it is in it. available_change and reserved_change are signed; balance_after is your balance right after the movement, so the newest row matches GET /wallets. reference names what it belongs to: a payment by its po_ id and your transaction_id, or a top-up by its dep_ deposit id, transfer and amount. Amounts are USDT only — the merchant amount in bolivianos is on the payment. Page with limit and the next_cursor of the previous answer, which is null on the last page.
curl --request GET \
--url https://examples.staging.rampapay.com/v1/wallets/transactions \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://examples.staging.rampapay.com/v1/wallets/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://examples.staging.rampapay.com/v1/wallets/transactions"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "dep_3Nc8Wq1Zr6Tm9Kx4Lp7Vb2Hs",
"type": "top_up",
"direction": "in",
"status": "pending",
"currency": "USDT",
"available_change": "+0.000000",
"reserved_change": "+0.000000",
"balance_after": null,
"reference": {
"type": "deposit",
"id": "dep_3Nc8Wq1Zr6Tm9Kx4Lp7Vb2Hs",
"chain": "tron",
"tx_hash": "c41e7b2d9a6f3085e2c7b4a1d8f5e2093b6c9a4d7e1f8b5c2a9d6e3f0b7c4a18",
"amount": "250.000000"
},
"created_at": "2026-09-27T14:07:02.000Z"
},
{
"id": "txn_Qm4Vb8Xc2Nz6Lk1Jh5Gf9Ds3",
"type": "payout_settled",
"direction": "out",
"status": "completed",
"currency": "USDT",
"available_change": "+0.000000",
"reserved_change": "-102.040000",
"balance_after": {
"available": "897.960000",
"reserved": "0.000000"
},
"reference": {
"type": "payout",
"id": "po_9Fz3Kd7RwP2mX8cT4nB6vQ1h",
"transaction_id": "W-1001"
},
"created_at": "2026-09-27T14:06:12.000Z"
},
{
"id": "txn_Pw7Ty2Ur9Ie4Oq6Wa1Sd8Fg3",
"type": "payout_held",
"direction": "out",
"status": "completed",
"currency": "USDT",
"available_change": "-102.040000",
"reserved_change": "+102.040000",
"balance_after": {
"available": "897.960000",
"reserved": "102.040000"
},
"reference": {
"type": "payout",
"id": "po_9Fz3Kd7RwP2mX8cT4nB6vQ1h",
"transaction_id": "W-1001"
},
"created_at": "2026-09-27T14:06:05.000Z"
},
{
"id": "txn_Hj3Kl8Zx5Cv1Bn7Mq2We9Rt4",
"type": "top_up",
"direction": "in",
"status": "completed",
"currency": "USDT",
"available_change": "+1000.000000",
"reserved_change": "+0.000000",
"balance_after": {
"available": "1000.000000",
"reserved": "0.000000"
},
"reference": {
"type": "deposit",
"id": "dep_7Hq2Lx9TbR4mW1cZ8kP3sN6v",
"chain": "tron",
"tx_hash": "9f1c2e7a4b3d5c6e8f0a1b2c3d4e5f60718293a4b5c6d7e8f9a0b1c2d3e4f5a6",
"amount": "1000.000000"
},
"created_at": "2026-09-27T13:58:20.000Z"
}
],
"next_cursor": null
}Authorizations
On the example server, any key that starts with rpk_mock_, e.g. rpk_mock_yourname. Never your real key.
Query Parameters
ISO-8601 instant with a zone. At or after this instant.
ISO-8601 instant with a zone. At or before this instant.
in | out. in: top-ups. out: payments.
in, out completed | pending | in_review. Only rows in this status.
completed, pending, in_review top_up | payout_held | payout_settled | payout_released | adjustment. Only movements of this type.
top_up, payout_held, payout_settled, payout_released, adjustment string. Only the movements of the payment with this transaction id.
po_ or dep_ id. Only the rows whose reference.id is this: a payout's movements, or a deposit's row — pending or credited.
integer 1–100. Page size. Default 50.
string. next_cursor from the previous page. Keep the same filters.