Q1 2026 · UPI risk operations
Command Center
Sentinel briefing
Money in dispute · this slice
Payments and disputes over time
Drag across either chart to zoom the whole desk to those dates. Dispute rate uses chargebacks linked by txn_id.
Sentinel alerts agent
Detectors re-run on every build and on your current slice.
Where disputed money comes from
Disputed rupees flowing from the payer's KYC status → merchant category → what kind of dispute it is and whether it is still open. Click a node to filter.
Category risk map
Payments vs dispute rate; bubble = disputed ₹. Dashed line = overall rate. Click to filter.
When things go wrong
Hour of day × weekday, timed payments only.
Highest-risk merchants in this slice
Explainable additive score (0–100). Click a row for the full Entity 360.
What the numbers say
Findings the risk team should act on — each one is recomputed from the rows embedded in this page.
Simulated clock—
Replays all 20,000 de-duplicated payments in time order through a leak-free streaming rule engine: every decision only uses what was known at that moment — chargebacks count only after they were reported. As disputes surface later, the engine's precision is scored against them — including when the honest answer is “no lift yet”.
Payment feed
Newest first · click any row to open it
Hold (score ≥ 60)Review (30–59)Allow
TimeMerchantWhyDecision
Engine scoreboard
streamingRules that fired
Throughput and holds
Payments per simulated hour, with how many the engine held or sent to review.
Dispute network
Every suspicious cluster: disputing customers (●) and merchants (■) joined by payments; red links carry a chargeback. One cell per ring, strongest first. Scroll to zoom, drag to pan, click to inspect, double-click to open.
Min ring score 8
Ring leaderboard
Score = 2×chargebacks + 3×fraud-type + unverified users + disputed ₹/10k.
Circular-laundering engine
SCC pruning → bounded cycle search → time & value validation.
Risk leaderboard
Reason × severity
Complaints in this slice. Click a cell to filter by that reason. ⚑ = fraud-type reason.
How late disputes arrive
Days from payment to complaint. Anything past 7 days is hard to recover.
Resolution status
Share still unresolved is the backlog.
Reported late, by reason
Share of each reason reported after 7 days.
Intake channel
Where complaints arrive.
Longest-delayed disputes
Reported more than 7 days after payment, longest first.
Who is paying
Payment value by the payer's KYC status.
Dispute rate by KYC status
Share of payments disputed. Dashed line = this slice overall.
Customer base KYC
All 28,920 KYC customers, not just those who paid.
Declared risk segment vs behaviour
Does the onboarding risk segment predict disputes?
Out-of-time AUC
0.5 = coin flip. Scores are rebuilt using only payments before the cutoff and chargebacks already reported by then, then checked on later fraud-type disputes.
Which signals carry lift
Hit rate of flagged entities ÷ base rate on the test window (≥ 20 flagged shown solid).
Tier performance
Run history
Appended by every pipeline run, for drift tracking.
What we would do next
From four messy systems to one trusted model
Repair and flag, don't delete — rows are removed only when they are duplicates.
Rows repaired per source
Sum of rows touched by each check (a row can be fixed more than once).
Judgement calls that changed the answer
Investigation queue
Entities pinned by you or by the AI agents. Saved in this browser.