Back to Projects
Live DemoFinTech

FraudDesk — Fraud & Financial Crime Operations Platform


FraudDesk project poster
PythonApache Kafka (KRaft)PostgreSQLSQLAlchemyXGBoostscikit-learnimbalanced-learn (SMOTE)SHAPFastAPIPydanticStreamlitPlotlyClaude API (claude-sonnet-4-6)MLflowEvidentlyrapidfuzzDockerGitHub ActionsRender

7

Integrated Modules

32

Tests Against Live DB & Model

6

Labelled Fraud Scenarios

The Problem

Financial crime costs the global economy over $40 billion a year. Banks, fintechs, and payment processors hire fraud analysts, fraud data scientists, and fraud engineers — but most portfolio projects stop at training a model in a Jupyter notebook. FraudDesk closes that gap. It reproduces the complete daily workflow of a fraud operations team: from the moment a suspicious transaction enters the system to the moment a Suspicious Activity Report is filed with the regulator.

What I Built

FraudDesk is a 7-module platform covering the full fraud operations lifecycle:

1. Data Platform

Synthetic Irish bank data (Faker en_IE), a sanctions list, 6 hand-built fraud scenarios (account takeover, APP scam, money mule chains, structuring, impossible travel, sanctions near-match), and ETL into PostgreSQL.

2. ML Detection

XGBoost trained on engineered behavioural features with SMOTE for class imbalance and SHAP for per-prediction explainability.

3. Kafka Streaming

Live transaction replay through Apache Kafka (KRaft mode), with a rules engine fused with the ML model for real-time scoring and alert generation.

4. Case Management

FastAPI backend + Streamlit UI: prioritised alert queue, full customer-360 investigation view, 4-eyes review workflow, and a complete audit trail.

5. Actions & Comms

Block card, hold/release transaction, refund, chargeback lifecycle, and Claude-drafted customer SMS — all logged to the case audit trail.

6. Tuning Lab + MI

Live threshold and rule-weight simulation with champion/challenger testing, back-testing, and MI dashboards for leadership reporting (fraud loss trends, alert volumes, typology breakdown, team performance).

7. Compliance

Fuzzy sanctions/PEP screening (rapidfuzz), Claude-drafted SAR narratives built from case evidence, and an EU AI Act model card.

Key Results

  • 7 integrated modules in a single running system — not notebooks
  • Live demo deployed on Render with full CI/CD (GitHub Actions)
  • 6 labelled fraud scenarios so the alert queue is never empty
  • 32 tests across rules, fused scoring, FastAPI routers, and sanctions screening — all against the real seeded database and trained model
  • SHAP explainability on every prediction — analysts see exactly why a transaction was flagged
  • Claude API integration for SAR narrative drafting and customer communications
  • Docker Compose for local deployment (Kafka + Postgres)
  • MLflow model registry and Evidently drift monitoring

What I Learned

Building FraudDesk taught me that the model is the least interesting part of a fraud system. The real complexity lives in the operational workflow: how alerts get prioritised, how analysts investigate with limited time, how actions cascade through downstream systems, how compliance deadlines drive urgency, and how leadership needs MI that actually changes decisions. Every module forced a different engineering discipline — streaming for Kafka, API design for FastAPI, state management for case workflows, prompt engineering for Claude-drafted SARs, and testing strategy for a system where correctness matters more than coverage.