thirdweb's Managed Account Factory
All of thirdweb’s smart wallets are EIP-4337 smart contract wallets with role based permission control.
App developers can issue smart wallets to their users programmatically by deploying a smart wallet factory.
thirdweb’s smart wallets have the following features by default:
Have multiple owners
Execute transactions (single and batched).
Send and receive native tokens.
Send and receive ERC-721 and ERC-1155 NFTs.
Multicall-able.
Store contract metadata.
Managed smart wallets ( ManagedAccount
, ManagedAccountFactory
)
The ManagedAccount
smart wallet is an upgradeable smart contract written in the dynamic contract pattern.
App developers can issue ManagedAccount
smart wallets programmatically by deploying a ManagedAccountFactory
smart contract.
The admin of the ManagedAccountFactory
contract can push upgrades to all ManagedAccount
that it creates. This admin does not require any permissions on the ManagedAccount
smart wallets to do so. An upgrade to the features of ManagedAccount
applies to all ManagedAccount
smart wallets created by the factory. This is the right wallet for developers who anticipate pushing upgrades to their users’ wallets.
Example use case of push upgrades:
An app 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 behaviour by pushing this upgrade to its user wallets.
Resources
DEFAULT_ADMIN_ROLE
(DEFAULT_ADMIN_ROLE)
view
Details
Publish Date
Nov 29, 2023
Audit Report
Licenses
Apache-2.0, MIT, GPL-3.0-or-later, GPL-3.0-only