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.

Whole quarter
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
TimeMerchantWhyAmountDecision

Engine scoreboard

streaming

Rules 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.
Whole quarter

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.
Best Pipeline award

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

Quality ledger

Investigation queue

Entities pinned by you or by the AI agents. Saved in this browser.