GET https://mybundlepay.com/ng/api/v2/virtual-card/{id}/transactions
KEY USAGE POLICY
Important:
• Use test_secret_key for sandbox testing.
• Use live_secret_key only when ready for production.
- Test mode connects to Sandbox.
- Live mode fetches transactions from live.
- Your server IP must be whitelisted.
⚠ Unauthorized IPs or incorrect key usage will be blocked.
HEADERS
Authorization *
Bearer {secret_key}
Content-Type
application/json
IP WHITELISTING
Only approved server IPs can access this endpoint via API.
QUERY PARAMS
| Parameter | Required | Description |
|---|---|---|
order |
✅ | ASC or DESC |
page |
✅ | Page number |
take |
✅ | Items per page |
PATH PARAM
| Parameter | Required | Description |
|---|---|---|
id |
✅ |
Test Mode → card_id Live Mode → card_account_id |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://mybundlepay.com/ng/api/v2/virtual-card/{id}/transactions?order=DESC&page=1&take=10',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer {secret_key}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
const axios = require('axios');
axios.get("https://mybundlepay.com/ng/api/v2/virtual-card/{id}/transactions?order=DESC&page=1&take=10", {
headers: {
"Authorization": "Bearer {secret_key}"
}
})
.then(res => console.log(res.data))
.catch(err => console.error(err.response ? err.response.data : err.message));
✅ Success (No Transactions Yet)
{
"status": "success",
"statusCode": 200,
"message": "Transactions fetched successfully.",
"data": [],
"pagination": {
"total": 0,
"pages": 0,
"page": "1",
"limit": 50
},
"mode": "test"
}
❌ Card Not Found
{
"status": "success",
"statusCode": 400,
"message": "Card not found.",
"data": [],
"pagination": [],
"mode": "test"
}
❌ Missing Parameter
{
"status": "failed",
"message": "Missing required parameters: order, page, or take.",
"mode": "unknown"
}
❌ Invalid Token
{
"status": "failed",
"code": "INVALID_TOKEN",
"message": "Invalid secret key provided.",
"mode": "live"
}
❌ Card Not Assigned (Live Mode)
{
"status": "failed",
"message": "This card is not assigned to your business.",
"mode": "live"
}