Posts

Showing posts from June 16, 2026

I Built a BFIU-Compliant AML Detection System in Python (Here's Why the Kaggle Approach Doesn't Work

I Built a BFIU-Compliant AML Detection System in Python (Here's Why the Kaggle Approach Doesn't Work)

Most AML tutorials end with a confusion matrix and a 99% accuracy score. Here's why that doesn't work — and what I built instead. I've been working in fintech compliance data for a while. The one thing I kept noticing: every "fraud detection project" on GitHub or Kaggle uses the same dataset — the UCI credit card fraud dataset from 2013. It has 284,000 rows, 30 features labeled V1-V28, and approximately zero explanatory value for anyone who wants to understand how financial crime actually works. So I built something different. The problem with the standard approach Real transaction monitoring engines don't work like Kaggle competitions. They don't take a CSV, train a model, and output a probability score. They work like this: A rule engine runs first — deterministic, auditable, regulatory-cited rules that generate alerts Those alerts get scored and triaged by risk tier An ML layer reduces false positives among the high-risk alerts ...

8 Years of Fighting Money Laundering in Bangladesh: How I Built a Customer Risk Scoring Model

Image
Photo by Christian Lue on Unsplash I still remember the night we discovered a massive structuring ring at one of the local fintechs. It was a BDT 50 million case, with thousands of transactions flying under the radar. Our team worked tirelessly for weeks to unravel the scheme, but it was a wake-up call - our current risk scoring model just wasn't cutting it. So, I embarked on a journey to create a more effective customer risk scoring model, one that could help us identify high-risk customers and prevent money laundering in real-time. It wasn't easy - we faced numerous challenges, from data quality issues to regulatory hurdles. The Hidden Problem In Bangladesh, the standard approaches to risk scoring often fall short. Why? Because they don't account for our unique fintech landscape, where mobile financial services (MFS) like bKash and Nagad dominate the market. The BFIU guidelines are clear - we need to monitor transactions above the BDT 100,000 threshold - but that's j...