The merchant callback never arrived.
Chronological facts from Razorpay and merchant sources.
Razorpay webhook received with payment state captured.
EV-CALLBACK-WEBHOOK
{
"event_id": "evt_callback_001",
"event_type": "payment.captured",
"payment_id": "pay_callback_001",
"payment_state": "captured",
"amount_minor": 4000,
"currency": "INR",
"idempotency_key": "callback-recover-001",
"signature_verified": true,
"operation": "capture"
}The merchant callback never arrived.
EV-CALLBACK-MISSING
{
"payment_id": "pay_callback_001",
"callback_status": "missing",
"operation": "capture",
"idempotency_key": "callback-recover-001"
}What the evidence shows happened, and the mismatch diagnosed from it.
The merchant callback never arrived.
The merchant callback never arrived.
What the model concluded from the evidence. It advises; the policy decides.
The incident class indicates a recovery scenario where the webhook was received but the callback was missing. To determine if the system successfully recovered or if the order remains in a stale state, the durable merchant order state must be verified.
Uncertainty
It is unclear if the 'missing' callback status implies a total failure or a delayed processing that has since resolved.
The durable merchant order state to confirm if the capture was applied locally.
What to check nextfetch merchant order
The current status and amount paid on the merchant order linked to pay callback 001.
Decision needed
No discretionary financial decision is requested.
Stops when
If the merchant order state reflects 'captured' with the correct amount, the exception is resolved. If it remains 'pending' or 'unpaid', escalation to merchant-engineering is required.
The provider captured the payment and emitted the webhook, but the internal callback handler failed to process or record the event, leaving the merchant order state unupdated.
The incident class indicates a recovery scenario where the webhook was received but the callback was missing. To determine if the system successfully recovered or if the order remains in a stale state, the durable merchant order state must be verified.
Whether policy authorizes a merchant-side repair.
Callback missing
Verification runs after an approved repair. This exception was escalated without one.
| Check | Razorpay observation | Merchant observation | Result |
|---|---|---|---|
| State | Captured (verified) | Missing | Does not hold |
| Amount | ₹40.00 | No merchant order | Holds |
| Identity | Razorpay payment linked | No merchant order | Holds |
Razorpay: Captured (verified)
Merchant: Missing
Razorpay: ₹40.00
Merchant: No merchant order
Razorpay: Razorpay payment linked
Merchant: No merchant order
No repair was applied, so no verification checks were recorded.