How to test virtual account on test webhook

Screenshot from 2023-10-29 14-20-52

An account details was generated to test on development, but after sending a value to it the webhook was not called

Hi @Ayinde_John

Thank you for sharing this experience,

Kindly note that when a virtual account number is created in test mode, the amount specified in your request is automatically credited, and a webhook for a successful charge is sent without the need to manually initiate a transfer to the virtual account.

Example of Webhooks received after successfully creating a virtual account number in Test mode:

  "event": "charge.completed",
  "data": {
    "id": 4695477,
    "tx_ref": "1698838419963-RND_504",
    "flw_ref": "6968761661861698838420226",
    "device_fingerprint": "N/A",
    "amount": 100,
    "currency": "NGN",
    "charged_amount": 100,
    "app_fee": 1.4,
    "merchant_fee": 0,
    "processor_response": "success",
    "auth_model": "AUTH",
    "ip": "::ffff:",
    "narration": "JudiAfrica",
    "status": "successful",
    "payment_type": "bank_transfer",
    "created_at": "2023-11-01T11:33:47.000Z",
    "account_id": 1816498,
    "customer": {
      "id": 2255599,
      "name": "Anonymous customer",
      "phone_number": null,
      "email": "",
      "created_at": "2023-11-01T11:33:39.000Z"


Good day Adekunle,

I tried this out and got this response on my webhook

  "id": "4915979",
  "txRef": "jhn-mdkn-10192029920",
  "flwRef": "4306435785951708179984861",
  "orderRef": "URF_1708179984691_7717035",
  "paymentPlan": "",
  "paymentPage": "",
  "createdAt": "2024-02-17T14:26:31.000Z",
  "amount": "1000000",
  "charged_amount": "1000000",
  "status": "successful",
  "IP": "::ffff:",
  "currency": "NGN",
  "appfee": "2000",
  "merchantfee": "0",
  "merchantbearsfee": "1",
  "customer": {
    "id": "2355666",
    "phone": "08012345678",
    "fullName": "Anonymous customer",
    "customertoken": "",
    "email": "",
    "createdAt": "2024-02-17T14:26:24.000Z",
    "updatedAt": "2024-02-17T14:26:24.000Z",
    "deletedAt": "",
    "AccountId": "876506"
  "entity": {
    "account_number": "1234567890",
    "first_name": "DOE",
    "last_name": "JOHN",
    "createdAt": "2024-02-17T14:26:31.000Z"
  "event": {

I guess ‘entity’ is the sender in this scenario but why is the origin bank missing? How do I get this information?

@Adekunle Is there a chance this can be added or is there an alternative?