Metamask: Confirm button in Metamask is grayed out when trying to interact with a Uniswap contract
As a developer building applications on the Ethereum blockchain, you need to ensure that all interactions, including interactions with external contracts, are smooth and seamless. However, users are reporting a common issue, especially when trying to perform Uniswap swap transactions using MetaMask. In this article, we will investigate the cause of the issue and provide a solution.
Problem:
When trying to interact with a Uniswap contract using Metamask, users often encounter a grayed out confirm button. This issue is due to the way MetaMask interacts with external contracts on the Ethereum network.
Why is MetaMask graying out the confirm button?
A closer look reveals that MetaMask’s interaction with Uniswap contracts relies heavily on the eth_request
and eth_sendTransaction
functions. However, these functions are not properly configured when interacting with external contracts.
Solution:
To resolve this issue, we need to update the Metamask configuration settings to ensure proper interaction with Uniswap contracts.
- Update your MetaMask configuration: Go to the [MetaMask website] ( and go to “Settings” > “Advanced Settings”. Scroll down to the “Wallet” section and click on the “Advanced Options” tab.
- Enable the External Request Feature: In the “Advanced Options” tab, turn on the “External Request Features” switch. This will allow MetaMask to request external features, including those from third-party contracts such as Uniswap.
Additional steps:
To confirm that the changes are working as expected, follow these steps:
- Test Uniswap contract interaction: Launch the Metamask application and try to interact with the Uniswap contract using either eth_request or eth_sendTransaction. If you encounter errors, there may be a configuration issue.
- Test your local development environment:
If you are developing locally, make sure that the Ethereum network is properly configured and the Uniswap contract is deployed on the network.
By following these steps, users should be able to resolve the issue where the confirm button is grayed out when interacting with Uniswap contracts using MetaMask.