Skip to content
Launch App >

Turbine.cash integrates OFAC (Office of Foreign Assets Control) compliance checks to ensure the protocol cannot be used by sanctioned entities while maintaining user privacy.

OFAC is a U.S. government agency that maintains lists of sanctioned individuals, organizations, and countries. Financial services must not process transactions for sanctioned parties.

Before processing a withdrawal, the system verifies that the recipient address is not on the OFAC sanctions list:

The compliance check works through a cryptographic signature:

  1. Request Signature: Call /get_ofac_signature with your auth token
  2. Compliance Check: The backend verifies your wallet against sanctions lists
  3. Receive Signature: If compliant, you receive a signed attestation
  4. Use in Withdrawal: Include the signature in your withdrawal transaction
const response = await fetch(
`${API_BASE}/get_ofac_signature/${network}/${authToken}`,
{ method: 'POST' }
);
const signature = await response.json();

The OFAC signature is included in the withdrawal instruction and verified on-chain.

What is RevealedWhat is NOT Revealed
Your address was checked for complianceYour identity
The check passedYour location
Timestamp of checkAny personal data

The compliance check only verifies that an address is not on public sanctions lists. It does not require KYC or identity verification.

Turbine.cash uses CipherOwl for OFAC compliance checks:

  • Real-time sanctions list updates
  • Cryptographic attestations
  • No personal data collection

[PLACEHOLDER: OFAC_SIGNATURE_EXPLANATION]

The compliance check covers:

  • OFAC SDN (Specially Designated Nationals) list
  • Blocked addresses associated with sanctioned entities
  • Addresses linked to known illicit activity

If your address appears on a sanctions list:

  1. The /get_ofac_signature endpoint will return an error
  2. You cannot complete withdrawals through the relayer
  3. Your deposited funds remain in the pool (not seized)

If you’re building on Turbine.cash:

  1. Always check OFAC before initiating withdrawals
  2. Handle errors gracefully - compliance failures should show appropriate messages
  3. Don’t cache signatures - always get fresh signatures before withdrawals
  4. Respect the result - never attempt to bypass compliance checks