Wallet & Infrastructure

WalletConnect

An open protocol enabling mobile wallets to connect to desktop dApps by scanning a QR code.

WalletConnect — WalletConnect is an open-source protocol that enables secure communication between Web3 wallets and decentralized applications through encrypted peer-to-peer connections. It allows users to interact with dApps on a desktop browser while signing transactions on their mobile wallet, eliminating the need to expose private keys to the browser environment.

How It Works

WalletConnect establishes an encrypted connection between a dApp and a wallet using a relay server that forwards messages without access to their content. The connection is initiated by scanning a QR code or clicking a deep link. The current version, WalletConnect v2, uses the Sign API which supports multiple chains simultaneously in a single session.

The protocol works in three steps: (1) the dApp generates a pairing URI containing a shared symmetric key and relay server information, displayed as a QR code or link; (2) the user scans the QR code with their mobile wallet, establishing an encrypted channel; (3) the dApp sends transaction requests through the relay, the wallet displays them for approval, and signed responses are returned through the same encrypted channel.

WalletConnect supports any blockchain and is wallet-agnostic — it works with MetaMask, Trust Wallet, Rainbow, Phantom, and hundreds of other wallets. The protocol also supports chain switching, multi-chain sessions, and push notifications for incoming transaction requests.

Why It Matters

WalletConnect solves a fundamental UX problem in Web3: how to securely connect a wallet to a dApp when they are on different devices. Without WalletConnect, users would need to import their seed phrase or private key into a browser extension to use desktop dApps — a significant security risk. WalletConnect allows the private key to remain on the mobile device while the dApp runs on any browser.

The protocol has become a standard integration for virtually every dApp and wallet in the ecosystem. When a dApp shows a "Connect Wallet" modal with a QR code, it is almost always powered by WalletConnect. This ubiquity makes it the default fallback connection method when a wallet does not have a native browser extension for the user's platform.

Real-World Example

A trader wants to use a new DeFi protocol on their desktop browser, but their primary wallet is Phantom on their phone. They click "Connect Wallet" on the dApp, select WalletConnect, and scan the displayed QR code with Phantom. The connection is established, and the dApp displays their wallet's balances. When the trader initiates a swap, a notification appears on their phone — Phantom shows the transaction details, and the trader approves it. The signed transaction is relayed back to the dApp and submitted to the blockchain.

Common questions about WalletConnect in cryptocurrency and DeFi.

Yes, WalletConnect uses end-to-end encryption, and the relay servers cannot read the content of messages between your wallet and the dApp. The protocol is open-source and widely audited. The main security consideration is the same as any wallet interaction — carefully review every transaction your wallet asks you to sign, as WalletConnect itself does not evaluate transaction safety.

WalletConnect is free for end users. The protocol is funded through its WCT token and developer partnerships. dApp developers integrate WalletConnect SDKs at no cost. Users pay only the standard blockchain transaction fees when they approve and execute transactions through the connection.

WalletConnect v2 sessions can persist for days, but may disconnect due to the relay server clearing inactive sessions, the wallet app being closed or cleared from memory, or network connectivity issues. If disconnected, simply re-scan the QR code to establish a new session. Keeping the wallet app active in the background helps maintain the connection.

Ready to put your knowledge into practice?

Start Boosting