Ethereum (EVM Based Tokens)

📘

In this article

This article highlights how to call mint and burn for EVM based tokens (smart contracts). Smart Contract mint and burn operations require knowing the method signature for the smart contract's ABI code, and behave differently depending on the implementation of the Smart Contract.

There are several prerequisites required to be able to successfully mint and burn Etheream based tokens:

  • The contract instance must be whitelisted (required to import the asset into CAPITAL).
  • You must have transaction governance defined for the Asset (required to import the asset into CAPITAL)
  • .You must have contract interaction governance rules that enable mint and burn actions on the relevant blockchain.
  • You must have a price for the token (at least one active rate from default PROTECT currency to the respective token).
  • You must know the method signature for the mint or burn function you wish to call.

Smart Contract Mint & Burn

  1. Retrieve the ID of the address authorized to perform the mint operation. This can be found using the List Addresses endpoint.
  2. Retrieve the ID of the whitelisted address you wish to mint tokens to.
  3. Determine the method signature of the mint operation. This will vary depending on the smart contract. Note the example below is the most common mint method signature however you must confirm that the signature is correct.
  4. Send an API request to the Create a call contract request endpoint. This will create a request to be approved in validator. The endpoint takes three required parameters:
    1. fromAddressID (see step 1)
    2. toWhitelistedAddressID (see step 2)
    3. method (see example below for expected object structure)
  5. Determine the request ID from the response and sign the request to approve it. For instructions on how to do this programmatically please see Signing For Approval.
{
	"fromAddressId":"1234...",
	"toWhitelistedAddressId": "1234...",
	"contractType": "GENERIC",
	"method": {
		"functionSignature": "mint(address,uint256)",
		"args": [
			{
			"name": "to",
			"type": "address",
			"value": {
				"primitive": "0x2b.....a95d2"
			}
		},
		{
			"name": "amount",
			"type": "uint256",
			"value": {
				"primitive": "10000"
			}
		}
		]
	}
}
🚧

Important

Incorrect method signatures or address values may result in loss of funds. If the method signature Is wrong, the transaction will be reverted. In this case, the gas fee will still be charged.

Always verify that the method signature and parameters are correct before submitting a mint request. The ABI code for the contract template can be retrieved by going through Capital→Contract Templates.



  © 2025 Taurus SA. All rights reserved.