Skip to main content

SuperSwap

SuperSwap is Hypermid’s dedicated cross-chain bridge and swap protocol. It enables token swaps between SuperSwap-supported chains using the same Hypermid API endpoints.
SuperSwap cross-chain is powered by SuperSwap V2 — an EIP-2535 Diamond (SwapAndBridge + settlement facets) over Hyperlane Warp Routes. The swap, bridge, and any destination unwrap (e.g. WPLS → native PLS) execute from a single signed transaction to the source-chain DiamondShell — so most swaps are one step. Approve estimate.approvalAddress for ERC20 inputs, then broadcast transactionRequest. The status vocabulary is NOT_FOUND → PENDING → DONE | FAILED (see Check Status).

Supported Chains

Additional chains can be added via Hyperlane Warp Routes — talk to us if your ecosystem is a fit.

Endpoints You’ll Use


Inbound Swaps (Any Chain → PulseChain)

Inbound swaps deliver tokens to PulseChain. There are two types depending on the source token.

Inbound — Single Step

When: The source token is USDC on a supported chain (Base, Ethereum, Arbitrum, etc.) User signs: 1 transaction How it works: USDC is bridged directly to PulseChain and swapped to the desired token. One signature, fully automatic.

Inbound — Multi-Step

When: The source token is NOT USDC (e.g., ETH, WBTC, or any token on any chain) User signs: 1 transaction + 1 gasless wallet signature (confirmation) How it works: Hypermid first swaps the source token to USDC, then bridges to PulseChain. After the swap transaction confirms, the user signs a gasless confirmation message so Hypermid can route the funds.
How do I know if it’s single or multi-step? Check the quote response:
  • If it has a transactionRequest at the top level → single step
  • If it has steps array and afterStep1multi-step

Outbound Swaps (PulseChain → Any Chain)

Outbound swaps send tokens from PulseChain to another chain. The user always signs just one transaction on PulseChain.

Outbound — Direct USDCh Bridge (fee-free)

When: Source is USDCh (0xa5B0D537CeBE97f087Dc5FE5732d70719caaEc1D) AND destination is canonical USDC on the target chain. User signs: 1 transaction on PulseChain (+ 1 approval if first use) How it works: USDCh on PulseChain is itself a Hyperlane Warp Route (EvmHypSynthetic), so the API builds a direct transferRemote() call on the token contract. No Piteas DEX step, no Hypermid Sender contract, no protocol fee — the user receives USDC 1:1 minus only the Hyperlane gas payment (in PLS).
This is the fastest and cheapest possible outbound from PulseChain. The approval is “token approves itself” — usdch.approve(USDCH_ADDRESS, amount) — because the EvmHypSynthetic contract IS the token.
Supported destinations: Ethereum (1), Optimism (10), Polygon (137), Base (8453), Arbitrum (42161), Unichain (130).

Outbound — Single Step

When: Source is NOT USDCh (e.g. PLS, HEX) AND destination is USDC. User signs: 1 transaction on PulseChain How it works: Source token is swapped to USDCh via Piteas, routed through the Hypermid OutboundSender contract, and canonical USDC arrives on the destination chain.

Outbound — Multi-Step

When: The destination token is NOT USDC (e.g., ETH, WBTC, or any non-stablecoin) User signs: 1 transaction on PulseChain How it works: PLS is swapped to a stablecoin, bridged to the destination chain, then swapped to the desired token. The user still signs only one transaction — the backend handles the destination swap automatically.
Outbound is always 1 signature. Unlike inbound multi-step, outbound multi-step doesn’t require a confirmation step — the backend handles the destination swap automatically.

Universal Code (Handles All Cases)

This single function handles all four swap types:

Timing

If the destination swap isn’t available after 3 retries, the bridged stablecoin is returned to the user automatically.

Pricing

All fees are included in the quote. estimate.toAmount is what you receive — no hidden costs. Fee terms are negotiated per partner — contact the team for your account’s rates. The direct USDCh → USDC path is fee-free regardless because the user interacts with the Hyperlane Warp Route contract directly — no Hypermid smart contract is in the path.

Status Values

For PLS, use the WPLS address 0xA1077a294dDE1B09bB078844df40758a5D0f9a27 or the zero address. The API handles both.