One integration for payments, cards, bills and payouts.
MyBundlePay gives developers a clean payment gateway, virtual account funding, payout rails, card issuing tools, bill payments, webhooks and merchant-ready checkout experiences.
API Test Console
Test the current endpoint directly from the documentation. Secret keys stay inside this browser session.
Enter your test key, review the sample body for this page, then send a request.
PATCH https://mybundlepay.com/ng/api/v1/cards/{card_id}/unfreeze
KEY USAGE POLICY
Important: Always begin testing with your
test_secret_key. This simulates requests without modifying live cards.
- Use
test_secret_keyfor sandbox calls. - Switch to
secret_key(Live Key) only when ready for production. test_secret_keyreturns simulated responses and does not affect live cards.secret_keywill unfreeze actual issued cards.
⚠️ Going live without testing may cause failed transactions or blocked access.
HEADERS
Authorization * string
Pass your {secret_key} as a Bearer token.
Accept * application/json
All requests must be sent in JSON format.
PATH PARAMS
The ID of the virtual card to be unfrozen (UUID generated when card is issued).
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://mybundlepay.com/ng/api/v1/cards/{card_id}/unfreeze",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_HTTPHEADER => array(
"Accept: application/json",
"Authorization: Bearer {secret_key}"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
const axios = require('axios');
axios.patch("https://mybundlepay.com/ng/api/v1/cards/{card_id}/unfreeze", {}, {
headers: {
"Accept": "application/json",
"Authorization": "Bearer {secret_key}"
}
}).then(res => {
console.log(res.data);
}).catch(err => {
console.error(err.response ? err.response.data : err.message);
});
curl -X PATCH "https://mybundlepay.com/ng/api/v1/cards/{card_id}/unfreeze" \
-H "Accept: application/json" \
-H "Authorization: Bearer {secret_key}"
Success Response
{
"status": "success",
"message": "Card successfully enabled",
"data": {
"status": true,
"message": "Successfully enabled card"
}
}
Common Error Responses
Invalid Token — 401
{
"status": "failed",
"message": "Invalid secret key provided."
}
IP Not Allowed — 403
{
"status": "failed",
"code": "IP_NOT_ALLOWED",
"message": "Your IP is not authorized for API access.",
"ip": "192.168.1.100"
}
Card Not Found — 404
{
"status": "failed",
"message": "Card id does not exist"
}
Server Error — 500
{
"status": "failed",
"message": "An error occurred while unfreezing the card",
"error": "Internal Server Error"
}