The Catallax Trust has been designed to support a number of different scenarios. I’m outlining each one of these in a different post over the next few weeks as we move toward the release.
Today we are going to talk about how to use a Catallax Trust increase investor confidence in your ICO.
An ICO can funnel the proceeds of their token sale into a Catallax Trust and have it pay out a set fiat denominated amount of those proceeds to cover costs. They can further increase confidence by assigning ownership of the trust to a multi-sig account overseen by trusted members of the community.
For example, ZkCoin is holding a token sale to raise money for their ZkSnark based token. They expect to need $50,000 USD per month for the first year to get the project launched. Excitement is high and they expect to raise much more than is required. Some in the community do have some fear that the team is untrustworthy and will run off with the raised funds. To increase confidence in the token sale and project ZkCoin can create a Catallax Trust that pays out $50,000 of raised ETH each month for the first year. At the end of the year, they don’t know how much they are going to need so they assign ownership of the trust to a group of community member including members of the Ethereum Foundation. Once the trust matures these members will need to sign the withdraw function that pushes remaining funds into a new trust with an agreed upon monthly budget. If the price of ETH fluctuates wildly one of two things will happen:
If the price of ETH goes up he the trust will pay out less ETH and at the end of the contract ZkCoin will get the remaining ETH back and it can be assigned to a new Trust with the agreement of the community.
If the price of ETH goes down, the trust will auto adjust the payout down so that the cash flows continue for the entire two years with funds equal to less than the desired $50,000.
Using a trust for increasing confidence in your IC to a charity has a number of advantages:
Investors know that a Token owner will only be able to get a set amount of ETH out of the trust per month and won’t be able to blow the full raised amount before proper learning in the marketplace has occurred.
Trust Ownership can be handed to other governing contracts like multi-sig contacts or other governance contracts like Aragon or Colony.
The trust owners can reassign the beneficiary of the trust if the project goes off the rails or dies, perhaps redirecting funds to the Ethereum Foundation.
A Catallax Trust can also be used to help reduce the market manipulation risk for the issued ZkCoin by creating a ZkCoin to USD denominated Catallax Trust. Many ICOs hold back large amounts of coins to give to developers and investors in the project. By issuing these coins to a Catallax Trust that only allows a certain amount to be paid out per month the risk to investors is limited. For example, if 30% of the coins are held back to pay to developers a Catallax Trust could hold these coins and only let $10,000 worth be issued each month. As the market price of these new ZkCoins fluctuate the amount released will adjust each month and only $10,000 worth could be dumped on the market each month.
Creating the Trust and Assigning it to an ICO requires the following steps:
ICO owner calls the Custodian.CreateTrust function to create a new Catallax Trust contract. This function takes a token(ETH or ERC20), a currency(USD, EUR, ect.), term(number of months), and fiat payout(amount of currency per term to pay out).
ICO Owner calls the Trust.ChangeBeneficiaryOwner function to set the beneficiary of the trust to their own address.
ICO Owner calls the Trust.ChangeOwner function and assigns ownership of the trust to a governance contract.
The ICO contract uses the trust address as the deposit location for funds raised during the token sale.
Optional: The ICO contract uses another trust address as the destination of generated developer and investor tokens.
The owning governance contract starts the trust after the crowd sale by calling the Trust.StarTrust function.
During the month the Custodian will be publishing the exchange rates between the token and the currency to the blockchain.
After one month the ICO can call the Trust.Withdraw function to get the exchange rate adjusted amount of ETH sent to their beneficiary address.
If you are interested in using a Catallax Trust to manage your employment contracts please reach out to us so that we can make sure that we support the Token / Currency combinations that you would like to use.
Donations always accepted at:
ETH and Tokens: 0x148311c647ec8a584d896c04f6492b5d9cb3a9b0
If you would like more code articles like this please consider becoming a patron on patreon.
You can discuss this article and more at our reddit page r/Catallax.