This guide provides detailed examples of transferring peaq between a sender and a recipient on the Substrate side of the chain.

Prerequisites:

  • Downloaded and installed an EVM and Substrate based wallet.
    • MetaMask and Polkadot.js will be shown in this tutorial. You can swap for your preferred wallet of choice
  • Understanding of the previous Token Guide.

Receive $PEAQ

Substrate → Substrate

  1. We’ll first begin by heading over to the Polkadot.js.org web app for peaq network.
  2. Connect your wallet if not done so already as outlined in the Token Guide.
  3. Once your account(s) are connected, proceed to refresh the page. Your account(s) will now populate the page.
  4. Clicking on your wallet account’s name will bring up a panel on the right that displays information about that wallet account. This public address (SS58 - Substrate) can be used to receive $PEAQ.

EVM → Substrate

In the current system, sending tokens directly from an EVM-based wallet (which uses an H160 address) to a Substrate wallet (which uses an SS58 address) is not possible due to the differences in their address formats. However, we provide a solution called Address Unification, which creates a link between the two types of addresses.

Through our specialized pallets (modular runtime components in Substrate), a Substrate wallet can generate a unique linked H160 address. Once this linkage is established, an EVM wallet can send tokens to the generated H160 address, and the funds will automatically appear in the corresponding Substrate wallet.

If you want to unify your addresses and enable this transfer, you can do so now via our Developer Extrinsics page on peaq.polkadot.js.org or agung.polkadot.js.org. This process ensures that your Substrate wallet can seamlessly receive tokens from EVM-based wallets while maintaining compatibility across both ecosystems. These instructions are shown below:

  1. Navigate to the relevant polkadot.js.org link above for the network you are trying to unify addresses for.
  2. On the Developer->Extrinsics tab, please select the following parameters:
    • The substrate account selected (e.g. TESTER) will be the recipient of the tokens.
    • submit the following extrinsic: addressUnification claimDefaultAccount()
  3. Once these parameters are set you can click on the Submit Transaction button.
  4. An authorization prompt will need to be approved to execute the transaction. Click on the sign and submit button.
  5. Enter your wallet password and proceed to sign the transaction from your wallet extension.
  6. You should see a green check mark notification indicating that the extrinsic was successful.
  7. In order to read the generated H160 address, you must go to the Developer->Chain State tab. Please select the following:
    • selected chain state query: addressUnification evmAddress()
    • The substrate account selected (e.g. TESTER) the previously used wallet.
  8. Now click on the + to query the state. Your binded address will be displayed.
  9. To execute a transfer from EVM to Substrate open up your MetaMask wallet.
  10. Click the send button to transfer tokens over. In the to field, copy and paste the H160 address that was read in step 8.
  11. Submit the transfer.

Verify transfer

Substrate Wallet before transfer:

Substrate Wallet after transfer:

As you can see the tokens were successfully transferred over!

Send $PEAQ

Substrate → Substrate

  1. To send, locate the “send” button on the account you wish to send from.
  2. Input the Substrate address of the user you wish to send to, the amount of $PEAQ you wish to send to the recipient, and proceed to click the “Make Transfer” button.
  3. This transfer extrinsic needs to be signed, proceed to “Sign and Submit” the transaction.
  4. Enter your wallet password and proceed to sign the transaction from your wallet extension.
  5. You should see a green check mark notification indicating that the transfer was successful.

Substrate → EVM

When transferring funds from a Substrate Wallet to an EVM Wallet, the recipient H160 address must be converted to a SS58 Address. Please see the EVM Token Transfer guide in the Substrate→EVM section to see how to convert.

Once you have obtained the converted address, please follow the same procedure as indicated in the above section for Substrate→Substrate transfers.