docs / protocol / erc4626
ERC-4626 Standard
ERC-4626 is the Tokenized Vault Standard — a unified API for yield-bearing vaults. It extends ERC-20, so vault shares are transferable tokens.
deposit(uint256 assets, address receiver)→ uint256 sharesTransfers assets from msg.sender to the vault and mints shares to receiver.
mint(uint256 shares, address receiver)→ uint256 assetsMints exactly shares vault tokens to receiver by depositing assets.
withdraw(uint256 assets, address receiver, address owner)→ uint256 sharesBurns shares from owner and sends assets to receiver.
redeem(uint256 shares, address receiver, address owner)→ uint256 assetsBurns exactly shares from owner and sends assets to receiver.
previewDeposit(uint256 assets)→ uint256 sharesRead-only simulation of deposit — shows shares received (no state change).
previewRedeem(uint256 shares)→ uint256 assetsRead-only simulation of redeem — shows assets received (no state change).
convertToAssets(uint256 shares)→ uint256 assetsConverts a share amount to the current underlying asset value (the exchange rate).