Skip to main content

Claiming Morse Accounts

Account Definition

This page describes how to claim a Morse "Account" on Shannon.

This covers accounts which:

  • DO have a non-zero POKT balance
  • DO NOT have any POKT staked
  • ARE NOT staked as an Application
  • ARE NOT staked as a Supplier

How do I claim my Morse POKT?

0. Prerequisites

You have read the introduction in Claiming Introduction and ensure:

  • You have installed the Morse pocket CLI
  • You have installed the Shannon pocketd CLI
  • You have imported your Morse key into a keyring
  • You have a valid RPC endpoint

1. Export your Morse keyfile.json

Export your keyfile.json from the Morse keyring to pocket-account-<morse-address>.json like so:

pocket accounts export <morse-address>

Or specify a custom path:

pocket accounts export <morse-address> --path <custom-path>.json
Import your Morse account first

If you have your private key hex and want to import your Morse account first, you can do it like so

pocket accounts import-raw <priv-key-hex>
Remember your Encrypt Passphrase

When exporting the account, you will be prompted with Enter Encrypt Passphrase. Please be sure to remember or write it down!

2. Create a new Shannon key

pocketd keys add <your_shannon_key_name>

3. Create your onchain Shannon account

If you're using a newly generated key/account, then you will need to use one of the (network-specific) community faucets to trigger onchain account creation.

For testnets, you can send yourself either uPOKT or MACT ("Morse Account Claimer Token"). Only 1 of EITHER minimal denomination is sufficient to create the onchain account, such that it is ready to be used for claiming.

Mainnet "Faucet"

The only token available via Mainnet faucet(s) is MACT.

Why do we need MACT?

MACT is needed to enable users to claim their Morse accounts using new Shannon accounts. These new accounts must exist onchain before they can be used, which requires a transaction to create them. MACT provides a simple and dedicated way to do this. A public faucet will distribute MACT so users can prepare their accounts without relying on other tokens, making the claiming process smooth and accessible.

Use one of the following faucets:

Grove Employees 🌿

If you're a Grove Employee, you can use the helpers here to fund the account like so:

# Get the Shannon address
pocketd keys show <your_shannon_key_name> -a

# Fund the Shannon key with 1MPOKT
pkd_<NETWORK>fund_pokt <your_shannon_address>
# OR
# Fund the Shannon key with 1MACT
pkd_<NETWORK>fund_mact <your_shannon_address>

4. Ensure your Shannon account exists onchain

# Ensure this returns a nonzero balance
pocketd query bank balances <your_shannon_key_name> --node=${RPC_ENDPOINT}

5. Check your claimable Morse account

Ensure your Morse Address is ALL CAPS

For this next step, you will need to convert your Morse address from lower case to ALL CAPS. You can ask an AI to perform this for you.

pocketd query migration show-morse-claimable-account \
<morse-address-ALL-CAPS> \
--node=${RPC_ENDPOINT}

6. Claim your Morse Pocket

Running the following command:

pocketd tx migration claim-account \
pocket-account-<morse-keyfile-export>.json \
--from=<your_shannon_key_name> \
--node=${RPC_ENDPOINT} --chain-id <chain-id>

The above will prompt for your generated Morse Encrypt Passphrase and produce output similar to the following:

Enter Decrypt Passphrase:
MsgClaimMorseAccount {
"shannon_dest_address": "pokt1mrqt5f7qh8uxs27cjm9t7v9e74a9vvdnq5jva4",
"morse_src_address": "8B257C7F4E884E49BAFC540D874F33F91436E1DC",
"morse_signature": "hLGhLRjP6jgP6wgOIaYFxIxT3z4jb4IBDKovMkX5AqUsOqdF+rEIO5aofOKnmYW9BkqL0v2DfUfE3nj25FNhBA=="
}
Confirm MsgClaimMorseAccount: y/[n]:
Be patient. Don't Panic!

This step may sit in your terminal for a minute or so. Be patient and don't panic, it is working!

7. Verify your Shannon balance

pocketd query bank balances <your_shannon_address> --node=${RPC_ENDPOINT}

Troubleshooting

Transaction signing errors

If you're hitting errors related to signature verification, ensure you've specified the following flags based on your environment and keyring config

  • --chain-id: one of pocket-alpha, pocket-beta, pocket
  • --home: the path to your keyring directory
  • --keyring-backend: one of test, file, os, kwallet, pass, keosd

Onchain Fee Requirement

pocketd query migration params --node=${RPC_ENDPOINT} --home=~/.pocketd
params:
waive_morse_claim_gas_fees: true