Skip to main content
Passport is Immutable’s identity and wallet solution. Players sign in with familiar accounts (Google, Apple, email) and get a blockchain wallet that works across all Immutable games—no extensions, no seed phrases, no friction.

Why Passport?

Players sign in with Google, Apple, or email—accounts they already have. No wallet downloads, no browser extensions, no seed phrases. The wallet is created automatically.
Unlike other embedded wallets that create a new address per app, Passport gives users one wallet across all Immutable games. Assets, identity, and reputation stay unified.
Gain instant access to millions of players who already have a Passport account.
Users log in on any device to access their wallet. No seed phrase backup or manual imports—just authenticate with the same social account.
Pre-approved transactions let whitelisted game actions execute instantly without popups. Critical for real-time gameplay.
Users own their keys. Immutable cannot move funds without user consent—we’re a co-signer for security policies, not a custodian.

Why Passport?

Passport is a smart contract wallet designed specifically for gaming:

Web2-Like Experience

Players don’t manage private keys or buy cryptocurrency to play

One Wallet, All Games

Single wallet works across all Immutable ecosystem games

Gasless Transactions

Gas fees sponsored by Immutable for common game operations

Social Recovery

Players can recover access even if they lose their device

Technical Comparison

See detailed comparison with MetaMask, Privy, and other wallet solutions →

Quick Start

Install the SDK and connect a user’s wallet in one step:
npm install @imtbl/wallet
import { connectWallet } from '@imtbl/wallet';

// Connect wallet (prompts login if needed)
const provider = await connectWallet();

// Get the user's wallet address
const accounts = await provider.request({ method: 'eth_requestAccounts' });
console.log('Wallet:', accounts[0]);
That’s it. The connectWallet function handles authentication automatically—users see Passport’s login screen if they’re not already signed in.
Some features—such as customizing the login experience, using Passport inside a game, or accessing user identity—require setting up an Auth client. See the Authentication guide for details.
For Unity and Unreal integration, see the Authentication guide.

Chain Support

Next Steps