project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5

XPayr

XPayr: instant cross-chain USDC payment & auto-routing via LayerZero + Circle CCTP.

XPayr

Created At

ETHGlobal Cannes

Winner of

LayerZero

LayerZero - Best Omnichain Interaction 1st place

Project Description

XPayr is a Web3 payment platform that lets merchants invoice and receive USDC payments from any blockchain and automatically route those funds to one or more pre-configured wallets. The client only signs a single transaction on their chain of choice, while XPayr handles the rest: 1. Invoice issuance via a minimal Invoice.sol smart contract that stores the merchant’s USDC receiving addresses across multiple networks. 2. Payment capture into a secure backend wallet, with Ledger signatures managed by the Device Management Kit. 3. Cross-chain balance aggregation by querying all merchant wallets balance (Ethereum, Arbitrum, Polygon, Avalanche, etc.) via LayerZero’s lzRead. 4. Automated allocation logic that determines where to keep minimum thresholds and where to send excess USDC. 5. Atomic bridging of USDC using Circle CCTP V2: burn on the source chain, mint on each target chain, and distribute to the merchant’s wallets.

This architecture abstracts away all bridge and multi-chain complexity: the customer simply scans a QR code, signs in USDC, and XPayr delivers value instantly to the right chains.

This is what we aim for.

How it's Made

•	Mobile Front-end

• React Native + Expo + TypeScript for iOS/Android. • Custom theming (ThemedView/ThemedText), parallax header, and QR-scanner. • Invoice Smart Contract • Solidity (Invoice.sol) storing merchant USDC receiver addresses per chain. • Foundry (forge) for compilation, testing (forge test), scripting and deployment (forge script). • Backend Orchestrator • Node.js + Express in TypeScript providing /api/bridge & /api/balances. • Ethers.js v6 for on-chain calls: – ERC-20 approve() then depositForBurn() (full 7-arg signature) on Circle’s TokenMessengerV2. – Listen for MessageSent(nonce) to track cross-chain messages. • Circle’s SDK until the VAA is COMPLETED. • Cross-chain Read • LayerZero lzRead via @layerzerolabs/lz-sdk to fetch USDC balances off-chain across every network. And the middleware compute the best dispatch logique of USDC on the merchant wallet. • Cross-chain Bridge • Circle CCTP V2 for atomic burn/mint USDC transfers under the hood with LayerZero messaging. • Ledger Integration Attempt • Planned Device Management Kit (DMK) for Ledger signing. Deferred due to DMK v1 vs ethers v6/Expo conflicts, so going for the issue bug correction.

background image mobile

Join the mailing list

Get the latest news and updates