This webhook is triggered when a transfer is made to the merchant’s Zerthpay virtual account generated during checkout. Once the payment is successfully confirmed by our system, the merchant’s wallet is credited and a webhook notification is sent immediately. Below is a sample of the webhook payload. The `externalReference` field corresponds to the reference provided during the payment request and can be used to track the transaction within the developer’s application.
Webhook
<?php
// Example webhook data structure
$response = [
'type' => 'merchant.checkout',
'reference' => 'ErbNGkv5F1pGrcxh19sMrRkp3dOSJODnUplyWTDfbBvb2Qtx27ddRJ56pVGs_1749198931',
'data' => [
'_id' => '6842a89f33fe040024b94966',
'client' => '4qO2f5FdbXBR9qyrQcuJvmxrF48OMeODHt3yMrRHUwq8pQcZKDKokUVhAm7bwvKMAVWqwFggrO9vqpsDWzxgajsYX9DR8u9TcO2Z',
'virtualAccount' => '6842a85533fe040024b94649',
'sessionId' => '000016250606093646000096354758',
'nameEnquiryReference' => '000016250606093647994071807675',
'paymentReference' => '638847994060060502',
'externalReference' => '7d0cf679-a901-4c4c-a351-2cdb5600c68e',
'isReversed' => false,
'reversalReference' => null,
'provider' => 'NIBSS',
'providerChannel' => 'NIP',
'providerChannelCode' => '3',
'destinationInstitutionCode' => '090286',
'creditAccountName' => 'KPIETradesAndSe Checkout',
'creditAccountNumber' => '6021899425',
'creditBankVerificationNumber' => null,
'creditKYCLevel' => '3',
'debitAccountName' => 'IDOWU OMEIZA JAMES',
'debitAccountNumber' => '3089430216',
'debitBankVerificationNumber' => null,
'debitKYCLevel' => '3',
'transactionLocation' => null,
'narration' => 'FBNMOBILE:KPIETRADESANDSE CHECKOUT/RELIEF',
'amount' => 300,
'fees' => '100.00',
'vat' => 0,
'stampDuty' => 0,
'responseCode' => '00',
'responseMessage' => 'Approved or completed successfully',
'status' => 'Completed',
'isDeleted' => false,
'createdAt' => '2025-06-06T08:36:47.848Z',
'declinedAt' => '2025-06-06T08:36:47.848Z',
'updatedAt' => '2025-06-06T08:36:58.473Z',
]
];