Posts

Showing posts from May 10, 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 Automated STR Filing with Python at a Bangladeshi Fintech

Image
Photo by Marija Zaric on Unsplash Last quarter, while reviewing a batch of 80,000 MFS transactions, I noticed that our team was spending an inordinate amount of time manually filing Suspicious Transaction Reports (STRs) with the Bangladesh Financial Intelligence Unit (BFIU). The process was not only time-consuming but also prone to errors, with some reports being filed incorrectly or not at all. This experience made me realize the importance of automating the STR filing process, especially in the context of Bangladesh's rapidly growing fintech industry. The core problem most practitioners miss When I was starting out as an AML analyst, I was under the impression that automating the STR filing process would be a straightforward task. However, I soon learned that it was much more complex than I had anticipated. One of the main challenges was integrating our existing systems with the BFIU's reporting requirements, which seemed to change frequently. I was wrong about this until I ...

How I Built a Customer Risk Scoring Model for BD Fintechs

Image
Photo by VD Photography on Unsplash Last quarter, while reviewing a batch of 80,000 MFS transactions for a leading BD fintech, I noticed that about 10% of the transactions exceeded the BDT 100,000 threshold, triggering alerts for potential money laundering. As I dug deeper, I realized that most of these alerts were false positives, wasting valuable time and resources for the compliance team. The core problem most practitioners miss When I was starting out as an AML analyst, I was wrong about this until I stumbled upon a crucial aspect of customer risk scoring models: they are not one-size-fits-all. In my experience, many practitioners miss this point, applying generic models that fail to account for the unique characteristics of their customer base. I recall a particularly frustrating instance where our team spent weeks fine-tuning a model, only to realize that it was not tailored to our specific use case. Background / why this matters in BD fintech context The BFIU guidelines emphasi...