This feature enables the merchants to associate the transactions initiated/originated from their systems by their customers to pay for the purchased goods, subscribed services through either bank or MNO channel for example, e-commence shop, school fees payments, driving license renewal, passport renewal etc.
The following are the steps you need to follow to achieve this:
The merchant system generates the unique reference number to associate with collection transaction.
The merchant system invokes (calls) OneKhusa request-to-pay endpoint to generate a timed account number (TAN) which will expire in 15 minutes upon creation. TAN is a random short-lived (temporary) account tied to merchant account for that transaction.
A customer sends money using their preferred digital platform being provided by a bank or MNO. The flow is similar to Overview section.
A customer provides TAN and transaction amount being paid for the service offered or goods purchased.
The funds are credited to merchant account if:
o TAN has not expired
o TAN and transaction amount are matching
After a successful credit, OneKhusa triggers a request-to-pay webhook to notify the waiting system that the payment was successful
The merchant system notifies the customer that the payment was successful
Bearer authentication header of the form Bearer
Preferred language for the response
An active account number for the merchant registered on OneKhusa for accepting payments.
12345678
The total transaction (checkout) amount the customer is supposed to pay, and this is created by the merchant system.
"8375000.00"
The description generated by the merchant system for the service/product(s) purchased by the customer.
"Samsung 85inch TV purchase"
The unique reference number generated by the merchant system to easily identify and reconcile a request-to-pay transaction through webhook. The allowed alpha-numeric characters is a range of 5 to 25.
5 - 25"1020XDFS76GS777"
The background user registered under the merchant account being used, initiated on behalf of a customer.
"username@example.com"
Success Response (200)
An account number for the merchant used for initiating a request-to-pay transaction.
12345678
A random and unique temporary (short-lived) account number tied to an initiated request-to-pay transaction. This account number will always start with "1".
"11005533"
The time assigned to TAN to expire.
"2026-01-05T10:01:56.412Z"
Number of minutes TAN will expire after creation.
15