> For the complete documentation index, see [llms.txt](https://etherfi.gitbook.io/etherfi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://etherfi.gitbook.io/etherfi/products/liquid/midas-vault.md).

# Midas Vault Architecture

A subset of ether.fi Liquid Vaults are built on **Midas** infrastructure rather than Veda's BoringVault.

Each vault issues a **yield-bearing token** that is backed by one or more underlying strategies. The token's value is tracked by an on-chain price feed, and minting/redemption is handled by dedicated deposit and redemption contracts. Deposited funds are deployed by an MPC wallet secured by Fordefi on behalf of the vault, with Fordefi's policy engine defining the approved protocols and interactions.

For comprehensive protocol details, refer to the official [Midas documentation](https://docs.midas.app/).

***

## User Flow

### Depositing

Users deposit a supported asset (e.g. USDC, USDT, or another approved token) through the **Deposit Vault**.

**How it works**

* The user deposits an approved asset into the Deposit Vault
* The vault mints the vault's **yield-bearing token** to the user at the current on-chain price
* The token represents the user's proportional claim on the underlying strategies

**Slippage protection**

* Users can specify a **minimum number of vault tokens** to receive
* If fewer tokens would be minted, the transaction reverts

Deposited assets are then deployed into the vault's underlying strategies.

### Withdrawing

Withdrawals are processed through the **Redemption Vault**.

**How it works**

1. The user approves the Redemption Vault to spend their vault token
2. The user submits a redemption request; the Redemption Vault takes the approved vault token from the user
3. The request is processed and settled in the output token, which may be fulfilled asynchronously at a later time depending on the vault.

**Slippage protection**

* Users can specify a **minimum output amount** to receive
* If the request would settle for less than this amount, the redemption reverts

**Timing constraints**

Settlement time depends on the underlying strategies' liquidity and redemption profiles.

***

## Fees

* Vaults may charge a **platform fee**
* Fee range: **0% to 2%**
* **No performance fees** are charged by any vault

***

## Smart Contracts & Architecture

These are the contracts that make up a Midas vault.

#### **Token**

The vault's yield-bearing ERC20 token. Its balance/value grows as the underlying strategies accrue yield. It is minted on deposit and burned on redemption.

#### **Deposit Vault**

Handles user deposits. Accepts approved assets, prices them against the on-chain feed, and mints the vault token to the depositor. The underlying assets are then transferred to the Deposit MPC wallet.

#### **Redemption Vault**

Handles user redemptions. Accepts the vault token back from users and settles the output asset once the request is processed.

#### **Oracle / DataFeed**

Provides the on-chain price used to value the vault token. The DataFeed exposes the current price to the deposit and redemption flows so mints and redemptions occur at a fair, auditable rate.

#### **SMA (Separately Managed Account)**

Fordefi MPC wallet that deploys deposited assets into DeFi strategies on behalf of the vault. It is used by the Strategist. The SMA wallet is constrained by Fordefi's policy engine, which is where the approved protocols and interactions for the SMA wallets are defined.

#### **Access Control**

All contracts for a vault reference an Access Control contract to determine who is allowed to call which methods. It acts as the central roles contract for the vault. Roles are defined in the contracts, users are assigned those roles in the access control contract, and vault contracts reference it to determine if a user is eligible to call a given method.

<figure><img src="/files/P9bcFK5O09m6LUTWGNxn" alt=""><figcaption></figcaption></figure>

***

## Benefits to this Architecture

* The vault contracts stay minimal — deposits, redemptions, and pricing are handled by dedicated contracts, while strategy execution happens off the core vault in the SMA wallet.
* Funds are custodied in a Fordefi MPC wallet, and the Fordefi policy engine hard-constrains which protocols and interactions the SMA wallet can perform. All actions require more than two approvers, except for trivial function calls. Furthermore, interacting with a new protocol requires three approvers drawn from both the Midas and ether.fi teams.
* An on-chain price feed values the vault token, so mints and redemptions occur at a fair, auditable rate.
* A central Access Control contract enforces strict role separation across all vault contracts.

***

## Roles

#### Admin

The Admin is an MPC wallet with a 3/5 threshold. It controls the vault's configuration and permissions, but does not control the SMA wallets. The Admin role will eventually be moved to a timelock, giving time to react to any admin transaction.

#### Strategist

The Strategist is responsible for submitting rebalance signals to the vault. There are significant limitations on the actions the Strategist can take. The actions allowed by the Strategist are whitelisted by 2 midas admins and 2 ether.fi admins, locking down the parameters of each function call, the address, the chain, and the threshold of approvers required to execute the call.

#### Pauser

Hypernative and other trusted entities have the ability to pause the vaults as a safety and control mechanism.

***

## Security

There are several layers of security built into the Midas vaults.

1. **Fordefi policy engine** — the SMA wallet can only interact with pre-approved protocols and perform pre-approved actions. This places a hard constraint on what the vault can do with deposited funds.
2. **MPC custody** — deposited funds are held in a Fordefi MPC wallet rather than a single externally-owned account, removing single-key custody risk.
3. **On-chain price feed** — the Oracle / DataFeed governs mint and redemption pricing so deposits and redemptions settle at a fair, auditable rate. It is updated daily by an MPC wallet, with deviation checks enforced at the smart-contract level to prevent faulty price updates.
4. **Access control** — roles are defined in the contracts and assigned via the Access Control contract, so each role can only call the subset of methods it is authorized for.

***

## Audits

Midas smart contract audits are available at: <https://docs.midas.app/resources/audits>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://etherfi.gitbook.io/etherfi/products/liquid/midas-vault.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
