Skip to main content
Your app configures earn settings from the Privy Dashboard. Navigate to Wallet infrastructure > Earn to deploy a fee wrapper and retrieve a vault ID.
Earn is an Enterprise feature. Reach out to [email protected] to request access.

Prerequisites

Deploy a fee wrapper

Open the Wallet infrastructure > Earn page in the Privy Dashboard and configure a fee wrapper. During setup, your app selects:
  1. A Morpho vault to allocate assets into
  2. The percentage of generated yield your app receives
  3. An admin wallet to claim fees and manage the vault configuration
The admin wallet must sign onchain transactions to manage the vault and claim fees. Exchange wallets, cold storage, and other non-signing wallets do not work. Privy cannot reassign the admin wallet after creation.
Privy assigns all fee wrapper roles to the admin wallet. Developers can update fee wrapper configurations in the future. Learn more about fee wrapper roles here. Contact [email protected] to change the fee wrapper configuration.
Privy-generated admin wallets have no owner by default and are authorized by your app secret alone. Assign an authorization key to require a second factor. See the security checklist for more details.

Copy the vault ID

After setup, Privy provides a unique vault_id for the vault. Copy this value — all deposit and withdraw API calls require it. To verify the vault is live, query its details with the get vault details endpoint:
curl https://auth.privy.io/api/v1/ethereum_yield_vault/{vault_id} \
  -H "privy-app-id: <your-app-id>" \
  -H "Authorization: Basic <credentials>"

Next steps

Deposit funds

Deposit assets from a wallet into a yield vault.

Withdraw and claim

Withdraw deposited assets with accrued yield and claim reward incentives.

Manage positions

Query vault positions and track activity with webhooks.

Starter template

A working Next.js app with end-to-end deposit and withdraw flows.