Anti-Money Laundering Change Detection Job
A background job that reacts to upstream processes and performs dynamic AML compliance checks — scanning all relevant customer and transaction fields based on a config-driven rule set, detecting any changes, and recording the findings for further processing.
Anti-money laundering compliance isn't a one-time check — it's an ongoing obligation to detect when something about a customer or transaction has changed in a way that matters. Doing that manually doesn't scale.
This background job hooks into upstream process events and responds by running a dynamic AML check. Which fields to inspect, which tables to query, what constitutes a relevant change — all of this is driven by configuration tables rather than hardcoded logic. Adding a new check or adjusting an existing one means updating config, not redeploying code.
When the job detects a field value that has changed since the last check, it captures the delta and writes the relevant information to the designated output — feeding downstream compliance workflows with exactly what they need, no more and no less.
The design prioritises auditability: every run is traceable, every detected change is recorded with enough context to understand what changed, when, and why it was flagged.
Built in C# on .NET, backed by SQL Server.