Overview

Request-To-Pay (RTP) collections utilize Timed Account Numbers (TAN) generated for the customer to finalize the payment through mobile money wallets or bank accounts using their digital channels. Unlike standard merchant account top-ups, these transactions represent direct bill payments, invoice settlements, or customer-initiated payment requests. OneKhusa notifies your system of these asynchronous push events via payrequest.success and payrequest.reversed.
Important: Do not trust any webhook notifications received, your system is required to verify prior to processing to avoid unauthorised notifications being processed.

Webhook Events

1. Successful RTP (payrequest.success)

The payrequest.success event is dispatched as soon as the end-user finalizes the payment request through their mobile banking or MNO application. This event confirms that the funds have been successfully debited from the customer’s account and credited to your merchant account.

HTTP Event Headers

Webhook JSON Payload


2. RTP Reversal (payrequest.reversed)

The payrequest.reversed event is emitted if an executed Request-To-Pay transaction is subsequently rolled back due to downstream network clearing issues, carrier settlement errors, or processed customer dispute claims. This event alerts your system to debit the corresponding account balance internally.

HTTP Event Headers

Webhook JSON Payload

For detailed field descriptions, refer to the Field Descriptions section in the Collection Webhooks Overview.