Access Basic

Webhook notify

WEBHOOK URL

​ When TENN's payment transaction is completed, the transaction result will be notified via a callback to the backend webhook URL configured by the merchant. In case of notification failure, our notification retry intervals are 1 second, 2 seconds, 3 seconds, 3 seconds, 3 seconds, 3 seconds, and 3 seconds. We will make a total of 7 attempts to callback, and if it still fails, we will not continue further notifications.Upon receiving the callback request, please respond with the body content as "success" to acknowledge our callback.

​ When merchant transfer is completed, the transfer result will be notified via a callback to the backend webhook URL configured by the merchant. In case of notification failure, our notification retry intervals are 10 second, 60 seconds, 300 seconds, 1800 seconds, 3600 seconds, 7200 seconds, and 14400 seconds. We will make a total of 7 attempts to callback, and if it still fails, we will not continue further notifications.Upon receiving the callback request, please respond with the body content as "success" to acknowledge our callback.

Callback Explanation

​ We will initiate an HTTP POST callback request. For example, if the webhook URL you have configured in TENN is ' http://webhookUrl ,' we will make a request to that address with the callback parameter in the request body.

Callback parameter example

Payment transaction data

{
    "transactionNumber": "531472826763399264",
    "merchantOrderNumber": "23010606031589339852",
    "merchantId": "38",
    "merchantUserId": "191007085751puid63902811",
    "amount": 20000,
    "tennAccount": "111 111 1104",
    "status": 5,
    "paymentCreateTime": 1672984996000,
    "paymentCompletionTime": 1672985250000,
    "notifyUrl": "http://webhookUrl",
    "msg": "Successful",
    "userName":"lu Favor yi"
}
PARAMETER TYPE DESCRIPTION
transactionNumber String TENN Transaction Order Number
merchantOrderNumber String Merchant order ID
merchantId String Merchant Id
amount Long Payment Amount (Currency in Kobo, equivalent to cents)
tennAccount String TENN Account Number
status Integer 5: Success (Payment successful)
6: Failed (Payment failed)
7: Reversed (The merchant initiated a refund and it was successful)
8: Closed (If the user doesn't complete the payment within two hours, it will automatically close)
paymentCreateTime Long Payment create time (timestamp)
paymentCompletionTime Long Payment completion time (timestamp)
notifyUrl String Webhook URL (configured in TENN)
msg String Message
userName String TENN user's name

Merchant transfer data

{
	"id": "202504180951100491062548",
	"merchantId": 5,
	"merchantType": 0,
	"merchantName": "Test2",
	"merchantOrderNumber": "58ae35f5-7812-4af6-9dfb-0bedfea40937",
	"amount": 10000,
	"status": 30004,
	"productNumber": 17,
	"originatorAccountNumber": "*** *** 2867",
	"beneficiaryAccountNumber": "*** *** 6826",
	"beneficiaryAccountName": "lu yi",
	"beneficiaryFirstName": "lu",
	"beneficiaryMiddleName": NULL,
	"beneficiaryLastName": "yi",
	"beneficiaryPhone": "1520100615",
	"beneficiaryUserId": "490183343736922171",
	"beneficiaryBvn": "15201006156",
	"beneficiaryLevel": 3,
	"currency": "NGN",
	"createdTime": "2025-04-18 09:51:12.000",
	"expireTime": "2025-04-18 10:51:12.000",
	"transferTime": "2025-04-18 09:51:15.000",
	"updateTime": "2025-04-18 09:51:16.000",
	"notifyUrl": "www.baidu.com",
	"msg": "Transfer was successful",
	"splitFlag": NULL,
	"batchNumber": NULL
}
PARAMETER TYPE DESCRIPTION
id String TENN transfer id
merchantId Integer merchant id
merchantType Integer merchant type
merchantName String merchant name
merchantOrderNumber String merchant order number
amount Long transfer amount (Kobo)
status Integer 30001:Initiate,
30003:Pending,
30004:Successful,
30005:Failed,
30007:Closed
originatorAccountNumber String Originator account number
beneficiaryAccountNumber String Beneficiary account number
beneficiaryAccountName String Beneficiary account name
beneficiaryFirstName String Beneficiary first name
beneficiaryMiddleName String Beneficiary middle name
beneficiaryLastName String Beneficiary last name
beneficiaryPhone String Beneficiary phone
beneficiaryUserId String Beneficiary user id
beneficiaryBvn String Beneficiary bvn
beneficiaryLevel Integer Beneficiary level
currency String Currency
createdTime LocalDateTime Create time
expireTime LocalDateTime ExpireTime
transferTime LocalDateTime Transfer time
updateTime LocalDateTime Update time
notifyUrl String Webhook url
msg String Msg
splitFlag Boolean If the transfer amount is too large, the order will be split.
batchNumber String The batch number of order splitting.