Connecting to apps
From trading ERC20 tokens to investing in decentralized finance (DeFi), gaming and more, there are thousands of apps available on the internet that make use of your Ethereum wallet. Your ZenGo wallet is a secure bridge to this massive ecosystem via a protocol known as WalletConnect.
Currently, ZenGo supports apps that run on Ethereum only.
See an example on how to trade on Uniswap
Using the QR Scanner
To connect to an app that supports WalletConnect, go to the app’s website and choose “WalletConnect” from the connection options (usually under "Connect Wallet"). You will see a QR code. Then, open ZenGo on your mobile device, tap the QR scanner icon in the top right corner of the home screen and scan the QR code.
If you did not back up your wallet yet, ZenGo will prompt you to do so first. After you made a backup and synced it to a cloud service, you will be able to use the QR scanner.
Connecting to an app
After scanning the QR code, you will be shown a “Connect to app” dialog box, tap the Confirm button to connect. By connecting you are giving the app access to your address, your account balances, your activity history and the ability to initiate transactions. However, rest assured at this point that the app can not approve transactions on your behalf. Also, this connection will stay active until you decide to disconnect from within ZenGo or from the app itself.
View the apps you are connected to
You can view all apps connected to your wallet on the “App Connections” screen. Access your App Connections screen from the QR scanner screen by swiping left or by tapping the active connections on the bottom of the screen. You can also access the App Connections screen from the Account tab.
Disconnecting from an app
To disconnect from a specific app, access the App Connections screen, tap the desired app and then tap “Disconnect”. You will need to repeat this process for each app you would like to disconnect.
You do not need to have an Ethereum balance to pay for gas fees when connecting or disconnecting to apps.
In contrast, all other interactions below are recorded on the blockchain and therefore you will need to have some Ethereum to pay for the associated gas fees. You can purchase ETH in ZenGo.
Granting apps access to your assets
To initiate any type of transaction, an app will first require access to an asset, which you can do by Granting and Revoking asset approvals to any particular app.
Granting asset approvals
Asset approvals give permission for an app to interact with a specific asset (usually to withdraw or move an asset). This permission is not tied to any transaction or specific use case, instead, it gives the app unlimited access for an indefinite amount of time - or until you revoke access in the future.
When granting asset approvals, you can either give the app unlimited allowance for the full amount of your asset, or you can specify an amount and limit how much the app can access.
While the amount of the allowance is flexible, most apps by default ask for an infinite allowance for the sake of minimizing the amount of transactions that must take place in the future. This is done to limit gas fees whenever possible.
A fixed amount allowance is useful if you are certain this specific app will not need future interactions with this asset.
Known vs Unknown assets
There are thousands of new assets on the Ethereum blockchain, and new ones are added every day. While ZenGo supports many of these assets, it does not support them all. If an app requests access to an asset that ZenGo does not support, but one you received in your Ethereum wallet, ZenGo will not be able to specify the name of the asset you are about to give permission to. Please ask our in-app live support if you have more questions about this.
Revoking ERC-20 asset approvals
To remove the app’s ability to access your funds and spend on your behalf, you will need to revoke the asset approvals (ERC-20 tokens) for a specific app. You can do so using multiple tools. Please note: Because “Revoke access” is an on-chain transaction, it will cost some gas fees (paid to the network, not to ZenGo). Be prepared for this by holding some ETH in your wallet.
Tools for revoking ERC-20 access
Here is a video demonstration of how to do it with ZenGo
The most popular use case for connecting to an app is to support a certain action with the app. Whether you are buying an NFT, swapping one asset for another or sending funds to a vault to earn interest, all these actions will require you to sign a transaction that transfers funds out of the ZenGo wallet and to the app itself.
When starting to use WalletConnect, ZenGo will host a list of recommended apps that you can safely try out to carry out certain actions. We will make sure to include a recommended app for the most popular use cases such as:
Buying and selling ERC20 tokens on decentralized exchanges
Depositing assets with lending protocols to earn interest
Depositing assets in staking pools to earn interest
Playing games on the blockchain to potentially earn in-game collectibles or tokens
Find our recommended apps for each of these use cases in the “Recommended” section of the “App Connections” screen. It is accessible from the QR scanner screen by swiping left or by tapping on the active connections at the bottom of the screen. Alternatively, you can also access the “App Connections” screen from the Account tab.
Note on ZK rollup-based apps
Because of how ZK rollup-based apps handle transaction signatures, there is a risk that depositing funds into such an app and then disconnecting from the app would result in the app not being able to identify your wallet the next time you try to connect, and thus would result in loss of funds. We strongly urge you to avoid using ZK rollup-based apps with ZenGo until a better technical solution is in place.