# MetaVaults Overview



MetaVaults are cross-chain managed yield vaults. They primarily aggregate liquidity positions (LP positions consisting of PT + IBT) across multiple markets and chains, and can also hold PTs and other assets. Idle liquidity can be deposited in liquid DeFi protocols for additional yield while honoring redemption requests.

## What problem do MetaVaults solve? [#what-problem-do-metavaults-solve]

Managing liquidity across multiple yield markets involves finicky processes: monitoring maturities, redeeming positions, re-allocating across pools, and ensuring enough liquidity is available for redemptions. MetaVaults automate this by delegating liquidity allocation to a permissioned curator while enforcing on-chain safety constraints via [Zodiac](https://www.gnosisguild.org/).

## Key properties [#key-properties]

| Property             | Detail                                                                                          |
| -------------------- | ----------------------------------------------------------------------------------------------- |
| **Standard**         | [ERC-7540](https://eips.ethereum.org/EIPS/eip-7540) — asynchronous deposit/redeem               |
| **Share token**      | ERC-20, issued by the [MetaVaultWrapper](/docs/metavaults/contract-functions/metavault-wrapper) |
| **Underlying asset** | A single ERC-20 (e.g. USDC) per vault                                                           |
| **Strategy scope**   | Provide Curve liquidity, buy/sell PTs, deposit idle assets in DeFi protocols                    |
| **Access control**   | [Zodiac](https://www.gnosisguild.org/) RolesModifier + on-chain validation contracts            |
| **Fee model**        | Performance fee on positive yield, collected at [settle](/docs/glossary#settle)                 |

## How it works — the epoch lifecycle [#how-it-works--the-epoch-lifecycle]

1. **Request** — depositors call `requestDeposit` or `requestRedeem`. Assets and shares are queued for the next settlement.
2. **Curator allocates** — the curator deploys queued and idle assets into yield strategies (LP positions, PTs, etc.) within the boundaries enforced by Zodiac.
3. **Settle** — the accountant reports the new vault underlying value via `settle()`. Fees are collected, pending requests are processed, and a new epoch begins.
4. **Share mint / share burn** — depositors call `deposit` (mint shares) or `redeem` (burn shares for assets) to collect their settled positions.

<Callout type="info">
  Yield accrues from the epoch the deposit request is settled — depositors do not need to claim (`deposit`) their shares to start earning. Unclaimed shares continue to accrue yield until they are minted.
</Callout>

For a detailed walkthrough of the deposit/redeem flow, see [Depositing and Redeeming](/docs/metavaults/guides/depositing-and-redeeming).

## Entities [#entities]

### Depositor [#depositor]

Deposits underlying assets (e.g. USDC) into a MetaVault and receives wrapper shares. Depositors are passive — they rely on the curator to allocate liquidity and the on-chain constraints to enforce safety.

* [Depositing and Redeeming](/docs/metavaults/guides/depositing-and-redeeming)
* [Fee Model](/docs/metavaults/fee-model)

### Curator [#curator]

Allocates liquidity within the MetaVault: providing/removing Curve liquidity, buying/selling PTs, deploying idle assets. All actions are scoped by Zodiac roles and validated on-chain.

* [Access Control and Roles](/docs/metavaults/access-control-and-roles)
* [Architecture](/docs/metavaults/architecture)

## Contract overview [#contract-overview]

| Contract                                                                      | Purpose                                                                                                                                                |
| ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [MetaVaultWrapper](/docs/metavaults/contract-functions/metavault-wrapper)     | User-facing ERC-7540 vault — handles deposit/redeem requests and wrapper share accounting                                                              |
| [AsyncVault](/docs/metavaults/architecture#infrastructure-vault)              | Infrastructure vault ([Amphor](https://github.com/AmphorProtocol/asynchronous-vault/tree/main)) — epoch management, share calculations, fund isolation |
| [MetavaultsRegistry](/docs/metavaults/contract-functions/metavaults-registry) | On-chain registry of vaults, markets, and chains                                                                                                       |
