Skip to content

How to Create an Elysium Token on the Zcoin Blockchain

justanwar edited this page Aug 23, 2021 · 4 revisions

This is a legacy article. It may no longer be accurate or up to date.

Before you start: Creating a token on mainnet incurs a fee of 10 XZC. If you want to test Elysium, feel free to use the test ecosystem on mainnet or create your token on testnet. You can get on testnet by adding testnet=1 to your zcoin.conf file or launching zcoin-qt with the -testnet flag. To get testnet coins, use our faucet.

  1. Elysium is part of our release builds. If you are, however, building Zcoin Core yourself (as described in Readme.md), you need to add —enable-elysium to /.configure for Elysium to be built.
  2. Edit your ~/.zcoin/zcoin.conf file to include the line elysium=1. Create this file if it doesn’t exist. Optionally you can launch zcoind or zcoin-qt with the -elysium flag to achieve the same outcome.
  3. Get a new address and give it a friendly name like so zcoin-cli getnewaddress “MyToken”. Then fund the generated address with at least 10 XZC and some dust. These funds will be used for the 10 XZC creation fee and future transaction fees of your token.
  4. zcoin-cli listaccounts should now show a balance similar to this
{
	“MyToken”: 11.00000000,
}
  1. Unlock your wallet if encrypted (using the walletpassphrase command) and decide whether you want a fixed-supply token or if you want to be able to later manage the supply of your token. Here's an example command line for a fixed issuance token:

zcoin-cli elysium_sendissuancefixed TYm2n5KeSNqj8XxNW7HYsH7iGhHn5qwix4 1 2 0 "" "" documentation_token "" "A token created while writing this documentation" 1000 1

Documentation about fixed and managed token creation parameters can be found in the online help for the elysium_sendissuancefixed and elysium_sendissuancemanaged respectively or here for fixed and here for managed. Note that we deviate from the Omni documentation in one aspect: Sigma. This is configured in the last command line argument (final 1 in the example). The parameters are as follows:

Value Key
0 soft disabled
1 soft enabled
2 hard disabled
3 hard enabled

"hard" here means "irreversibly" so if you hard-disable Sigma, you will not be able to activate it at some later point in time. Note: changing Sigma activation status is currently not implemented, so choose wisely!

  1. To see your token among the list of all tokens, call zcoin-cli elysium_listproperties. You need to wait for at least one network confirmation before being able to see it there

  2. To get more details, take note of the propertyid and use it as an argument to zcoin-cli elysium_getproperty <id>

  3. To send tokens, use the elysium_send call like so: zcoin-cli elysium_send <youraddress> <destinationaddress> <propertyid> <value>

Clone this wiki locally