Preloader

Gateway Checkout Webhook

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',
  ]
];