Skip to main content

Vault Deposits

Each provider has a dedicated Vault contract. Users deposit supported ERC20 tokens; MCAP detects deposits on-chain and updates off-chain balances.

Solidity Interface​

function deposit(address token, uint256 amount) external;

Prereqs:

  • User holds sufficient token balance
  • ERC20 approval: token.approve(vaultAddress, amount)
  • Token supported by MCAP

Example Frontend Flow (EVM)​

// Pseudocode
await erc20.approve(vaultAddress, amount);
await vault.deposit(tokenAddress, amount);
// Wait 1-2 blocks; MCAP reflects off-chain balance

Tip: after deposit, call Wallets API or create a session to fetch updated balances.