How to setup multiple owner pool


I’d like to find out any guide how to setup pool with multiple owner.
Is there any smart contract in the pool to divide the reward based on the pledge of each owner?

There is no smart contract yet to divide the reward…

So from 8. Registering a Stake Pool with Metadata — cardano-node Documentation 1.0.0 documentation
lets take an example with 2 owners

  1. provide owner2 stake verification key during pool registration:
cardano-cli stake-pool registration-certificate \
--cold-verification-key-file cold.vkey \
--vrf-verification-key-file vrf.vkey \
--pool-reward-account-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file owner2_stake.vkey \
--mainnet \
--pool-relay-ipv4 <RELAY NODE PUBLIC IP> \
--pool-relay-port <RELAY NODE PORT> \
--single-host-pool-relay STRING \
--metadata-url \
--metadata-hash <POOL METADATA HASH> \
--out-file pool-registration.cert
  1. create delegation certificate for owner 2
cardano-cli stake-address delegation-certificate \
--stake-verification-key-file owner2_stake.vkey \
--cold-verification-key-file cold.vkey \
--out-file delegation_owner2.cert
  1. build the transaction adding the owner2 delegation cert
cardano-cli transaction build-raw \
--tx-in <TxHash>#<TxIx> \
--tx-out $(cat payment.addr)+<CHANGE IN LOVELACE> \
--invalid-hereafter <TTL> \
--out-file tx.raw \
--certificate-file pool-registration.cert \
--certificate-file delegation.cert \
--certificate-file delegation_owner2.cert
  1. sign the transaction with owner2 stake signing key as well
cardano-cli transaction sign \
--tx-body-file tx.raw \
--signing-key-file payment.skey \
--signing-key-file stake.skey \
--signing-key-file cold.skey \
--signing-key-file owner2_stake.skey \
--mainnet --out-file tx.signed
  1. submit the transaction
1 Like

Thanks @laplasz for the help. I think need to try out in testnet first.

Should the --pool-pledge for multi-owners be the sum of the two owners pledge or just owner1’s? Also do we need to manually pledge as I have seen in some documentation? Thanks

so what is defined in --pool-pledge should be covered by the sum fund of owner addresses.

what do you mean on this?

I think they were suggesting to go into your wallet after the pool has been registered and delegate from there to your own, as you would to any another pool.

No, no delegation is needed. The registration itself making the “delegation”. what is only needed is to have the fund on the owner address declared as pool-pledge.

Thank you laplasz

1 Like

For others seeking info regarding multi-owner pool setups, I worked with a variation of the workflow provided by [ANGEL] stake pool in conjunction with the “official” documentation. The Angel pool document is very clearly written and succinct: multi-owner pool from scratch.

The process provided does include registering as a single owner/operator and then adding another owner or more with a second certificate. Thankfully, it does not involve sharing private signature keys.