Virtual Card Funding

To allow a cardholder to spend from their virtual card, you must first add funds to the virtual card from your issuing balance. Likewise, you must have sufficient funds in your issuing balance to successfully fund the virtual card.

To fund a virtual card, make a POST request to:

{{baseurl}}/api/v1/cards/:reference/fund

🚧

This endpoint is protected by secret key authentication. When calling it, make sure to append your secret key to the authorization headers.

See the sample request payload below:

{
	"reference": "unique_transaction_reference",
	"amount": 100,
	"description": "Buy Lunch"
}

Here's what the response to this request would look like:

{
  "status": true,
  "message": "Card funding pending",
  "data": {
    "card_reference": "226eeb6f-f6cb-562f-a5e8-4uhsdechhgtywhg",
    "transaction_reference": "unique_transaction_reference",
    "amount": 100,
    "fee": 0.005,
    "currency": "USD",
    "type": "card_funding",
    "status": "pending"
  }
}

A webhook notification is also sent to your application immediately the virtual card is funded. The webhook notification response will look like this:

{
 "event": "card.funding.success",
 "data": {
   "reference": "webhook unique reference",
   "card_reference": "876eeb6f-f6cb-562f-a5e8-48d91dec7999",
   "transaction_reference": "TX-8EtDYNlTlqp5EwuuDD9susN00TtIsETbxrhiE",
   "amount": 100,
   "fee": 0.005,
   "currency": "USD",
   "status": "success",
   "type": "card_funding",
   "card_balance": 1005.23,
   "date": "2000-11-11T10:00:00"
 }
}

See more on webhook events for virtual cards here.