We're building a smart wallet. Become an early partner and help build a great onchain experience.Learn more
Smart Wallet Early Adopter

Smart Wallet Early Adopter

0.00 ETH

Frequently asked questions

The basics

What is a smart wallet?+
A smart wallet is an onchain wallet built to make it easier than ever for users to get started. It exists entirely in the browser, no need to install extensions or apps. It uses passkeys for signing, no seed phrases, no passwords, no third parties. You get one wallet for everywhere. All major L2s, and every app you connect to, you'll get the same wallet, with the same address.
I already support other wallets, why do I need this?+
Smart wallet support works the same way as any other EVM wallet, it's just an easier experience for your user. You don't need to write any custom code or call any special APIs for it. If you're using the Coinbase SDK or any standard wallet connection toolkit, you'll get support for smart wallets out of the box for free once it's available on mainnet.
What is “Spend with Coinbase”?+
Spend with Coinbase allows smart wallet users to spend funds directly from their connected Coinbase accounts without holding funds in their wallet. This lets users get funds onchain in fewer steps, and prevents them from getting hung up if they run out of gas or don't have enough funds in their wallet to complete a transaction.
Who's holding the keys?+
Smart wallets are secured by passkeys stored on the user's device. Passkeys are backed up with passkey providers such as Apple, Chrome, or 1Password, or on hardware such as YubiKeys. Passkey signatures are validated directly onchain via an open source and audited smart contract. Coinbase never holds keys and never has access to user funds.

Getting started

Can I integrate the smart wallet with my dapp today?+
Yes! We are currently in our testnet developer preview period. You can use these docs to start using our smart wallet on testnets, with mainnet coming soon. If you already use RainbowKit, Wagmi, or the Coinbase SDK, it's as simple as bumping the version number.
What should I do to get ready for smart wallets?+
Make sure your app is ERC-6492 compliant to ensure that sign in works with smart wallets. If you're using verifyMessage from viem it already is.

If you're developing smart contracts, ensure that they are falling back to ERC-1271 calls if normal signature validation fails. If you are using a standard signature validation library it will likely handle this out of the box.
How do I integrate?+
All you need to do is include the Wallet SDK and bump to version 4.0 when it is available. You can use the SDK directly, or include it alongside other providers via Wagmi or Rainbowkit.
How can I give my users the best experience?+
Get users started faster with a top level “Create Wallet” button. By directing new users without a wallet directly to the smart wallet onboarding flow, you ensure that they have the smoothest path to create a wallet that lands them right back in your app.

Let users spend funds directly from their Coinbase account by taking advantage of MagicSpend. Allow users initiate transactions in their wallet, even if they don't currently have enough ETH to pay. We'll handle the rest. If you'd still like to prevent other wallets from transacting without funds, you can gate the experience by checking window.ethereum.isCoinbaseWallet.

Passkeys

What is a passkey?+
Passkeys are alternatives to passwords or other encrypted methods like recovery phrases, that are extremely easy to create and highly secure.

They are end-to-end encrypted and linked to your Google or iCloud account, chrome profile, or hardware device such as a YubiKey.

This means users no longer have to deal with passwords or recovery phrases. Instead they can use common methods of authorization like touch or faceID, and be more resistant to phishing attempts.
Is that passkey a single point of failure?+
Even though passkeys are great for ease of use, it's still possible lose a hardware key or accidentally delete a software key. The safest approach is to always have a backup method to access your funds, just in case.

Users who want an additional backup can generate a plain text backup key and store it in a password manager, or even on a physical paper. This backup key is a standard EOA account which is added as a signer for the wallet. Users can generate and regenerate as many backups as they want.
What if I lose my Passkey?+
Your passkey and recovery wallet (if you set one up) are the only methods to access your wallet. Without your passkey, no one can recover the wallet for you. Please avoid bulk clean ups and deletions of passkeys to avoid accidental deletion.