GET https://mybundlepay.com/ng/api/v2/virtual-card/users
KEY USAGE POLICY
Important: Use your test_secret_key for sandbox testing.
Switch to live_secret_key only when you are ready to go live.
- Test calls return mock card user data.
- Live calls fetch actual card users linked to your business account.
- Ensure your server IP is whitelisted before calling live endpoints.
⚠️ Do not use live keys for testing — unauthorized IPs will be blocked.
HEADERS
Authorization * string
Send your {secret_key} as a Bearer token in the header.
Content-Type * application/json
All requests must use JSON body format.
IP WHITELISTING
Only authorized server IPs can access this endpoint. Whitelist your IP in MyBundlePay Dashboard.
BODY PARAMS
| Parameter | Required | Description |
|---|---|---|
page |
✅ | Page number to fetch card users (default: 1). |
per_page |
❌ | Number of users per page (default: 10). |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://mybundlepay.com/ng/api/v2/virtual-card/users',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_POSTFIELDS =>'{
"page": "1",
"per_page": "3"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer {secret_key}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
const axios = require('axios');
const data = {
page: "1",
per_page: "3"
};
axios.get("https://mybundlepay.com/ng/api/v2/virtual-card/users", {
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {secret_key}"
},
data: data
})
.then(res => console.log(res.data))
.catch(err => console.error(err.response ? err.response.data : err.message));
✅ Success Response
{
"status": "success",
"message": "Card users fetched successfully.",
"data": {
"users": [
{
"customer_email": "john@example.com",
"id_number": "A23456789",
"id_type": "NIN",
"first_name": "John",
"last_name": "Doe",
"phone_number": "+2348012345678",
"city": "Lagos",
"state": "Lagos",
"country": "Nigeria",
"zip_code": "100001",
"line1": "10 MyBundle Street",
"house_name": "Victory Villa",
"bvn": "2233445566",
"id_image": "https://mybundlepay.com/uploads/ids/id123.png",
"user_photo": "https://mybundlepay.com/uploads/photos/photo123.png",
"date_of_birth": "1992-05-14",
"ref": "USER-REF001",
"status": "ACTIVE"
}
],
"meta": {
"total": 1,
"per_page": 3,
"current_page": 1,
"last_page": 1
}
},
"mode": "test"
}
❌ Error Response (Invalid Token)
{
"status": "failed",
"code": "INVALID_TOKEN",
"message": "Invalid secret key provided.",
"mode": "test"
}
❌ Error Response (IP Not Authorized)
{
"status": "failed",
"code": "IP_NOT_AUTHORIZED",
"message": "Your IP is not authorized for API access.",
"ip": "54.86.50.139",
"mode": "live"
}