Skip to main content

Morpho Bundlers

Bundler contracts are designed for EOAs to combine multiple actions into a single transaction, enabling smoother interaction with Morpho and other contracts in the space. It removes the need to wait for some transactions to be included before being able to interact further with the blockchain and reduce gas cost. More specifically, a bundler exposes a multicall function that can trigger internal logic for various actions.

For instance, a user can perform the following actions in a single onchain transaction:

  • Stake ETH on Lido and receive stETH, wrap them to wstETH, supply them as collateral on Morpho, and borrow any other asset against them.
  • Migrate their position from AaveV3 to Morpho.

Visual

blue-bundlers plot

Core Bundlers

Below is a non-exhaustive list of the different bundlers:

  • MorphoBundler: exposing logic to interact with Morpho. Note that to borrow or withdraw on Morpho the EOA must authorize the bundler.
  • TransferBundler: exposing logic to transfer native and ERC20-compliant tokens.
  • PermitBundler: exposing logic to interact with ERC2612-compliant tokens.
  • Permit2Bundler: exposing logic to interact with Permit2 contract. It allows EOAs to use signatures to approve spending tokens, thus removing one transaction before bundling transactions.
  • WstEthBundler: exposing logic to wrap/unwrap stETH/wstETH and stake ETH.
  • ERC4626Bundler: exposing logic to interact with any ERC4626-compliant tokens.
  • UrdBundler: exposing logic to interact with a UniversalRewardsDistributor and claim rewards.
  • WNativeBundler: exposing logic to wrap/unwrap the native tokens of the given blockchain (e.g. WETH on Ethereum).

Bundlers can be combined to propose enhanced functionalities.