Recharge Callback (Webhook)
POSTThe Recharge Callback API is used to send real-time recharge status updates to the merchant server once the transaction is processed by the operator. Instead of continuously polling the Status API, merchants should implement this webhook to receive automatic transaction updates.
When Callback Is Triggered
- Recharge Successful
- Recharge Failed
- Operator Final Status Update
SUCCESS RECHARGE WEBHOOK PAYLOAD
event: RECHARGE_SUCCESS
{
"event": "RECHARGE_SUCCESS",
"status": "success",
"data": {
"request_id": "rechtxn00001",
"number": "99XXXXXX99",
"amount": "22.00",
"operator_id": "11",
"reference_id": "IMBRCH22264720260227_f870fdf4",
"ackno": "1122XXXX65",
"message": "SUCCESS",
"refunded": false
},
"timestamp": "2026-03-01T12:05:21+05:30"
}
FAILED RECHARGE WEBHOOK PAYLOAD
event: RECHARGE_FAILURE
{
"event": "RECHARGE_FAILURE",
"status": "failed",
"data": {
"request_id": "rechtxn00001",
"number": "99XXXXXX99",
"amount": "22.00",
"operator_id": "11",
"reference_id": "IMBRCH22280520260227_8c5ef3a3",
"ackno": "112XXXXX65",
"message": "Failed",
"refunded": true
},
"timestamp": "2026-03-01T12:12:08+05:30"
}
🔒 Webhook Security Recommendations
- Always validate callback requests from trusted IMB Payment IP addresses.
- Verify transactions using the Check Status API before updating wallet balance.
- Do not rely solely on frontend success messages.
- Store callback logs for reconciliation and dispute handling.
📥 Merchant Expected Response
After receiving the callback, merchant server must return HTTP 200 response within 3 seconds:
HTTP/1.1 200 OK
{
"status": 200,
"message": "Transaction completed successfully"
}