Sanctions & PEP screening
You must not serve designated persons, and you must apply enhanced due diligence to politically exposed people. Sieve checks every customer, and keeps checking.
When a customer is screened
- At signup: inline, on
customer.created. A sanctioned person is stopped on their first event. - When their identity changes: name, date of birth or nationality.
- When a list changes: lists are checked every hour. New or changed entries are screened against your entire customer base straight away. This is how you meet “without delay”.
- On a schedule: everyone is fully rescreened by risk tier. Defaults: high risk daily, medium weekly, low monthly.
Lists
| OFAC SDN (United States) | Downloaded directly, public domain |
| UN Security Council Consolidated List | Downloaded directly |
| Kenya FRC domestic list, Nigeria Sanctions List, EU, PEPs | Via OpenSanctions (needs a licence key for commercial use) |
| Your internal watchlist | A CSV file your compliance team provides, re-read every hour (on installs with a watchlist folder) |
Matching
Names are normalised (accents, titles, transliterations like Mohamed/Muhammad), matched token by token so word order doesn’t matter, and scored with Jaro-Winkler plus phonetic keys. Date of birth and nationality can only lower a score, never raise it. Anything at or above your threshold (default 85%) becomes a possible match, a critical case, and a hold on payouts.
Reviewing a match
Compare side by side and decide. Dismissals record what ruled the person out (e.g. date of birth), and stay muted until that list entry changes. With four-eyes on, a true match needs a second reviewer before the customer is frozen. Every result is stored with the list versions used, for 7 years.