Before each user’s first deposit
- Your backend calls
POST /v2/gvaults/{gVaultId}/allowlistwith the user’s wallet address. - Poll
GET /v2/gvaults/{gVaultId}/allowlistuntilallowedistrue. - Enable the deposit action in your app.
Deposit
Have the user approve the gVault to spend its deposit token, then call:receiver to the wallet sending the transaction. The wallet receives
gVault shares directly.
Withdraw
ReadmaxWithdraw(walletAddress) or maxRedeem(walletAddress) before building
an instant withdrawal. Within that limit, call the standard ERC-4626 method:
owner to the wallet sending the transaction. Instant capacity depends on
the underlying vault’s current liquidity.
For a larger exit, call requestRedeem(owner, shares). Ground processes the
queued redemption, and the owner later calls claimRedeem(owner, requestId).
Removing a wallet from the allowlist blocks future deposits but leaves its
withdrawal access available.