O
Kanzudatapro
Type to search the docs...

Virtual Card API

Create and manage USD and NGN virtual debit cards for international shopping and subscriptions.


Issue Virtual Card

Generate a new virtual Visa or Mastercard with prefunded balance.

POST https://kanzudatapro.com.ng/api/virtual-card

Request Parameters

Parameter Type Required Description
amount Numeric Required Funding amount for card creation. Minimum initial fund applies.
currency String Required Card currency: USD or NGN.
card_name String Required Name to print on the virtual card.
curl -X POST "https://kanzudatapro.com.ng/api/virtual-card" \
      -H "Authorization: Token YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "amount": 10,
        "currency": "USD",
        "card_name": "Ibarhim Musa"
      }'
<?php
    $url = 'https://kanzudatapro.com.ng/api/virtual-card';
    $payload = [
        'amount' => 10,
        'currency' => 'USD',
        'card_name' => 'Ibarhim Musa'
    ];

    $ch = curl_init($url);
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => json_encode($payload),
        CURLOPT_HTTPHEADER => [
            'Authorization: Token YOUR_API_KEY',
            'Content-Type: application/json',
        ]
    ]);
    $response = curl_exec($ch);
    curl_close($ch);
    print_r(json_decode($response, true));
    ?>
const response = await fetch('https://kanzudatapro.com.ng/api/virtual-card', {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        amount: 10,
        currency: "USD",
        card_name: "Ibarhim Musa"
      })
    });
    const data = await response.json();
    console.log(data);
import requests

    url = "https://kanzudatapro.com.ng/api/virtual-card"
    headers = {
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    }
    payload = {
        "amount": 10,
        "currency": "USD",
        "card_name": "Ibarhim Musa"
    }

    response = requests.post(url, json=payload, headers=headers)
    print(response.json())

Response Example

{
      "status": "success",
      "message": "Virtual card created successfully",
      "card_id": "VC-991823",
      "card_number": "4111-XXXX-XXXX-1111",
      "expiry": "12/28",
      "cvv": "***"
    }

List Virtual Cards

Retrieve a list of all your active and inactive virtual cards.

GET https://kanzudatapro.com.ng/api/virtual-card

Get Card Details

Get specific virtual card details including recent transactions.

GET https://kanzudatapro.com.ng/api/virtual-card/{id}

Fund Virtual Card

Top-up your virtual card balance from your main wallet.

POST https://kanzudatapro.com.ng/api/virtual-card/fund
Parameter Type Required Description
card_id String Required ID of the virtual card.
amount Numeric Required Amount in USD to fund.

Withdraw from Virtual Card

Withdraw funds from your virtual card back to your main wallet.

POST https://kanzudatapro.com.ng/api/virtual-card/withdraw
Parameter Type Required Description
card_id String Required ID of the virtual card.
amount Numeric Required Amount in USD to withdraw.

Freeze Virtual Card

Temporarily freeze your virtual card to prevent further transactions.

POST https://kanzudatapro.com.ng/api/virtual-card/freeze/{id}

Unfreeze Virtual Card

Re-activate a previously frozen virtual card.

POST https://kanzudatapro.com.ng/api/virtual-card/unfreeze/{id}