Recharge Callback (Webhook)

POST

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.

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"
}