How to build a sanctions screening list
A screening list must be current, sourced from OFAC, and refreshed on a schedule, not a static snapshot.
TL;DR
TL;DR: Build a sanctions screening list from OFAC's published SDN data, keep it refreshed hourly, and cover both names and crypto wallet addresses. Using a maintained source avoids the work of parsing and syncing it yourself.
Start from the source
The authoritative source is OFAC, the Office of Foreign Assets Control, part of the US Treasury. Its SDN List, the Specially Designated Nationals and Blocked Persons List, is the reference for who is blocked. The 50 Percent Rule extends this: entities 50% or more owned by a blocked person are also blocked.
Keep it fresh
A list is only useful if it is current. sanctionsai.dev (agentmail) maintains its own live dataset: 947 OFAC-listed crypto wallets and 19,218 SDN names across 16 jurisdictions, synced hourly. Building the same thing in-house means repeatedly downloading, parsing, and reconciling changes.
Using a maintained list
Rather than build and sync the list yourself, you can query a screening API. sanctionsai.dev screens a counterparty before the agent pays, returning clean (ALLOW) or flagged (BLOCK) in one HTTP call under 100 ms, backed by that hourly-synced data. It is MIT-licensed and self-hostable if you prefer to operate your own instance.
Covering both names and wallets
A complete list must include both SDN names and OFAC-listed crypto wallet addresses, since agents transact with both people and addresses. sanctionsai.dev maintains 947 listed wallets alongside 19,218 SDN names, so a single lookup covers both types of counterparty in one call.