How to setup the Voting Contract using two MetaMask accounts

In this step by step guide, we are going to talk you through setting up a Voting Contract, which you need to do in order to vote, using two MetaMask accounts. You would only do this if you store your MKR on MetaMask, and not on a hardware or paper wallet.

Before you get started, you will need to ensure you have a second MetaMask account set up with some Eth (at least 0.01Eth) in order to cover gas costs. This will act as your hot wallet. Your MetaMask account with your existing MKR tokens in will be your cold wallet. You will again need some Eth (at least 0.01Eth) in your cold wallet too.

Ensure your MetaMask is unlocked, and in MetaMask extension you have your cold wallet selected. On the voting dashboard, click ‘Set up now’ on the top banner followed by ‘Get started now’ once you have read the instructions. The next screen you see will be the terms of service for using Maker’s Governance Voting system, if you agree, click ‘I agree’.

The first step in setting up your voting contract is to link your hot and cold wallets. From the current window, select your hot and cold wallets from the respective dropdowns, and click ‘link wallets’. If you cannot see one of your wallets, simply switch to the wallet you cannot see in the MetaMask extension and it should appear. Be sure to switch back to the cold wallet though before continuing.

Once you have clicked ‘Link Wallets’, you will now see a message asking you to ‘Approve transactions on your cold wallet’ within MetaMask. Your MetaMask window should appear to confirm the transaction, or if it doesn’t, you should see it by clicking on the MetaMask extension icon.

Once the transaction has been approved, you will now be asked to approve the linking you have initiated from your cold wallet. Check to ensure the hot and cold wallet addresses are correctly matched. In order to approve the transaction, you now need to switch to your hot wallet in your MetaMask extension. Once you have switched to your hot wallet, click ‘Approve’ to complete the link.

Now that you have created the voting contract, and the link between your hot and cold wallet, you need to grant the voting contract permission to move your MKR into the voting contracts, a capability you can revoke at any time. In order to grant permissions and move MKR to your voting contract, you must now switch back to your cold wallet within the MetaMask extension. Once your cold wallet is selected, click ‘Grant’ to continue, then wait for the transaction to be confirmed.

The final step before you can vote is to move MKR from your cold wallet into the voting contract you have just setup. Simply choose how much MKR you wish to lock into the voting contract (Note: You can withdraw some or all of your MKR from the voting contract at any time) and click ‘Lock MKR’. Again confirm the transaction within MetaMask and wait for confirmation.

Once confirmed, you are all done and ready to vote. Just switch your MetaMask extension back to the Hot Wallet, and use the dashboard to vote.

For instructions on how to vote, and finding your way around the rest of the dashboard, please click here.

If you have any questions, we’re always here to help either on our subreddit or chat.makerdao.com.

Happy voting!