Posts

Showing posts from June 9, 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 ...

How I Used Pandas to Crack Down on False Positives in MFS Onboarding

I still remember the day our team at a leading Bangladeshi fintech was slammed with a massive false positive issue - over 10,000 transactions flagged in a single day, mostly from bKash and Nagad users. The BDT 100,000 threshold monitoring was being triggered left and right, causing chaos. We were staring at a potential STR/SAR bottleneck if we didn't act fast. The Hidden Problem Standard KYC data validation approaches were failing us. Most of our issues stemmed from inconsistent data formatting and lack of context in transaction data. The BFIU guidelines were clear, but applying them in the real world, especially with the nuances of MFS onboarding, was a different story altogether. Technical Breakdown & Logic Flow We needed a more flexible and adaptive approach to data validation. That's when we decided to use Pandas for its powerful data manipulation capabilities. The logic flow was straightforward: data ingestion , format normalization , contextual analysis , and fi...