Recharge Callback (Webhook)#
The 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.
Callback Method#
When Callback Is Triggered#
The system sends callback notifications in the following cases:Operator Final Status Update
SUCCESS RECHARGE#
{
"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#
{
"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"
}
Security Recommendation#
Always validate callback requests from trusted IPs.
Verify transaction using 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.Required Response#
{
"status": 200,
"message":"Transaction completed successfully"
}
⚠️ Important Rules#
Callback endpoint must respond within 5 seconds.
Non-200 response will trigger automatic retry attempts.
Do not block or authenticate callbacks using session login.
Callback URL must support POST requests.
Ensure HTTPS is enabled; HTTP URLs are rejected.
Callback Retry Policy#
If merchant server does not acknowledge callback:| Attempt | Retry Time |
|---|
| 1 | Immediate |
| 2 | After 1 Minute |
| 3 | After 5 Minutes |
| 4 | After 15 Minutes |
| 5 | Final Retry |
After maximum retries, status must be verified using Status API.
Best Integration Flow#
1.
Receive callback request.
3.
Verify status using Status API (recommended).
4.
Update order status in database.
5.
Send acknowledgment response.
6.
Avoid duplicate processing using reference_id.
Recommended Practice#
Always design callback handling as idempotent.
Duplicate callbacks may be received; merchant system must safely ignore already processed transactions.