VantPay API Documentation
API Docs
API Docs
  1. Webhooks
  • Authentication
    • Authenticate
      POST
  • Virtual Account
    • Create Static Virtual Account
      POST
    • Create Dynamic Virtual Account
      POST
    • List Static Virtual Accounts
      GET
    • get-wallet-balance
      GET
    • get-prefixes
      GET
    • get-dynamic-virtual-accounts
      GET
    • validate-virtual-account
      POST
  • Inward Transfers
    • Inward TransQuery (TSQ)
      • inward-transquery
    • Inward Transactions
      • get-wallet transactions
  • Merchant Settlement
    • Merchant Payout
      • merchant-settlement
    • Get Settlement History
      • get-settlement-history
    • Confirm Payout Status
      • get-settlement-status
  • Checkout
    • initiate-checkout
      POST
    • create-account
      POST
    • complete-checkout
      POST
    • query-access-code
      GET
  • Transactions
    • List Transactions (and fetch by reference)
      GET
  • Wallet
    • Get Wallet Balance
      GET
  • Webhooks
    • Set Notification (Webhook) URL
      POST
    • Collection Notification (received by YOU, not called by you)
      POST
  • Schemas
    • AuthData
    • ApiResponseEnvelope
    • StaticAccountData
    • AuthenticateResponse
    • DynamicAccountData
    • VirtualAccountStatic
    • StaticAccountListItem
    • CreateStaticVirtualAccountResponse
    • Transaction
    • VirtualAccountDynamic
    • PagedStaticAccounts
    • CreateDynamicVirtualAccountResponse
    • PagedTransactions
    • VirtualAccountListItem
    • WalletBalanceData
    • CollectionNotification
    • PagedVirtualAccountList
    • ListStaticVirtualAccountsResponse
    • PagedTransactionList
    • ListTransactionsResponse
    • WalletBalance
    • WalletBalanceResponse
    • SetNotificationUrlResponse
    • WebhookCollectionPayload
  1. Webhooks

Collection Notification (received by YOU, not called by you)

POST
/webhook-notifications/collection
⚠️ This is not an endpoint you call. It documents the payload VantPay POSTs to the webhook URL you configured, whenever a virtual account is funded.
Acknowledgement, retries & idempotency:
Respond with an HTTP 2xx status as soon as you have safely stored the event. Any non-2xx response is treated as a failed delivery.
VantPay retries failed deliveries with backoff, up to a configured maximum number of attempts, after which the notification is parked for manual review.
Deliveries may be repeated. transactionRef is unique and stable — deduplicate on it so a repeated notification is processed only once.
Do not rely on delivery order. For authoritative state, re-query GET /api/v1/transactions?search={transactionRef}.
Verifying notifications:
Configure an authToken and reject any notification whose Authorization header does not match the token you set.
Only accept notifications over HTTPS.
Treat the webhook as a signal, then confirm the amount and status against the transactions API before releasing value to your customer.

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢200
Acknowledge receipt with any HTTP 2xx status.
This response does not have a body.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://merchantapi-dev.vantpay.io/webhook-notifications/collection' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "transactionRef": "de95884fbfaa8285e29964df2c1b2be8",
    "amount": 19900,
    "account": "9000603117",
    "sourceAccount": "1000203425",
    "sourceBank": "Digitvant MFB",
    "senderName": "Innocent Orji",
    "narration": "Virtual Account Credit",
    "transactionDate": "2026-09-08T16:04:14",
    "status": "SUCCESSFUL"
}'
Modified at 2026-09-09 07:21:40
Previous
Set Notification (Webhook) URL
Next
AuthData
Built with