How a deposit works
1
Choose asset and amount
Pick ETH or a whitelisted token and enter an amount. The app shows the deposit fee and the gas escrow.
2
Approve (ERC-20 only)
For a token, approve the pool to spend the amount.
3
Deposit
Your wallet sends
deposit(amount, token) on Robinhood Chain (not Veilify Network). Native ETH sends amount + gasEscrow as msg.value. A token deposit sends only the escrow as msg.value.The deposit is now pending. The pool emits DepositPending.4
Gatekeeper screening
The gatekeeper checks the depositing address. It then approves or rejects.
5
Credited
On approval the pool mints a note to your inbox key, minus the deposit fee. Your veiled balance updates.
Deposit statuses
Gas escrow
The gatekeeper pays gas to approve or reject your deposit. You pre-fund that with a small gas escrow of ETH sent with the deposit.- The gatekeeper is reimbursed for the gas it actually used, at most
basefee + 3 gweiper gas. - Everything left over is returned to you in the same transaction.
- If the escrow is short, the gatekeeper takes all of it and pays the rest itself. Your deposit is never blocked.
Taking a pending deposit back
While a deposit is pending, you can cancel it withwithdrawPendingDeposit. You get the whole amount and the whole escrow back. This works even if the pool is paused: it is an exit.
If a deposit is rejected
The deposit is refunded to the depositing address. The gatekeeper keeps only:- the gas it spent, out of the escrow, and
- a screening check cost, capped at 1% of the deposit by the contract.
Limits
Per-token limits are set by the admin and enforced by the contract:minDeposit: smallest accepted deposit (DepositTooSmall).maxDeposit: largest single deposit (DepositTooLarge).depositCap: maximum pool balance for that token (DepositCapExceeded).