Create a Variable-cap Asset

Please note, you should use PETERSBURG EVM version when deploying on CIC Chain

Create the Asset

1. Write the token smart contract

This contract is designed to be unopinionated, allowing developers to access the internal functions in ERC20 (such as _mint) and expose them as external functions in the way they prefer. On the other hand, ERC20 Presets (such as ERC20PresetMinterPauser) are designed using opinionated patterns to provide developers with ready to use, deployable contracts.


  • name()
  • symbol()
  • decimals()
  • totalSupply()
  • balanceOf(account)
  • transfer(recipient, amount)
  • allowance(owner, spender)
  • approve(spender, amount)
  • transferFrom(sender, recipient, amount)
  • increaseAllowance(spender, addedValue)
  • decreaseAllowance(spender, subtractedValue)
  • _transfer(sender, recipient, amount)
  • _mint(account, amount)
  • _burn(account, amount)
  • _approve(owner, spender, amount)
  • _setupDecimals(decimals_)

2. Compile your code into bytecode

3. Deploy your Variable-cap Asset by sending your code in a transaction to the CIC network

4. Navigate to the explorer to check that your token has been created

5. You can use the _mint function to create additional units of the token