Deposit assets from a wallet into a vault using the deposit endpoint. Privy handles the ERC-20 approval and deposit in a single call. The wallet depositing funds and the admin wallet will receive shares corresponding to the fee share split.Documentation Index
Fetch the complete documentation index at: https://docs.privy.io/llms.txt
Use this file to discover all available pages before exploring further.
View the full API reference for the deposit endpoint.
Deposit flow
- Privy approves the vault to spend the specified amount of the wallet’s ERC-20 tokens.
- The vault converts the deposited assets into vault shares at the current share price.
- Shares are split between the depositing wallet and your app’s admin wallet based on the fee percentage configured during setup.
- The deposit is created as a wallet action with status
pending. Privy prepares, signs, and broadcasts the transaction asynchronously. The status moves tosucceededonce confirmed onchain.
share_amount in the response is null while the action is pending. Once the action succeeds, it reflects the number of shares minted to the depositing wallet. To see the admin wallet’s fee shares, query the admin wallet’s position.
Usage
- Node SDK
- REST API
Use the The method returns an
deposit convenience method on the earn ethereum service to deposit assets into a vault.EarnDepositActionResponse with the pending wallet action. Poll the status with get wallet action, or listen for the wallet_action.earn_deposit.succeeded webhook.A
rejected status means the action failed before any transaction was signed or broadcast — for
example, due to insufficient balance or a policy violation. Your app can safely retry the request.
A failed status means a transaction was broadcast but reverted onchain. Inspect the action’s
steps for details.Next steps
Withdraw assets
Withdraw deposited assets with accrued yield.

