Fund Locking (Deposit)
The deposit step is how campaign funds enter the escrow. The operator transfers money from their own wallet directly into the escrow contract. Once deposited, the funds are locked and can only be moved according to the contract's rules.
What Happens During a Deposit
- The operator initiates a transfer from their own wallet to the escrow contract
- The contract receives the funds and records the depositor's identity, the amount, and the token
- A unique Deposit ID is generated — this is the permanent reference for this pool of campaign funds
- The funds are now locked in the contract and publicly visible on the blockchain
Custody Implications
| Question | Answer |
|---|---|
| Who transfers the funds? | The operator, from their own wallet |
| Where do the funds go? | Into the escrow contract (an autonomous program) |
| Does Verifluence handle the transfer? | No. It is a direct wallet-to-contract transaction on the blockchain |
| Can the deposit be reversed? | Not as a reversal. The operator can withdraw unallocated balance at any time through the refund mechanism |
| Is the deposit publicly verifiable? | Yes. The deposit transaction and balance are visible to anyone on the blockchain |
Supported Currencies
Each deployed escrow is bound to exactly one ERC-20, fixed at deployment and unchangeable. Production is bound to Circle native USDC on Base; the contract rejects any other token. There are no native-currency (ETH) entry points.
- The operator first approves the escrow contract to transfer tokens on their behalf, then triggers the deposit. This is the standard two-step process for token transfers on the blockchain.
- Transfers use OpenZeppelin's
SafeERC20, which handles both bool-returning and non-standard no-return tokens correctly.
Binding a single token per deployment is what keeps the solvency invariant provable: the contract's balance of that token always equals everything funded minus everything released and refunded. Fee-on-transfer, rebasing and callback (ERC-777) tokens are unsupported by design.
Available Balance
At any point after deposit, the funds are divided into two categories:
| Category | Description | Operator Can Withdraw? |
|---|---|---|
| Unallocated balance | Funds not yet committed to any streamer | Yes, at any time |
| Allocated balance | Funds committed to specific streamers | Only after deadline, and only unclaimed portions |
The operator retains full control over unallocated funds — they can be allocated to streamers or refunded back to the operator's wallet at any time with no waiting period.