Posts

Showing posts from July 5, 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 ...

Why 80% of Bangladesh Banks Fail to Write Effective SAR Narratives: My 8-Year AML Journey

Image
Photo by Shoeib Abolhassani on Unsplash Why 80% of Bangladesh Banks Fail to Write Effective SAR Narratives: My 8-Year AML Journey I still remember the day our bank received a BDT 5 crore SAR from a prominent Nagad user. The narrative mentioned an alleged money laundering scheme involving a string of bKash transactions, but it lacked the crucial details needed to make a meaningful report to the BFIU. It was a perfect storm of red flags: multiple transactions, unverified sender and receiver information, and a suspicious pattern of fund transfers. The Hidden Problem My 8-year journey as an AML compliance analyst in Bangladesh has revealed a shocking truth: most banks in the country struggle to write effective SAR narratives. It's not a matter of skill or expertise; it's a symptom of a deeper issue – a lack of understanding of the SAR reporting process and the corresponding BFIU guidelines. The problem starts with the MFS threshold of BDT 100,000, which requires banks ...