Multichain Interoperability
This section of the VSL devnet demonstrates secure, verifiable cross-chain token transfers using the Wormhole Native Token Transfers (NTT) framework integrated with Pi Squared’s Verifiable Settlement Layer (VSL). It allows developers to experiment with moving assets between blockchain networks while generating verifiable claims that prove the correctness and authenticity of each transfer.
The VSL-Wormhole integration showcases how VSL claims enable decentralized, trust-minimized asset movement between source and destination chains. Each transfer is backed by verifiable data, ensuring tokens are securely locked and minted with full transparency into the underlying logic.
Getting started
The demo setup provides everything needed to run a local or testnet environment where you can mint tokens on a source chain, transfer them using Wormhole’s NTT framework, and receive them on a destination chain.
Transfers are handled by smart contracts deployed on both chains, while backend services observe transfer events and generate claims that are validated by the VSL.
In this demo, you'll interact with:
Source and destination chain nodes (via Anvil or testnet RPCs)
Smart contracts including
PeerToken
,NttManager
, andTransceiver
Backend services (
Observer
andRelayer
) that generate and settle claims through the VSLA frontend UI to initiate transfers and view transfer history
The live instance of this demo is available at: https://multichain.pi2.network/, and you can explore it directly there.
How it works
Token minting: Users mint tokens on the source chain using the faucet.
Approval: Tokens are approved for transfer to the designated contract.
Transfer: The transfer triggers the generation of a verifiable claim on the source chain, capturing the locking of tokens.
Claim observation: The Observer service listens for new claims and submits them to the VSL for validation and settlement.
Relaying: The Relayer monitors the VSL for validated claims and executes minting of equivalent tokens on the destination chain.
Completion: The user sees the updated balance on the destination chain, reflecting the received tokens.
Try it yourself
To try out the VSL-Wormhole integration, you can either use the public testnets or run the full demo locally. Each setup involves deploying VSL components, configuring the environment, and initiating cross-chain token transfers.
Testnet setup: Follow the instructions in the main Wormhole README to deploy and test across Ethereum Sepolia and Arbitrum Sepolia using actual network RPCs.
Local development setup: For a fully local experience using Foundry’s Anvil nodes, refer to the Wormhole Local README. This version is ideal for rapid iteration and debugging.
Both guides walk you through environment preparation, deployment, contract setup, and token transfer processes. You’ll also find instructions for running the relayer, observer, and frontend UI components.
Immediately after either of their frontends is running, open your browser and go to http://localhost:3000 and you should see a UI just like this:
The interface above provides a clean UI for transferring tokens between Ethereum Sepolia and Arbitrum Sepolia testnets. Users can connect their wallet to view balances on each chain, initiate transfers, and track history.
The UI consists of:
Chain selection panels for source and destination networks
Balance display, updated upon wallet connection
Connect Wallet button to authenticate and interact with testnet contracts
Navigation tabs for transfer and history views
This demo interacts with deployed smart contracts and relayer components covered in the respective setup guides.
How to use the VSL multichain interoperability demo web interface
This section walks you through transferring tokens between Sepolia and Arbitrum Sepolia using the VSL multichain interoperability web interface.
Connect your wallet: Click the Connect Wallet button and authenticate with MetaMask. Your balances for each chain will now be visible.
Select the transfer direction: Ensure you're sending from Ethereum Sepolia to Arbitrum Sepolia (or the desired direction). The source and destination chains are displayed in the UI.
Approve the token transfer:
Input the amount of tokens you want to send (e.g., 10 tokens) and approve the token transfer in your wallet by signing the approval transaction.
Initiate the transfer
After approval, click the Transfer button and sign the transaction when prompted in MetaMask.
Claim creation and verification: Behind the scenes, a claim is created based on the transfer event. This claim is submitted to the VSL, where it’s validated and settled.
View claim and transfer status
Check Etherscan to view the transfer transaction and contract interactions.
On Aribscan, you can see token minting on the destination chain after successful settlement.
By clicking on any claim on the history tab, you can inspect claim details, metadata, and proof on the VSL Explorer.
This entire process showcases how VSL enables secure, auditable, and decentralized cross-chain transfers between chains using a universal claim-based architecture.
Last updated
Was this helpful?