Skip to main content

Supported Protocols

MultiSub ships with parsers for the most widely-used DeFi protocols. Each parser extracts the input token and amount from protocol-specific calldata so the spending limit system can correctly account for every operation.

DEX / Aggregators

ProtocolParserSupported Operations
Uniswap V2UniswapV2ParserSwap (exact input / exact output)
Uniswap V3UniswapV3ParserSwap (exact input / exact output, single & multi-hop)
Uniswap V4UniswapV4ParserSwap via PoolManager
Universal RouterUniversalRouterParserAll Uniswap Universal Router commands
1inchOneInchParserAggregated swaps
ParaswapParaswapParserAggregated swaps
KyberSwapKyberSwapParserAggregated swaps

Lending / Yield

ProtocolParserSupported Operations
Aave V3AaveV3ParserSupply, withdraw, borrow, repay
MorphoMorphoParserDeposit, withdraw (ERC-4626 vaults)
Morpho BlueMorphoBlueParserSupply, withdraw, borrow, repay

Reward Distribution

ProtocolParserSupported Operations
MerklMerklParserClaim rewards (multi-token, multi-protocol)

Merkl claims use the CLAIM operation type, which bypasses spending checks — claiming rewards never costs allowance. See Claim-Only Sub-Account for a full walkthrough.

Adding a New Protocol

To add support for a protocol not listed above:

  1. Implement ICalldataParser — parse tokenIn and amount from the target function's calldata.
  2. Deploy the parser — deploy the contract to your network.
  3. Register selectors — call registerSelector(selector, operationType, parserAddress) from the Safe for each function the sub-account should be able to call.
  4. Add to allowlist — call setAllowedAddresses(subAccount, [protocolAddress], true) from the Safe.

All four steps require Safe multisig approval, ensuring no new protocol can be added unilaterally by a sub-account.

The Chainlink CRE oracle computes portfolio value using Chainlink price feeds. It natively supports:

  • ERC-20 tokens with Chainlink USD feeds
  • Aave aToken positions (unwrapped to underlying)
  • Morpho vault shares (redeemed to underlying)
  • Uniswap LP positions
  • 100+ major tokens across mainnet and L2s