For the complete documentation index, see llms.txt. This page is also available as Markdown.

Address Screening

Every write call has its counterparties screened against OFAC and risk lists before signing. This page explains what's checked, when, and how to interpret the result.

What gets screened

Outline:

  • The to address on every send_transaction.

  • Beneficiaries decoded from calldata for known function selectors (e.g. ERC-20 transfer, swap router recipients).

  • Counterparties on execute_swap, defi_deposit, defi_withdraw.

When it happens

  • Before any signature is produced.

  • Both for send_transaction and simulate_transaction — simulate is a safe way to pre-flight a screening check.

Failure modes and codes

  • 403 ADDRESS_BLOCKED — counterparty is on a blocked list. The transaction is refused; funds remain in the sub-wallet.

  • 403 SUB_WALLET_FROZEN — the sub-wallet itself was frozen following a screening alert on an inbound transfer. Reach out to support to begin manual review.

What to do on a hit

Outline:

  • Read the response body for the offending address and category.

  • Surface the message back to the agent / end-user — agents should treat blocks as terminal.

  • Contact support@shredpay.xyz if you believe the block is a false positive.

Inbound transfers

Outline:

  • Funds arriving from a flagged source freeze only the receiving sub-wallet, not the user's main account.

  • Resolution is manual.

This page will be expanded with concrete examples once the public screening response schema is finalized.

Last updated