Skip to content

Interacting with Moonbeam Using MetaMask

In this video, we'll show you how to connect your MetaMask wallet to the Moonriver network

Introduction

Developers can leverage Moonbeam's Ethereum compatibility features to integrate tools, such as MetaMask, into their DApps. By doing so, they can use the injected library MetaMask provides to interact with the blockchain.

Currently, MetaMask can be configured to connect to a few networks: Moonbeam, Moonriver, the Moonbase Alpha TestNet, and a Moonbeam development node.

If you already have MetaMask installed, you can easily connect MetaMask to the network of your choice:

Note

MetaMask will popup asking for permission to add a a custom network. Once you approve permissions, MetaMask will switch your current network.

Learn how to integrate a Connect MetaMask button into your DApp, so that users can connect to Moonbase Alpha with a simple click of a button. The guide can also be adapted for the other Moonbeam-based networks.

The information presented herein is for informational purposes only and has been provided by third parties. Moonbeam does not endorse any project listed and described on the Moonbeam docs website (https://docs.moonbeam.network/).

Install the MetaMask Extension

First, you'll start with a fresh and default MetaMask installation from the Chrome store. After downloading, installing, and initializing the extension, follow the Get Started guide. In there, you need to create a wallet, set a password, and store your secret backup phrase (this gives direct access to your funds, so make sure to store these in a secure place).

Create a Wallet

After installing MetaMask, the setup will automatically open a new task with a welcome screen. Click Get Started to begin the setup process.

MetaMask1

When prompted, you are given the option to import a wallet using a recovery seed phrase. For this exercise, set up a new wallet.

MetaMask2

Import Accounts

Instead of creating an account, you also have the option of importing any account into MetaMask you hold the private keys to. For this example, you'll import a development account.

Import dev account into MetaMask

The details for the development accounts that comes pre-funded for this development node are as follows:

  • Alith:

    • Public Address: 0xf24FF3a9CF04c71Dbc94D0b566f7A27B94566cac
    • Private Key: 0x5fb92d6e98884f76de468fa3f6278f8807c48bebc13595d45af5bdc4da702133
  • Baltathar:

    • Public Address: 0x3Cd0A705a2DC65e5b1E1205896BaA2be8A07c6e0
    • Private Key: 0x8075991ce870b93a8870eca0c0f91913d12f47948ca0fd25b49c6fa7cdbeee8b
  • Charleth:

    • Public Address: 0x798d4Ba9baf0064Ec19eB4F0a1a45785ae9D6DFc
    • Private Key: 0x0b6e18cafb6ed99687ec547bd28139cafdd2bffe70e6b688025de6b445aa5c5b
  • Dorothy:

    • Public Address: 0x773539d4Ac0e786233D90A233654ccEE26a613D9
    • Private Key: 0x39539ab1876910bbf3a223d84a29e28f1cb4e2e456503e7e91ed39b2e7223d68
  • Ethan:

    • Public Address: 0xFf64d3F6efE2317EE2807d223a0Bdc4c0c49dfDB
    • Private Key: 0x7dce9bc8babb68fec1409be38c8e1a52650206a7ed90ff956ae8a6d15eeaaef4
  • Faith:

    • Public Address: 0xC0F0f4ab324C46e55D02D0033343B4Be8A55532d
    • Private Key: 0xb9d2ea9a615f3165812e8d44de0d24da9bbd164b65c4f0573e1ce2c8dbd9c8df
  • Goliath:

    • Public Address: 0x7BF369283338E12C90514468aa3868A551AB2929
    • Private Key: 0x96b8a38e12e1a31dee1eab2fffdf9d9990045f5b37e44d8cc27766ef294acf18
  • Heath:

    • Public Address: 0x931f3600a299fd9B24cEfB3BfF79388D19804BeA
    • Private Key: 0x0d6dcaaef49272a5411896be8ad16c01c35d6f8c18873387b71fbc734759b0ab
  • Ida:

    • Public Address: 0xC41C5F1123ECCd5ce233578B2e7ebd5693869d73
    • Private Key: 0x4c42532034540267bf568198ccec4cb822a025da542861fcb146a5fab6433ff8
  • Judith:

    • Public Address: 0x2898FE7a42Be376C8BC7AF536A940F7Fd5aDd423
    • Private Key: 0x94c49300a58d576011096bcb006aa06f5a91b34b4383891e8029c21dc39fbb8b
  • Gerald:

    • Public Address: 0x6Be02d1d3665660d22FF9624b7BE0551ee1Ac91b
    • Private Key: 0x99b3c12287537e38c90a9219d4cb074a89a16e9cdb20bf85728ebd97c343e342

On the import screen, select Private Key and paste in one of the keys listed above. For this example we'll use Gerald's key:

Paste your account key into MetaMask

You should end up with an imported Account 2 that looks like this:

MetaMask displaying your new Account 2

Connect MetaMask to Moonbeam

Once you have MetaMask installed and have created or imported an account, you can connect it to Moonbeam by clicking on the network dropdown and selecting Add Network.

MetaMask3

Here you can configure MetaMask for the following networks:

Variable Value
Network Name Moonbeam
RPC URL https://rpc.api.moonbeam.network
ChainID 1284 (hex: 0x504)
Symbol (Optional) GLMR
Block Explorer (Optional) https://moonscan.io
Variable Value
Network Name Moonriver
RPC URL https://rpc.api.moonriver.moonbeam.network
ChainID 1285 (hex: 0x505)
Symbol (Optional) MOVR
Block Explorer (Optional) https://moonriver.moonscan.io/
Variable Value
Network Name Moonbase Alpha
RPC URL https://rpc.api.moonbase.moonbeam.network
ChainID 1287 (hex: 0x507)
Symbol (Optional) DEV
Block Explorer (Optional) https://moonbase.moonscan.io/
Variable Value
Network Name Moonbeam Dev
RPC URL http://127.0.0.1:9933
ChainID 1281 (hex: 0x501)
Symbol (Optional) DEV
Block Explorer (Optional) https://moonbeam-explorer.netlify.app/

MetaMask5

Initiate a Transfer

You can also try sending some tokens with MetaMask. You will need two accounts for this example, so if you need to create another one you can do so now. Once you have two accounts, click Send to initiate the transfer. Select the Transfer between my accounts option, transfer 100 tokens, and leave all other settings as they are:

Initiating a token transfer

Once you have submitted the transaction, you will see it pending until it is confirmed, as shown in the following image:

Transaction confirmation

Note that the Account 2 balance has been decreased by the sent amount + gas fees. Flipping over to Account 1, you can see the 100 sent tokens have arrived:

New balance in Account 1

If you head back over to your terminal where you have your Moonbeam node running, you will begin to see blocks being authored as transactions arrive:

Moonbeam Development Node

Note

If you end up resetting your development node using the Substrate purge-chain command, you will need to reset your MetaMask genesis account. To do so click on the colored circle in the top right corner and from the menu click on Settings. Then click on Advanced, and Reset Account. This will clear the transaction history from your accounts and reset the nonce. Make sure you don’t erase anything that you want to keep!

The information presented herein has been provided by third parties and is made available solely for general information purposes. Moonbeam does not endorse any project listed and described on the Moonbeam Doc Website (https://docs.moonbeam.network/). Moonbeam Foundation does not warrant the accuracy, completeness or usefulness of this information. Any reliance you place on such information is strictly at your own risk. Moonbeam Foundation disclaims all liability and responsibility arising from any reliance placed on this information by you or by anyone who may be informed of any of its contents. All statements and/or opinions expressed in these materials are solely the responsibility of the person or entity providing those materials and do not necessarily represent the opinion of Moonbeam Foundation. The information should not be construed as professional or financial advice of any kind. Advice from a suitably qualified professional should always be sought in relation to any particular matter or circumstance. The information herein may link to or integrate with other websites operated or content provided by third parties, and such other websites may link to this website. Moonbeam Foundation has no control over any such other websites or their content and will have no liability arising out of or related to such websites or their content. The existence of any such link does not constitute an endorsement of such websites, the content of the websites, or the operators of the websites. These links are being provided to you only as a convenience and you release and hold Moonbeam Foundation harmless from any and all liability arising from your use of this information or the information provided by any third-party website or service.