Documentation Index
Fetch the complete documentation index at: https://dev-docs.multihopper.com/llms.txt
Use this file to discover all available pages before exploring further.
The Problem with Moving Originals
Routing tokens through multiple recipients directly requires either:- Trusting each intermediate recipient to forward funds (custodial risk), or
- Requiring every intermediate party to sign each step (coordination overhead)
How Wrapper Tokens Work
When a route is funded:- Original tokens are deposited into a program-controlled vault. They stay there until final redemption.
- Wrapper tokens are minted 1:1 against the vault balance using a Token2022 mint.
- The protocol uses the permanent delegate to move wrapper tokens through the hop sequence without requiring intermediate recipient signatures.
- The final recipient redeems wrapper tokens by burning them, releasing the original tokens from the vault.
Token2022 Permanent Delegate
The permanent delegate is a Token2022 extension that grants a designated program the ability to transfer tokens from any holder of that mint — without the holder needing to sign. In MultiHopper, the MultiHopper Core program is the permanent delegate for all wrapper mints it creates. This is what enables trustless, programmatic hop execution.Metadata Pointer
Each wrapper mint uses the Token2022 metadata pointer extension to store route metadata directly on-chain:- Hop sequence
- Original token mint
- Vault address
- Route creation timestamp
Transfer Hook
A Token2022 transfer hook is attached to every wrapper mint. The hook is implemented by the Transfer Hook Guard program and runs on every wrapper token transfer, enforcing:- Only the protocol program can move wrapper tokens (not arbitrary transfers)
- Transfer is within an active, valid route context
1:1 Backing Guarantee
At every point in the route lifecycle:- Minting only occurs when an equal amount is deposited
- Burning only occurs when releasing an equal amount from the vault
- No partial mints or burns are possible
Why Not Just Use the Original Token?
Using wrapper tokens instead of the original token:- Keeps original assets in a single, auditable vault
- Avoids requiring recipient signatures at each hop
- Allows the protocol to enforce routing rules at the token level (via transfer hook)
- Normalizes SOL, SPL, and Token2022 tokens into a single interface
How It Works
See the full wrapper token flow from deposit through redemption.