Get wallet balance overview
curl --request GET \
--url https://api.stabyl.com/v1/partner/wallets/balances/overview \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.stabyl.com/v1/partner/wallets/balances/overview"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.stabyl.com/v1/partner/wallets/balances/overview', 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.stabyl.com/v1/partner/wallets/balances/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$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.stabyl.com/v1/partner/wallets/balances/overview"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
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.stabyl.com/v1/partner/wallets/balances/overview")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.stabyl.com/v1/partner/wallets/balances/overview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"balances": [
{
"available": "49000.00",
"currency": "NGN",
"locked": "1000.00",
"rail_equivalents": null,
"total": "50000.00"
},
{
"available": "1000.00",
"currency": "USD",
"locked": "0.00",
"rail_equivalents": [],
"total": "1000.00"
}
],
"credit": {
"available_credit": "0.00",
"credit_limit": "0.00",
"credit_used": "0.00",
"currency": "USD",
"net_negative": "0.00",
"net_positive": "0.00",
"next_due_at": null,
"outstanding": "0.00",
"overdue": false,
"status": "active",
"withdrawal_blocked": false
},
"generated_at": "2026-05-24T12:00:00Z",
"withdrawable": {
"ngn": "49000.00",
"usd": "1000.00"
}
},
"status": "success"
}{
"error": {
"code": "UNAUTHORIZED",
"message": "missing X-Api-Key header"
},
"status": "error"
}Wallets
Get wallet balance overview
Returns current NGN and USD balances, including available and locked amounts. Use available balance for spend checks and locked balance to explain funds committed to pending activity.
GET
/
partner
/
wallets
/
balances
/
overview
Get wallet balance overview
curl --request GET \
--url https://api.stabyl.com/v1/partner/wallets/balances/overview \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.stabyl.com/v1/partner/wallets/balances/overview"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.stabyl.com/v1/partner/wallets/balances/overview', 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.stabyl.com/v1/partner/wallets/balances/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$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.stabyl.com/v1/partner/wallets/balances/overview"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
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.stabyl.com/v1/partner/wallets/balances/overview")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.stabyl.com/v1/partner/wallets/balances/overview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"balances": [
{
"available": "49000.00",
"currency": "NGN",
"locked": "1000.00",
"rail_equivalents": null,
"total": "50000.00"
},
{
"available": "1000.00",
"currency": "USD",
"locked": "0.00",
"rail_equivalents": [],
"total": "1000.00"
}
],
"credit": {
"available_credit": "0.00",
"credit_limit": "0.00",
"credit_used": "0.00",
"currency": "USD",
"net_negative": "0.00",
"net_positive": "0.00",
"next_due_at": null,
"outstanding": "0.00",
"overdue": false,
"status": "active",
"withdrawal_blocked": false
},
"generated_at": "2026-05-24T12:00:00Z",
"withdrawable": {
"ngn": "49000.00",
"usd": "1000.00"
}
},
"status": "success"
}{
"error": {
"code": "UNAUTHORIZED",
"message": "missing X-Api-Key header"
},
"status": "error"
}Use
available for spend checks and locked to explain funds reserved for pending account activity. Use withdrawable for the amount that can be withdrawn right now; it accounts for outstanding credit and may be null when temporarily unavailable.Authorizations
API credential. Withdrawal quote and submit operations additionally require the documented Ed25519 timestamp, nonce, and signature headers.
Was this page helpful?
⌘I