Staking pool with 3 independent owners

Hello community and thanks for all the help and support going on in here between the members.

You probably heard many questions similar to the one I’m about to ask but in different forms and for different scenarios. It has to do with the procedure to setup multiple owners participating in the pledge.

I have reached that step where I need to set up payment and stake keys/addresses (wallets?) for the pool and continue to the pool registration from there.

Here’s my problem:
I’m following the CoinCashew guide (which is really good) but it doesn’t explain how to achieve a setup with 3 owners (which is my case, 3 independent owners among which there’s an operator, myself).
I would like to apply the mnemonic method (the one where I can easily follow up the pool’s rewards from Yoroi or Dedalus) but I want the owners to be able to delegate their respective pledge parts from a wallet they control and created for that purpose. How can I achieve that, once all those wallets area created with their mnemonic phrases (1 wallet for the pool receiving the rewards/fees and 3 wallets for the owners pledges), what minimum information do I need to get from my co-owners without knowing too much and how to translate that in technical terms/steps for the creation of the so called payment/stake key pairs and addresses, the delegation certificates up until the construction of the registration string.
I’m also aware that I have to pay for transaction fees and put a deposit of 500 ADA during the process but I still don’t know which of the above mentioned wallets/addresses I can or have to to use for that purpose and for the life of me I still can’t figure out the exact meaning and purpose of certain terms (payment address, stake address, base address) despitz my week of research and reading through the official documentation, several forums and reddit threads and this forum where I could piece together some elements of the puzzle without reaching a final solution (see: Multiple owners in the pool, signing registration-certificate - #8 by ADAfrog and How to setup multiple owner pool - #2 by laplasz as examples).

The Coincashew documentation for the wallet/mnemonic method uses the cardano-wallet binary and a shell script to generate 2 pairs of keys (payment/stake) and their corresponding addresses from a single wallet!!! and it is not really clear about the actual/practical purpose of the “payment address” (=base address) and “stake address” in terms of real life usage for pledging, receiving pool rewards and paying for transactions (and how/why they derive them from a single wallet for that matter!!!).

It says:

Payment keys are used to send and receive payments and stake keys are used to manage stake delegations.

I might be dumb but I find that sentence confusing. Send and receive payment to where and from where and for what purpose? what stake delegation? The owners’ pledges delegation or the other ordinary delegators to the pool?

It also says:

payment.addr, or also known as base.addr from this extraction script, will be the cardano address which holds your pool’s pledge.

But if it holds the pool’s pledge and is also used for sending and receiving payments doesn’t it go against the idea of having the pledge safe from any tampering or is it possible that in the particular case described in CoinCashew, the address used for paying transactions/deposit happen to be the same as the owner’s address that holds the pledge? But then where do all the pool rewards and fees go? to the Stake address (the one that manages stake delegation???) I’m completely and utterly lost here.

As an extra detail that finished me off, they say at the beginning of the mnemonic method:

Create a 15-word or 24-word length shelley compatible mnemonic with Daedalus or Yoroi on a offline machine preferred.

Can we really use Dedalus or Yoroi offline to achieve that?

I hope my question is clear enough with all necessary information and not too convoluted.

Additional question: If my above set-up is possible and rewards/fees go to a wallet specific to the pool, does it mean that, in order to increment the pledge amount with the gained rewards, one has to manually transfer ADA from it to the owners’ wallets (then of course resubmit the registration with the corresponding new pledge every time?). This question of course applies even for the simple case of one owner who wants to increase his pledge as the rewards come in.

Thanks for all those patient souls reading my question.

Hmm, should work, first

  • import the pool wallet (the wallet which will pay the registratiom cost, the transactions fee and will teceive the pool rewards)
  • register the pool to the blockchain
  • now once your pool is up an running you can import via seed words another wallets which will be used for pledge… (there is no rush, you can pledge only 1 ADA till this step)
  • once one wallet is imported it will have the files requested (payment.addr, payment.skey, payment.vkey, stake.skey, stake.skey)
  • after u imported all wallets then send another pool certificate with the new wallets for pledge

And yes, everytime when u will want to change a pool parameters (pledge, cost, margin, relays IP, etc) you will need to create and submit a new pool certification

PS: the wallet files should not be keep on live Producer!!!

Thanks Alex.
Do you mean that there is a command line method to import already existing wallets using their seed words (in the offline machine environment I guess) in order to generate all necessary keys, addresses and certificates to be later used for the pool registration? Which one is it? Are you referring to that same shell script from the CoinCashew method? Any example to share?

Yes, there is, I am not using coincashew and I can’t remember the script (perhaps someone will provide you) … but there is…

PS: I am using cntools which has a greate friendly gui interface for all of this :slight_smile:

Thanks again Alex, I’ll have a look on that.
Yes I should’ve used cntools from the start.

1 Like

I successfully achieved what I wanted. Expect me to publish a guide soon.

1 Like

Any updates, man, scripts, how you do it?

1 Like