List Treasury wallet movements
curl --request GET \
--url https://api.sandbox.rails.wayex.com/v1/treasury/movements \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.rails.wayex.com/v1/treasury/movements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.rails.wayex.com/v1/treasury/movements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sandbox.rails.wayex.com/v1/treasury/movements",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.rails.wayex.com/v1/treasury/movements"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sandbox.rails.wayex.com/v1/treasury/movements")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.rails.wayex.com/v1/treasury/movements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "<string>",
"clientId": "<string>",
"asset": "AUD",
"kind": "funding_credited",
"availableDelta": "<string>",
"reservedDelta": "<string>",
"reference": "<string>",
"occurredAt": "2023-11-07T05:31:56Z",
"reason": "<string>"
}
]
}Treasury activity and reconciliation
List Treasury wallet movements
Lists immutable wallet credits, debits, reservations, releases, returns, and adjustments for this tenant account. Fees never appear as separate movements: each operation’s reserved debit already includes its fee, and a pay-in is credited net of its inbound fee.
GET
/
v1
/
treasury
/
movements
List Treasury wallet movements
curl --request GET \
--url https://api.sandbox.rails.wayex.com/v1/treasury/movements \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.rails.wayex.com/v1/treasury/movements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.rails.wayex.com/v1/treasury/movements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sandbox.rails.wayex.com/v1/treasury/movements",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.rails.wayex.com/v1/treasury/movements"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sandbox.rails.wayex.com/v1/treasury/movements")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.rails.wayex.com/v1/treasury/movements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "<string>",
"clientId": "<string>",
"asset": "AUD",
"kind": "funding_credited",
"availableDelta": "<string>",
"reservedDelta": "<string>",
"reference": "<string>",
"occurredAt": "2023-11-07T05:31:56Z",
"reason": "<string>"
}
]
}What this endpoint does
Lists immutable wallet credits, debits, reservations, releases, returns, and adjustments for this tenant account. Fees never appear as separate movements: each operation’s reserved debit already includes its fee, and a pay-in is credited net of its inbound fee.When to use it
Use it to reconcile balance changes and follow a payout, conversion, withdrawal, or funding reference into the wallet ledger.Before you call
Authenticate with an API key that can read this resource. Results are restricted to the tenant account bound to that key.Money and balance effect
This is a read-only request. It does not reserve, debit, credit, or settle money.States and completion
Movements are financial facts, while operations have workflows. A movement does not by itself prove an external bank or blockchain leg settled.Safe retries
GET requests are read-only and may be retried with normal exponential backoff. Do not send anIdempotency-Key.
Read Operations and reconciliation for the complete workflow.
