OFAC compliance for crypto exchanges
Crypto exchanges face the heaviest OFAC enforcement, so screening belongs at onboarding and on every transaction.
TL;DR
TL;DR: Exchanges must screen users at onboarding, screen every transaction against OFAC lists, keep audit logs, and act on matches, because OFAC liability is strict and intent is not required.
Why exchanges are the enforcement front line
Exchanges are where fiat and crypto meet, which makes them a primary target for US Treasury enforcement. OFAC applies the Specially Designated Nationals (SDN) List and its rules to every transfer an exchange touches, whether the customer moves fiat, stablecoins, or any other asset. Because liability is strict, an exchange can be penalized even when it did not know a counterparty was blocked.
Core requirements
- Screen at onboarding: run every new customer name and wallet through SDN and wallet checks before they can transact.
- Screen every transaction: re-check the counterparty wallet on each transfer, not just once.
- Keep audit logs: record each screening decision so you can show a complete history if asked.
- Respond to matches: block flagged counterparties and open a dispute or escalation path.
How screening works in practice
A single HTTP call can return a decision in under 100 ms: clean means ALLOW, flagged means BLOCK. The sanctionsai.dev API exposes sanctions_check for the initial check, risk_score for a deeper look, kya_verify to know your counterparty, and dispute_open when a match needs review. An exchange can run the whole flow inside its existing payment path without a separate compliance stack.