Disclaimer: Independent educational project. Not affiliated with JPMorgan Chase. Built by Kaushal Khodifad. Data from public sources; figures are estimates.return to portfolio
Disclaimer: Independent educational project. Not affiliated with JPMorgan Chase.
productionvv3.2SR 11-7 · Ongoing Monitoring Pass — within tolerance

Real-Time Fraud Detection

Sub-second authorization fraud scoring

owner: Fraud Data Science · last validated Apr 18, 2026

Outcome it's accountable for

$182M annualized fraud prevented+34% vs rules engine-22% false declines

metric: fraud $ caught vs rules baseline

0.942
AUC
0.713
KS
0.821
Precision
0.774
Recall

Top feature drivers (SHAP)

amount_z_score0.28
mcc_risk_tier0.21
card_not_present0.18
txn_velocity_1h0.16
merchant_risk0.10
geo_mismatch0.07

Disaggregated performance

segmentAUCapproval
Mass0.93997.1%
Affluent0.94597.8%
Private Client0.94898.2%
Small Business0.93396.4%

Tested for disparate impact across segments - no material divergence.

Intended use

Score each authorization in real time for fraud probability; decline / step-up above threshold. Decision-support with human review on edge cases.

Training data

18 months of authorizations (bronze) + confirmed-fraud labels. Class imbalance handled with SMOTE; evaluated on a held-out temporal split.

Limitations

Performance degrades on novel CNP attack patterns; retraining triggered on KS drift > 0.05. Not used for credit decisions.

Fair lending & adverse action

No protected-class attributes used. Disparate-impact tested across region and segment; SHAP reason codes generated for every decline (adverse-action support).

↑ Independent educational project by Kaushal Khodifad. JPMorgan Chase is a real company in the card data & analytics space; this design and the underlying prototype were built by Kaushal as a portfolio study. Not affiliated with, endorsed by, or representative of JPMorgan Chase's actual product. Data is from public sources. Figures are estimates.

Return to portfolioOpen the live demo