General FAQs
Our thirdweb In-App Wallet is fully EVM compatible and supports all EVM chains.
No! Since our SDK provides the wallet signer
, you can build a unified experience with the same code to handle how all your users' wallets interact with signatures and smart contracts.
However, you will need to provide a separate flow to create in-app wallets as you would with any wallet provider (WalletConnect, Coinbase Wallet, etc.).
Make sure that you are developing on a secure origin, which includes localhost
and any site on https://
. thirdweb uses cryptography libraries that are unsupported on http://
.
If you continue to run into a console error, please contact us with more details.
thirdweb can create up to 100 wallets/second by default and can support higher limits (up to 3,000 wallets/second) upon request.
Users can login to their in-app wallet at https://ews.thirdweb.com/wallet and see the assets held in it.
Users can access it by choosing the thirdweb option in WalletConnect. They will have to choose which "app wallet" they want to connect to the app
We support Google, Apple, Facebook and email out of the box, and in-app wallets can be configured to work with any Open ID Compatible authentication service. We will be adding out of the box support for more social login options soon.
In-app wallets are billed based on "monthly active wallets". An active wallet is defined as a wallet where a user logs in during the billing period. In-app wallets are completely free up to 1,000 monthly active wallets, and $0.02 per wallet after that.
Yes, you can easily use account abstraction with in-app wallets to enable sponsored (gasless) transactions.
Is there a way to display the logged-in email address in the Connect component, similar to the wallet address?
Yes, we show the email by default in the details modal after you connect. To display the email anywhere else using React or React Native, check out the code snippets for all platforms.
The in-app wallet can be used as a signer to a smart contract account (account abstraction), but it can also be used as a standalone EOA.
In the event that thirdweb ceases to exist, we have committed to keeping our in-app wallet service running for a period of at least 12 months after the shutdown announcement. During this time users will be able to access their wallet and transfer their assets out, or export their private key which they can then import into a different client.
Custom JWT Auth FAQs
Yes, you have the option to use your own Auth provider with the thirdweb In-App Wallet. For instructions on how to log in using your custom authentication, refer to our Bring your own authentication with Custom JWT guide.
The user can still recover by authenticating via your application and then using the password that was sent to them to gain access to the wallet on a new device. thirdweb doesn't have access to the authentication mechanism and would only be able to provide the user access to their wallet if they are already on a device that has the wallet share saved.
The user has custody of the wallet because (a) thirdweb does not have enough shares to access the wallet. After all, we do not know the password sent to the user to decrypt one of the shares, (b) your app has the auth mechanism, but auth by itself is not enough to access the underlying wallet.
Currently, users will rely on the built-in recovery of their auth method. Refer to the How to recover your Google Account or Gmail article as an example.
Soon, developers will be able to toggle on the option for users to add a backup auth method in case the user loses access to their primary auth method & its recovery.
Security FAQs
You can learn more about the architecture of how in-app wallets are created and stored here
Using Shamir Secret Sharing technology, your customers' assets are safe even if thirdweb or you are compromised. This is because the attacker will only be able to access 1 of the 3 shards, and that is not enough to reconstruct the private key.