Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.veil.cash/llms.txt

Use this file to discover all available pages before exploring further.

0xbow and Veil Cash bring privacy to more users on Base.
0xbow announcement image

Screening overview

Veil Cash integrates 0xbow ASP so incoming deposits get KYT (Know Your Transaction) screening before they enter the pool. You can use any Base address; when screening applies, funds move through the one-time queue flow below until 0xbow clears them. 0xbow screening image

About 0xbow

0xbow builds compliant onchain privacy infrastructure for peer-to-peer transfers at scale. Their Privacy Pools protocol on Ethereum balances privacy for legitimate users with screening that excludes illicit actors. ASP runs KYT on deposits, adds passing funds to the association set, and supports the trust model Privacy Pools use across L1s, L2s, and other deployments—including Veil on Base.

How screening works

When a deposit comes from a user who is not yet verified, the following process applies: Queue flow

Deposit to Queue

The user’s funds are first sent to a temporary queue contract, not directly into the Veil pool. This holding contract isolates the deposit until compliance checks are completed. Deposit queued screen

KYT Screening Initiated

Right after the deposit, Veil’s deposit engine asks 0xbow to screen the funds. 0xbow runs KYT blockchain analysis on the funds’ origin and history—including links to illicit activity or sanctioned addresses. Most screenings finish in about 15 minutes; complex cases can take up to 5 days.

Holding Period

A 6-hour holding period is applied to screened deposits. During this time, 0xbow’s off-chain checks are expected to complete. The user will see their deposit as pending in the queue. If 0xbow clears the deposit earlier, the funds can move forward before the 6 hours are up. Holding period screen

Approval and Deposit

If 0xbow approves the deposit, no risky or illicit source detected, the Veil operator address finalizes the deposit. The operator pulls funds from the queue contract into the Veil pool contract and credits the amount to the user’s private balance. The underlying zk proof for the deposit is generated automatically by Veil’s backend. The user does not need to generate or handle any proofs. Approved deposit screen

Rejection and Refund

If 0xbow declines the deposit, for example if funds are linked to a known illicit source or otherwise fail compliance rules, the deposit never enters the pool. The funds in the queue contract are returned in full to the original depositing address. No fee is collected and no privacy is provided on rejected deposits.

Additional notes

This 0xbow integration allows Veil to maintain its compliance-oriented privacy model even as it opens access to unverified users. Screening is performed using onchain transaction history only. 0xbow does not require government IDs, selfies, or other personal identity documents from users. Veil remains non-custodial throughout this process. Funds move between smart contracts controlled by the user and the protocol. Veil never takes ownership of user assets at any point in the screening or deposit flow. If a user’s funds are clean, the deposit enters the pool with the same anonymity guarantees as any other deposit. Once inside the pool, deposits from screened addresses are indistinguishable from deposits by pre-verified users. If the funds fail screening, the deposit never joins the pool and is returned in full to the original address, with no protocol fee charged and no privacy benefit provided.