We need to create a stateful contract for every Song we register for an owner. This stateful contract will record the royalties split with other copyright owners storing their addresses and their percentage share. We use this to % to distribute the amount receive every time the song is played. However, each account is limited to 10 contracts. If the owner has 10,000 songs, we need to create 1,000 accounts to link to the royalty contracts for each song. Is there a better way to do the same?
- I answered my own question. This is the current inherent structure of Algorand. It does not affect the execution of the stateful contract we will using it for.
You most likely would need to indeed create many accounts.
There are many ways however to simplify key management and use the same key for all the accounts.
One solution is to use a 2-out-of-1 multisig, where one public key is the real public key of the copyright owner and the second public is chosen completely at random (there is no associated secret keys or at least nobody knows it).
Another solution is just to create many accounts and rekey them to the same address.