Account Abstraction FAQ

General FAQs

 

What is the API Key used for?

The API key lets you access thirdweb's bundler and paymaster infrastructure, which is required for the smart wallet to operate and optionally enable gasless transactions.

The SmartWallet API is composable - you can bring in your own 4337-compatible factory contract and you can also use your own bundler or paymaster services.

For more information on Smart Wallets, see our Portal docs here.

Does my thirdweb API Key for the Smart Wallet need to remain private?

The short answer is YES - it is important to keep your thirdweb API key private and personal to your project. Thus, we recommend adding your API Key in your private environmental variables.

Can users have the same smart wallet address on all EVM chains?

Yes, using our Smart Wallet contracts, it’s possible to enable predictable addresses per user across all EVM chains. To achieve this, you need to make sure your account factory has the same address on every chain, which you can do from the dashboard by just enabling "Deterministic address" when deploying the account factory.

Notion image
 

Can I sign transactions with my smart wallet?

Smart contract wallets cannot sign transactions themselves, only the 'owners' of the smart wallet can. The way to achieve this is to follow EIP-1271 which requires to ask the smart contract wallet if the recovered address is indeed an owner.

 

How do I sign transactions with my smart wallet?

Transactions are signed by the 'owners' of the smart contract wallet, where the owner is an EOA that acts as we key for the smart contract wallet.

 

What are the differences between smart wallet and local wallet?

Smart wallets and local wallets are both types of wallets with different features and functionalities.

Smart wallets are controlled by a smart contract following the ERC-4337 specification. Smart wallets are powered by account abstraction and enable powerful gasless experiences for users. They are managed by a contract account instead of an externally owned account (EOA). For more on smart wallets see here.

Local wallets are a flexible and advanced solution for building fully-featured wallet experiences. They are tied to the user's device and can be exported at a later date. Local wallets offer powerful use cases such as guest mode, invisible wallet experiences, temporary wallets that can be upgraded to EOAs, simple password flow, and more. For more on local wallets see here.

Which blockchains are bundler and paymaster supported on?

The bundler and paymaster services provided by thirdweb are supported on the following blockchains:

- Polygon

- Optimism

- Base

- Arbitrum

- Linea

- Goerli

- Sepolia

- Mumbai

- Base Goerli

- Optimism Goerli

- Arbitrum Goerli

- Arbitrum Sepolia

- Linea Testnet

- Celo Alfajores Testnet

If you need support for a chain that is not listed, you can contact thirdweb to inquire about its availability.

What do smart wallets add when used with Embedded Wallets?

Embedded Wallets and Smart Wallet are a powerful combination that allows users to sign in with only their email, social, or custom JTW method (Embedded Wallet) and receive a completely gasless user experience (Smart Wallet).

 

What is the difference between Dynamic Account Factory and Managed Account Factory smart wallets?

With DynamicAccountFactory, updates are opt-in for its DynamicAccount smart wallets, while the admin of the ManagedAccountFactory contract can push upgrades to all ManagedAccount smart wallets that it creates. Examples of each are included on the deploy pages here:

What is an example use case for Dynamic Account Factory smart wallets? and Managed Account Factory smart wallets?

DynamicAccountFactory updates are opt-in for its DynamicAccount smart wallets, meaning the developer cannot push upgrades to its users’ wallets, the users will need to upgrade themselves.

A game with in-game NFT items wants to offer its players the ability to store their NFT items in a staking vault as soon as their wallets receive these NFTs. This would be an upgrade to the smart wallet contract’s onERC721Received and onERC1155Received transfer hooks.

The game can provide this upgrade as an opt-in upgrade to their players.

What is an example use case for Managed Account Factory smart wallets?

The admin of the ManagedAccountFactory contract can push upgrades to all ManagedAccount smart wallets that it creates, meaning the developer can push upgrades to its user's wallets.

An example use case is an app that wants its user wallets to only be able to own NFTs within its ecosystem. This would be an upgrade to the smart wallet contract’s onERC721Received and onERC1155Received transfer hooks.

The app can enforce this behavior by pushing this upgrade to its user wallets.

 

Are smart wallets custodial or non-custodial?

Smart wallets are non-custodial. A smart contract wallet is a type of non-custodial web3 wallet that uses smart contracts to operate and manage assets via an admin wallet that signs on behalf of the smart wallet

When should I choose smart wallets over Embedded Wallets?

Embedded Wallets and Smart Wallet are powerful when used in combination, but there are certain applications that will benefit more from just one of the wallet options. Smart wallets are powerful for enabling a seamless web3 experience on the backend (i.e. gasless transactions) and Embedded Wallets allow users to create a wallet with just their email, social, or custom Auth logins.

Did this answer your question?
😞
😐
🤩