Superform v1
  • Introduction
  • Components
    • Protocol
    • Keepers
    • API
    • App
  • E2E Flows
    • Same-chain Deposit
    • Cross-chain Deposit
    • Same-chain Withdrawal
    • Cross-chain Withdrawal
  • Periphery Contracts
    • SuperformRouter
      • SuperformRouterPlus
      • SuperformRouterPlusAsync
    • PayMaster
    • PaymentHelper
    • EmergencyQueue
    • SuperformFactory
    • Forms
      • ERC4626Form
      • ERC5115Form
      • ERC7540Form
    • SuperPositions
      • ERC1155A
    • RewardsDistributor
  • Core Contracts
    • State Registries
      • CoreStateRegistry
      • AsyncStateRegistry
      • PayloadHelper
    • AMB Implementations
      • LayerzeroImplementation
      • LayerzeroV2Implementation
      • WormholeARImplementation
      • HyperlaneImplementation
      • AxelarImplementation
    • Broadcasting
      • BroadcastRegistry
      • WormholeSRImplementation
    • Bridge Validators
      • LiFiValidator
      • SocketValidator
      • SocketOneInchValidator
      • DebridgeValidator (and forwarder)
      • OneInchValidator
    • DstSwapper
    • Settings
      • SuperRBAC
      • SuperRegistry
  • SuperVaults
    • SuperVaults
  • Resources
    • Deployment Addresses
    • Subgraphs
      • Protocol Level Entities
      • Form Related Entities
      • Deposits and Withdrawals
      • SuperPosition Events
      • External Entities
    • Infrastructure Integrations
    • Security & Audits
    • Protocol License
    • Glossary
    • Protocol Multisig
    • Superform Labs Socials
Powered by GitBook
On this page

Was this helpful?

E2E Flows

Users can deposit tokens from any supported chain (the "source chain") to vault(s) on another chain or multiple chains (the "destination chain(s)"). The entire E2E process only requires the user to sign a single transaction. Any additional transactions required are executed by Keepers. The process is chain and token-agnostic. Deposit time and cost vary based on the number of bridges used, the number of swaps involved, and the number of target vaults. After successfully depositing into a vault, the user will be minted SuperPositions on the source chain. Users can withdraw tokens from any chain where their SuperPositions are held (representing vaults on any supported chain), to any supported chain. The entire E2E process only requires the user to sign a single transaction. Any additional transactions required are executed by Keepers. Deposit time and cost vary based on the number of bridges used, the number of swaps involved, and the number of target vaults. SuperPositions are optimistically burnt, and deposited tokens are sent back to the user. If a withdrawal failure occurs, SuperPositions will be re-minted to the user.

For the sake of simplicity, all examples will:

  • Consider actions on a single vault only, however, the examples are easily generalizable to multiple vault actions

  • Assume that retain4626 is set to FALSE

  • Assume liquidity and data were successfully bridged

  • Routes did not expire

Last updated 11 months ago

Was this helpful?