Developer Portal
Ctrl K
API REFERENCE
CORE ENDPOINT
Wallet & Balance API
Retrieve your real-time wallet balance, available funds, promotional credits, currency configuration, and assigned virtual bank accounts via secure, authenticated GET requests.
GET
/api/v1/wallet/balance
(or alias /api/v1/balance)
Authentication & Required Headers
| HEADER | VALUE | REQUIRED |
|---|---|---|
Authorization |
Bearer YOUR_API_TOKEN |
Yes |
Accept |
application/json |
Yes |
Developer Best Practice
We recommend checking your balance prior to initiating bulk or high-frequency automated orders (such as corporate data vending or verification batches). This endpoint is lightweight and responds with low latency (< 50ms).
Implementation Code Examples
curl -X GET "https://www.api.arewasmart.com.ng/api/v1/wallet/balance" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
const axios = require('axios');
async function getWalletBalance() {
try {
const response = await axios.get('https://www.api.arewasmart.com.ng/api/v1/wallet/balance', {
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json'
}
});
console.log('Balance:', response.data.data.formatted_balance);
console.log('Raw Data:', response.data.data);
} catch (error) {
console.error('Error fetching balance:', error.response?.data || error.message);
}
}
getWalletBalance();
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://www.api.arewasmart.com.ng/api/v1/wallet/balance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_API_TOKEN",
"Accept: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
$data = json_decode($response, true);
print_r($data);
}
import requests
url = "https://www.api.arewasmart.com.ng/api/v1/wallet/balance"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Accept": "application/json"
}
response = requests.get(url, headers=headers)
data = response.json()
if response.status_code == 200:
print(f"Current Balance: {data['data']['formatted_balance']}")
else:
print(f"Failed: {data.get('message')}")
Response Payloads
Success Response (200 OK)
200 OK{
"status": "success",
"code": 200,
"message": "Wallet balance retrieved successfully.",
"data": {
"wallet_number": "9830710242",
"balance": 15450.00,
"bonus": 250.00,
"ref_bonus": 0.00,
"hold_amount": 0.00,
"currency": "NGN",
"status": "active",
"virtual_account": {
"bank_name": "Palmpay",
"account_number": "9830710242",
"account_name": "AREWA SMART / JOHN DOE",
"status": "active"
}
}
}
401 Unauthorized
401{
"status": "failed",
"code": 401,
"message": "Unauthorized. A valid API token is required. Pass via Bearer token or api_token parameter."
}
403 Forbidden (IP / Status)
403{
"status": "failed",
"code": 403,
"message": "IP address 192.168.1.1 is not authorized."
}