Blog

OFAC Sanctions Screening on Blockchain: Best Practices

July 2026 Compliance 7 min read

The Office of Foreign Assets Control (OFAC) maintains the Specially Designated Nationals (SDN) list — a compilation of individuals, entities, and addresses that US persons are prohibited from transacting with. For blockchain protocols, this creates unique challenges that traditional financial institutions don't face.

The Challenge of On-Chain Sanctions Screening

Unlike traditional finance where transactions flow through intermediaries, blockchain transactions are peer-to-peer. There is no bank to stop a transaction before it settles. This means compliance must be embedded at the protocol level:

  • Pre-transaction screening: Every transfer must be evaluated before execution
  • Non-custodial environments: No central authority holds funds or controls access
  • Pseudonymity: Addresses don't map 1:1 to real-world identities
  • Irreversibility: Once a transaction is mined, it cannot be undone

Best Practice #1: On-Chain Enforcement

The most robust approach is to embed sanctions screening directly into the smart contract. This ensures:

  1. Determinism: Every transaction is screened under identical rules
  2. No Bypass: Even direct contract calls trigger compliance checks
  3. Auditability: Screening decisions are permanently recorded on-chain
  4. Availability: No dependency on external APIs that could fail

Best Practice #2: Risk Tiers, Not Binary Blocks

A sophisticated approach uses risk tiers rather than simple allow/block:

  • UNKNOWN: New addresses with no history — require additional verification
  • LOW: No flags detected — allow with standard limits
  • MEDIUM: Some risk indicators — enhanced monitoring
  • HIGH: Significant risk — quarantine for manual review
  • CRITICAL: Sanctions match — block and alert

Best Practice #3: Keep Data Fresh

OFAC updates the SDN list regularly. On-chain registries must be updated autonomously. FidesOrigin uses Chainlink Functions to fetch the latest sanctions data and update the on-chain RiskRegistry without manual intervention.

Best Practice #4: Quarantine Over Block

Instead of outright blocking transactions (which can create UX issues and false positives), consider a quarantine mechanism:

"A quarantine vault holds suspicious funds for review rather than rejecting them outright. This reduces false positives while maintaining compliance."

Conclusion

OFAC compliance on blockchain is not optional — it's a legal requirement for any protocol operating in or serving US persons. The question is not whether to comply, but how to do so without compromising the benefits of decentralization. On-chain enforcement is the answer.