Payment key pair


In stake pool school. I’m hung up at this point

1 Like

what is the version of your node? (output of cardano-cli version) (maybe you could try adding the shelley flag to the command - cardano-cli shelley address key-gen ...)

most probably you have different Cardano-cli version than in manual
here is the syntax for 1.25.1

cardano-cli address build
Usage: cardano-cli address build (–payment-verification-key STRING |
–payment-verification-key-file FILE)
[–stake-verification-key STRING |
–stake-verification-key-file FILE]
(–mainnet | --testnet-magic NATURAL)
[–out-file FILE]
Build a Shelley payment address, with optional delegation to a stake address.

Available options:
–payment-verification-key STRING
Payment verification key (Bech32-encoded)
–payment-verification-key-file FILE
Filepath of the payment verification key.
–stake-verification-key STRING
Stake verification key (Bech32 or hex-encoded).
–stake-verification-key-file FILE
Filepath of the staking verification key.
–mainnet Use the mainnet magic id.
–testnet-magic NATURAL Specify a testnet magic id.
–out-file FILE Optional output file. Default is to write to stdout.
-h,–help Show this help text

I’m using a Cardano-Node version 1.24.2 it with the binaries for arm64

Had the same issue while following stake pool school.

After that I upgraded to 1.25.1 and took config files from here:

The error disappeared but now I can not receive funds from the faucet.

Not sure where the mismatch is :confused:


Scratch that :point_up:

I can generate both payment keys and the payment address.
After trying to query the state on the address I get this:

cardano-cli query utxo --allegra-era --address $(cat payment.addr) --testnet-magic 1097911063
Shelley command failed: query utxo Error: A query from a certain era was applied to a ledger from a different era: EraMismatch {ledgerEraName = “Byron”, otherEraName = “Allegra”}

Ok solved it, so, it was a noob error from my side but what can you do :man_shrugging:

Basically what happened:

  • Node was not fully synced with the network - even though it was producing messages like “Chain extended, new tip:…”
  • Giveaways here are the speed of producing “Chain extended messages” paired with the jump of the “slot” value.
  • If “slot” value is jumping for around 1k each time at a high speed - you are not fully synced with the network yet. :slight_smile:

When you get EraMismatch error 2 things can happen:

  1. Wrong syntax for the command using different cardano-cli version or
  2. You are actually using proper syntax for the specific cardano-cli version but your node is not yet synced.

At the time of writing - testnet is into the Mary era.
So the command:
cardano-cli query utxo --allegra-era --address $(cat payment.addr) --testnet-magic 1097911063

should be run with --mary-era option instead of --allegra-era.

Now, onto my previously mentioned faucet error.

Once the node was synced with the blockchain, I received the funds from faucet (even though I followed the “verify transaction link” and it lead me again to a page where it says that the transaction is invalid).

Hope this helps someone and lets you know that you are on the right track, just a bit of patience is needed to get everything in sync.

1 Like

OK, so I’m seeing the “slot” value jumping by 1k. How do I sink properly?
I’m a total noobie so not sure how to update these files.
I used the --allegra-era and --mary era neither worked. so I probably need to do the update.
what is the best way to install the update?

Hey @Jacobneider!

Basically, you are all good. You just need to let cardano-node run for a couple of hours and it will sync completely with the chain. After that you can continue with the tutorial.

You can track progress manually by occasionally running this command:
cardano-cli query utxo --mary-era --address $(cat payment.addr) --testnet-magic 1097911063

In the beginning - you will get error for eras mismatching and ledger name “Byron”.
This one:
Error: A query from a certain era was applied to a ledger from a different era: EraMismatch {ledgerEraName = “Byron”, otherEraName = “Mary”}

After you let the node work for a while and it syncs a bit more with the chain - trying the command again you will get you this error:
Mismatch {ledgerEraName = “Shelley”, otherEraName = “Mary”}

Finally, letting the node run even more, you will get the same error only for Allegra era:
Mismatch {ledgerEraName = “Allegra”, otherEraName = “Mary”}

Shortly after the final error - you will enter the Mary era and be completely synced with the chain and ready to continue the tutorial :grin:

Also, if you want to update cardano-node and cardano-cli to version 1.25.1 - you can simply follow the steps listed here while replacing 1.24.2 with 1.25.1 anywhere you find it:

Hope that helps!

If you have more questions, feel free to shoot - I would be happy to help :slight_smile:


awesome! Do I have start at <cd
git clone>
and redo all the configuration files?

Nah, no need to clone again :slight_smile:

You can start from cd cardano-node and fetch all the tags.

After that checkout the latest tag - and continue down the list with commands :slight_smile:

1 Like

cabal build all?
is this something we have to do after each update too?

Yep, basically we need to do a new build of cardano-node and cardano-cli with the updated version.

You can probably run: cabal build cardano-node cardano-cli
instead of: cabal build all

Should take a little less time :slight_smile:


definitely gonna try that next time… lol

the ghc has changed to ghc-8.10.4 would run:cabal build ghc update that as well?

No, it wouldn’t. You would need to specifically download and install 8.10.4 for your platform from here:

However, I believe there’s no need to do that, at least at the moment.
I’m on ghc 8.10.2 with cardano-cli/node on 1.25.1 and everything works properly :slight_smile:


Hi, still after updating from 1.24.2 to 1.25.1. I am getting this issue of
cardano-cli query utxo --allegra-era --address $(cat payment.addr) --testnet-magic 1097911063 Shelley command failed: query utxo Error: A query from a certain era was applied to a ledger from a different era: EraMismatch {ledgerEraName = "Mary", otherEraName = "Allegra"}

I have the node running for almost two days and I don’t whether how much does it take to sync with chain.
This is the output:
[Beast:cardano.node.ChainDB:Notice:37] [2021-02-24 17:22:47.52 UTC] Chain extended, new tip: 169c9041871788a58241bbc90c922f404dfac4f7b4ed51364b89b9f8ae50abe1 at slot 19818151 [Beast:cardano.node.ChainDB:Notice:37] [2021-02-24 17:22:56.37 UTC] Chain extended, new tip: e07e65eb0bdf8320e312e38fb27a93f0ba42798d8c724ac47f8f2128210d4195 at slot 19818160 [Beast:cardano.node.ChainDB:Notice:37] [2021-02-24 17:24:16.18 UTC] Chain extended, new tip: e38c1a5021f8eb42c00cabaeef8a150b258387d3220522a7dc7791c01bbcbe2c at slot 19818240

Here is the cardano-node and ghc version
cardano-node --version cardano-node 1.25.1 - linux-x86_64 - ghc-8.10 git rev 9a7331cce5e8bc0ea9c6bfa1c28773f4c5a7000f

ghc --version The Glorious Glasgow Haskell Compilation System, version 8.10.2

And syncing is very slow I guess, Can anyone help me with this. Thanks

Hey @Arjunsinh_Jadeja!

Basically, you are running the command with the --allegra-era flag and that’s why you are most likely getting the error.
From what you posted I would say that you are fully synced with the chain and simply replacing --allegra-era with --mary-era in your command should give you desired results.

Let me know if it helps :slight_smile:

Thanks a lot, @pekac , it worked :slightly_smiling_face:

1 Like

This is helpful! Thank you, @pekac! :vulcan_salute:

1 Like

Happy to help! :grin: