Posts

Showing posts from September 24, 2026

Why My First PEP‑Screening Audit Went South in Dhaka – The 9‑Step Fix That Saved My Bank

Image
AI-generated illustration Bangladesh, 3 AM. My phone buzzed. The alert read: PEP match – BDT 12.4 million inbound transfer to a new corporate account. My supervisor’s voice crackled on the speaker: ‘We’ve got 30 minutes before the regulator’s audit team walks in. Explain this.’ My heart hammered. I stared at the transaction log – a single wire from a shell company in Chittagong, linked to a name that showed up in the BFIU’s “high‑risk PEP” list last year. The red flag was real, but the system had thrown *dozens* of similar alerts that turned out to be harmless relatives of the same politician. The audit team would see a mountain of false positives and wonder why we couldn’t separate wheat from chaff. The Hidden Problem: Bangladeshi PEP Data Isn’t Ready for Plug‑and‑Play Most off‑the‑shelf screening engines assume three things: Names are clean, Latin‑script, and consistently formatted. Sanctions lists are static, updated monthly. Local AML teams have a single, unified risk‑score thresh...

Why My First Synthetic Transaction Generator Crashed the AML Rule Engine – The 9‑Step Fix I Discovered in Dhaka

Image
AI-generated illustration Bangladesh, 09/23/2026. My phone buzzed at 02:17 AM. The AML dashboard at bKash lit up with a red fire‑alarm: 5,432 alerts in the last 30 minutes. The system was choking. Our false‑positive rate had spiked from 12% to a staggering 68% overnight. I stared at the numbers, heart pounding, wondering if the BFIU audit deadline next week would turn into a nightmare. The Hidden Problem: Synthetic Test Data Isn’t Synthetic Enough We had built a tiny test harness months ago – a handful of hard‑coded CSV rows that mimicked a few typical MFS transfers. It was enough to convince the team that the rule set was solid. But when the regulator demanded a stress‑test of the entire rule engine, the harness fell apart. It didn’t cover: Cross‑border remittance patterns that bounce between Rocket, Nagad, and local banks Layered structuring attempts just under the BDT 100,000 threshold Entity‑resolution edge cases where a single phone number appears on three different accounts In ...