ROOT token contract address is 0xcCcCCccC00000001000000000000000000000000 and it fully supports the ERC-20 standard.
import { Contract, utils } from "ethers";import { ERC20_PRECOMPILE_ABI } from "@therootnetwork/evm";const ROOT_ADDRESS = "0xcCcCCccC00000001000000000000000000000000";const wallet = new Wallet(...);const contract = new Contract(ROOT_ADDRESS, ERC20_PRECOMPILE_ABI);const oneROOT = utils.parseUnits(1, 6);// transfer 1 ROOT to Aliceawait contract.connect(wallet).transfer("0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b", oneROOT);
How do I transfer XRP token or any other ERC-20 tokens?
Just like the ROOT token, XRP and any other ERC-20 token contract addresses can be derived from its native asset IDs.
import { Contract, utils } from "ethers";import { ERC20_PRECOMPILE_ABI, assetIdToERC20Address } from "@therootnetwork/evm";const XRP_ID = 2;const XRP_ADDRESS = assetIdToERC20Address(2);const wallet = new Wallet(...);const contract = new Contract(XRP_ADDRESS, ERC20_PRECOMPILE_ABI, wallet);const oneXRP = utils.parseUnits(1, await contract.decimals());// transfer 1 ROOT to Aliceawait contract.connect(wallet).transfer("0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b", oneXRP);
Tip:
To retrieve a list of available tokens and their asset IDs, check out the Tokens section in our Rootscan Explorer.
ERC-721
How do I create and mint an ERC-721 NFT?
It’s possible to create an ERC-712 collection by calling initializeCollection() method exposed by the nft precompile.
import { Contract, utils } from "ethers";import { NFT_PRECOMPILE_ABI, NFT_PRECOMPILE_ADDRESS } from "@therootnetwork/evm";const wallet = new Wallet(...);const contract = new Contract(NFT_PRECOMPILE_ADDRESS, NFT_PRECOMPILE_ABI);const tx = await contract.connect(wallet).initializeCollection( wallet.address, // owner address utils.toUtf8Bytes("My Collection"), // collection name BigNumber.from(0), // no max issuance utils.toUtf8Bytes("https://example.com/nft/metadata/"), // metadataPath [wallet.address], // royaltyAddresses [100_000], // royaltyEntitlements);const receipt = await tx.wait();const collectionAddress = (receipt?.events as any)[0].args.precompileAddress;
Caution:
The royaltyEntitlements is in permill (parts per million) scaling, so if you want a 10% royalty, that would be 100,000 (as (100_000 / 1_000_000) * 100 = 10%).
Once the collection is created, use the same owner wallet to mint the NFT:
import { Contract, utils } from "ethers";import { ERC721_PRECOMPILE_ABI } from "@therootnetwork/evm";const wallet = new Wallet(...);const contract = new Contract(collectionAddress, ERC721_PRECOMPILE_ABI);// Mint 1 NFT for Aliceawait contract.connect(wallet).mint("0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b", 1);
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"The Root Network","colors":{"primary":"#2E9ACD","light":"#2E9ACD","dark":"#2E9ACD"},"logo":{"light":"https://mintcdn.com/therootnetwork/xSexgVubiJ1uxjZZ/logo/light.svg?fit=max\u0026auto=format\u0026n=xSexgVubiJ1uxjZZ\u0026q=85\u0026s=f5b1f8efb6b8c489111f80d54204d428","dark":"https://mintcdn.com/therootnetwork/xSexgVubiJ1uxjZZ/logo/dark.svg?fit=max\u0026auto=format\u0026n=xSexgVubiJ1uxjZZ\u0026q=85\u0026s=171ddecd8b85e5c78417c52c2c0a5fe1","href":"https://www.therootnetwork.com/"},"favicon":"/favicon.svg","background":{"decoration":"gradient"},"navbar":{"links":[{"label":"Start Building","href":"https://www.therootnetwork.com/build"},{"label":"Start Staking","href":"https://staking.therootnetwork.com/dashboard"}]},"footer":{"socials":{"x":"https://twitter.com/TheRootNetwork","discord":"https://discord.gg/TheRootNetwork","github":"https://github.com/futureversecom/"}},"seo":{"metatags":{"og:image":"https://mintlify.s3.us-west-1.amazonaws.com/therootnetwork/images/trn-hero.png","twitter:card":"summary_large_image","twitter:image":"https://mintlify.s3.us-west-1.amazonaws.com/therootnetwork/images/trn-hero.png","twitter:site:domain":"docs.therootnetwork.com","apple-mobile-web-app-title":"The Root Network Docs"}},"fonts":{"heading":{"family":"Objektivmk","weight":700,"source":"https://cdn.prod.website-files.com/64b459a54c6aeb0b60898fe2/64b459a54c6aeb0b60898fe7_ObjektivMk1-Bold.woff","format":"woff"}},"integrations":{"gtm":{"tagId":"G-0CL0BBNSZZ"},"intercom":{"appId":"x0kxkkip"}},"navigation":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/TheRootNetwork"},{"anchor":"Blog","icon":"newspaper","href":"https://www.therootnetwork.com/blog"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"therootnetwork","hasAudioNarration":false,"actualSubdomain":"therootnetwork","customDomains":["docs.therootnetwork.com"],"gitSource":{"type":"github","owner":"futureversecom","repo":"mintlify-trn-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae92485416fcb78afb0d944:success","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Build","count":75},{"language":"default","tag":"Native API","count":53},{"language":"default","tag":"API Reference","count":49},{"language":"default","tag":"Runtime Pallets","count":48},{"language":"default","tag":"Asset Register","count":20},{"language":"default","tag":"Learn","count":20},{"language":"default","tag":"Guides","count":10},{"language":"default","tag":"EVM API","count":10},{"language":"default","tag":"Features","count":9},{"language":"default","tag":"Runtime Precompiles","count":6}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"build/evm/cookbook/tokens","slug":"/build/evm/cookbook/tokens","pageMetadata":{"title":"Tokens","description":null,"href":"/build/evm/cookbook/tokens"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,br:`br`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`erc-20`,children:`ERC-20`}),`\n`,_jsxs(Heading,{level:`3`,id:`how-do-i-transfer-root-token`,children:[`How do I transfer `,_jsx(_components.code,{children:`ROOT`}),` token?`]}),`\n`,_jsxs(_components.p,{children:[`ROOT token contract address is `,_jsx(_components.code,{children:`0xcCcCCccC00000001000000000000000000000000`}),` and it fully supports the ERC-20 standard.`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`11`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`11`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { Contract, utils } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ethers\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { ERC20_PRECOMPILE_ABI } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@therootnetwork/evm\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ROOT_ADDRESS = `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xcCcCCccC00000001000000000000000000000000\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` wallet = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Wallet(...);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Contract(ROOT_ADDRESS, ERC20_PRECOMPILE_ABI);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` oneROOT = utils.parseUnits(1, 6);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// transfer 1 ROOT to Alice`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract.connect(wallet).transfer(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, oneROOT);`})]}),`\n`]})})}),`\n`,`\n`,_jsxs(Heading,{level:`3`,id:`how-do-i-transfer-xrp-token-or-any-other-erc-20-tokens`,children:[`How do I transfer `,_jsx(_components.code,{children:`XRP`}),` token or any other ERC-20 tokens?`]}),`\n`,_jsx(_components.p,{children:`Just like the ROOT token, XRP and any other ERC-20 token contract addresses can be derived from its native asset IDs.`}),`\n`,_jsx(CodeBlock,{numberOfLines:`12`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`12`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { Contract, utils } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ethers\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { ERC20_PRECOMPILE_ABI, assetIdToERC20Address } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@therootnetwork/evm\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` XRP_ID = 2;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` XRP_ADDRESS = assetIdToERC20Address(2);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` wallet = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Wallet(...);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Contract(XRP_ADDRESS, ERC20_PRECOMPILE_ABI, wallet);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` oneXRP = utils.parseUnits(1, `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract.decimals());`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// transfer 1 ROOT to Alice`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract.connect(wallet).transfer(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, oneXRP);`})]}),`\n`]})})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Tip`}),`: `,_jsx(_components.br,{}),`\n`,`To retrieve a list of available tokens and their asset IDs, check out the Tokens section in our `,_jsx(_components.a,{href:`/build/connecting-to-the-root-network`,children:`Rootscan Explorer`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`erc-721`,children:`ERC-721`}),`\n`,_jsx(Heading,{level:`3`,id:`how-do-i-create-and-mint-an-erc-721-nft`,children:`How do I create and mint an ERC-721 NFT?`}),`\n`,_jsxs(_components.p,{children:[`It’s possible to create an ERC-712 collection by calling `,_jsx(_components.code,{children:`initializeCollection()`}),` method exposed by the `,_jsxs(_components.a,{href:`/build/evm/runtime-precompiles/nft-erc-721`,children:[_jsx(_components.code,{children:`nft`}),` precompile`]}),`.`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`17`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`17`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { Contract, utils } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ethers\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { NFT_PRECOMPILE_ABI, NFT_PRECOMPILE_ADDRESS } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@therootnetwork/evm\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` wallet = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Wallet(...);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Contract(NFT_PRECOMPILE_ADDRESS, NFT_PRECOMPILE_ABI);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` tx = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract.connect(wallet).initializeCollection(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` wallet.address, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// owner address`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` utils.toUtf8Bytes(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"My Collection\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// collection name`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` BigNumber.`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(0), `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// no max issuance`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` utils.toUtf8Bytes(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://example.com/nft/metadata/\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// metadataPath`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [wallet.address], `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// royaltyAddresses`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [100_000], `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// royaltyEntitlements`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` receipt = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` tx.wait();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` collectionAddress = (receipt?.events `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`as`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` any)[0].args.precompileAddress;`})]}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Caution`}),`:\nThe `,_jsx(_components.code,{children:`royaltyEntitlements`}),` is in permill (parts per million) scaling, so if you want a 10% royalty, that would be `,_jsx(_components.code,{children:`100,000`}),` (as `,_jsx(_components.code,{children:`(100_000 / 1_000_000) * 100 = 10%`}),`).`]})}),`\n`,_jsxs(_components.p,{children:[`Once the collection is created, use the same `,_jsx(_components.code,{children:`owner`}),` wallet to mint the NFT:`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`9`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { Contract, utils } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ethers\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { ERC721_PRECOMPILE_ABI } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@therootnetwork/evm\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` wallet = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Wallet(...);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Contract(collectionAddress, ERC721_PRECOMPILE_ABI);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Mint 1 NFT for Alice`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` contract.connect(wallet).mint(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xE04CC55ebEE1cBCE552f250e85c57B70B2E2625b\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, 1);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Tokens","description":null,"href":"/build/evm/cookbook/tokens"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"ERC-20","slug":"erc-20","depth":2,"children":[{"title":"How do I transfer ROOT token?","slug":"how-do-i-transfer-root-token","depth":3,"children":[]},{"title":"How do I transfer XRP token or any other ERC-20 tokens?","slug":"how-do-i-transfer-xrp-token-or-any-other-erc-20-tokens","depth":3,"children":[]}]},{"title":"ERC-721","slug":"erc-721","depth":2,"children":[{"title":"How do I create and mint an ERC-721 NFT?","slug":"how-do-i-create-and-mint-an-erc-721-nft","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"therootnetwork","siteName":"The Root Network","title":"Tokens - The Root Network","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-08-13T00:03:09.240Z","originalFileLocation":"build/evm/cookbook/tokens.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"The Root Network\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Tokens - The Root Network\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"The Root Network\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.therootnetwork.com/build/evm/cookbook/tokens\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/therootnetwork/images/trn-hero.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Tokens - The Root Network\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/therootnetwork/images/trn-hero.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/therootnetwork/223_vrjvu1ggaoMi/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"The Root Network Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2E9ACD\">\u003cmeta data-mint-head name=\"twitter:site:domain\" content=\"docs.therootnetwork.com\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.therootnetwork.com/build/evm/cookbook/tokens\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/build/evm/cookbook/tokens.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.therootnetwork.com/#organization\",\"name\":\"The Root Network\",\"url\":\"https://docs.therootnetwork.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/therootnetwork/xSexgVubiJ1uxjZZ/logo/light.svg?fit=max\u0026auto=format\u0026n=xSexgVubiJ1uxjZZ\u0026q=85\u0026s=f5b1f8efb6b8c489111f80d54204d428\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.therootnetwork.com#website\",\"name\":\"The Root Network\",\"url\":\"https://docs.therootnetwork.com\",\"publisher\":{\"@id\":\"https://docs.therootnetwork.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens#webpage\",\"url\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens\",\"name\":\"Tokens\",\"dateModified\":\"2025-08-13T00:03:09.240Z\",\"isPartOf\":{\"@id\":\"https://docs.therootnetwork.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"EVM API\",\"item\":\"https://docs.therootnetwork.com/build/evm/evm-package\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cookbook\",\"item\":\"https://docs.therootnetwork.com/build/evm/cookbook/smart-contract\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Tokens\",\"item\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens#article\",\"headline\":\"Tokens\",\"name\":\"Tokens\",\"url\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens\",\"mainEntityOfPage\":{\"@id\":\"https://docs.therootnetwork.com/build/evm/cookbook/tokens#webpage\"},\"image\":\"https://mintlify.s3.us-west-1.amazonaws.com/therootnetwork/images/trn-hero.png\",\"dateModified\":\"2025-08-13T00:03:09.240Z\",\"publisher\":{\"@id\":\"https://docs.therootnetwork.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.therootnetwork.com#website\"}}]}\u003c/script>","agentPointerHref":"/build/evm/cookbook/tokens.md","siteName":"The Root Network","nav":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/TheRootNetwork"},{"anchor":"Blog","icon":"newspaper","href":"https://www.therootnetwork.com/blog"}]},"tabs":[{"tab":"Learn","pages":[{"title":"Learn","href":"/intro"}]},{"tab":"Build","groups":[{"group":"Build","pages":[{"title":"Getting Started","href":"/build/getting-started"},{"title":"Connecting to The Root Network","href":"/build/connecting-to-the-root-network"},{"title":"Test Faucet","url":"https://faucet.rootnet.cloud/","href":"/build/test-faucet"},{"title":"Curated Examples","url":"https://github.com/futureversecom/trn-examples","href":"/build/examples"},{"title":"Mainnet Rootscan Explorer","url":"https://rootscan.io/","href":"/build/rootscan-explorer"},{"title":"Testnet Rootscan Explorer","url":"https://porcini.rootscan.io/","href":"/build/testnet-rootscan-explorer"}]},{"group":"Native API","pages":[{"title":"Install Native API","href":"/build/substrate/api-package"},{"title":"Building with Native API","href":"/build/substrate/core-concepts"},{"group":"Cookbook","pages":[{"title":"Primitives","href":"/build/substrate/cookbook/primitives"},{"title":"Tokens","href":"/build/substrate/cookbook/tokens"}]},{"group":"API Reference","pages":[{"title":"JSON-RPC","href":"/build/substrate/api-reference/json-rpc"},{"group":"Runtime Pallets","pages":[{"title":"Assets","href":"/build/substrate/api-reference/runtime-pallets/assets"},{"title":"AssetsExt","href":"/build/substrate/api-reference/runtime-pallets/assetsext"},{"title":"Authorship","href":"/build/substrate/api-reference/runtime-pallets/authorship"},{"title":"Babe","href":"/build/substrate/api-reference/runtime-pallets/babe"},{"title":"Balances","href":"/build/substrate/api-reference/runtime-pallets/balances"},{"title":"Dex","href":"/build/substrate/api-reference/runtime-pallets/dex"},{"title":"Echo","href":"/build/substrate/api-reference/runtime-pallets/echo"},{"title":"ElectionProviderMultiPhase","href":"/build/substrate/api-reference/runtime-pallets/electionprovidermultiphase"},{"title":"Erc20Peg","href":"/build/substrate/api-reference/runtime-pallets/erc20peg"},{"title":"EthBridge","href":"/build/substrate/api-reference/runtime-pallets/ethbridge"},{"title":"Ethereum","href":"/build/substrate/api-reference/runtime-pallets/ethereum"},{"title":"Evm","href":"/build/substrate/api-reference/runtime-pallets/evm"},{"title":"EvmChainId","href":"/build/substrate/api-reference/runtime-pallets/evmchainid"},{"title":"FeeControl","href":"/build/substrate/api-reference/runtime-pallets/feecontrol"},{"title":"FeeProxy","href":"/build/substrate/api-reference/runtime-pallets/feeproxy"},{"title":"FuturePass","href":"/build/substrate/api-reference/runtime-pallets/futurepass"},{"title":"Grandpa","href":"/build/substrate/api-reference/runtime-pallets/grandpa"},{"title":"Historical","href":"/build/substrate/api-reference/runtime-pallets/historical"},{"title":"ImOnline","href":"/build/substrate/api-reference/runtime-pallets/imonline"},{"title":"LiquidityPools","href":"/build/substrate/api-reference/runtime-pallets/liquiditypool"},{"title":"MaintenanceMode","href":"/build/substrate/api-reference/runtime-pallets/maintenancemode"},{"title":"Marketplace","href":"/build/substrate/api-reference/runtime-pallets/marketplace"},{"title":"Multisig","href":"/build/substrate/api-reference/runtime-pallets/multisig"},{"title":"NFI","href":"/build/substrate/api-reference/runtime-pallets/nfi"},{"title":"NFT","href":"/build/substrate/api-reference/runtime-pallets/nft"},{"title":"NftPeg","href":"/build/substrate/api-reference/runtime-pallets/nftpeg"},{"title":"Offences","href":"/build/substrate/api-reference/runtime-pallets/offences"},{"title":"Preimage","href":"/build/substrate/api-reference/runtime-pallets/preimage"},{"title":"Recovery","href":"/build/substrate/api-reference/runtime-pallets/recovery"},{"title":"Proxy","href":"/build/substrate/api-reference/runtime-pallets/proxy"},{"title":"Scheduler","href":"/build/substrate/api-reference/runtime-pallets/scheduler"},{"title":"Session","href":"/build/substrate/api-reference/runtime-pallets/session"},{"title":"Sft","href":"/build/substrate/api-reference/runtime-pallets/sft"},{"title":"Staking","href":"/build/substrate/api-reference/runtime-pallets/staking"},{"title":"Sudo","href":"/build/substrate/api-reference/runtime-pallets/sudo"},{"title":"System","href":"/build/substrate/api-reference/runtime-pallets/system"},{"title":"SyloDataPermissions","href":"/build/substrate/api-reference/runtime-pallets/sylo-data-permissions"},{"title":"SyloActionPermissions","href":"/build/substrate/api-reference/runtime-pallets/sylo-action-permissions"},{"title":"SyloDataVerification","href":"/build/substrate/api-reference/runtime-pallets/sylo-data-verification"},{"title":"Timestamp","href":"/build/substrate/api-reference/runtime-pallets/timestamp"},{"title":"TokenApprovals","href":"/build/substrate/api-reference/runtime-pallets/tokenapprovals"},{"title":"TransactionPayment","href":"/build/substrate/api-reference/runtime-pallets/transactionpayment"},{"title":"TxFeePot","href":"/build/substrate/api-reference/runtime-pallets/txfeepot"},{"title":"Utility","href":"/build/substrate/api-reference/runtime-pallets/utility"},{"title":"VortexDistribution","href":"/build/substrate/api-reference/runtime-pallets/vortexdistribution"},{"title":"VoterList","href":"/build/substrate/api-reference/runtime-pallets/voterlist"},{"title":"Xls20","href":"/build/substrate/api-reference/runtime-pallets/xls20"},{"title":"XrplBridge","href":"/build/substrate/api-reference/runtime-pallets/xrplbridge"}]}]}]},{"group":"EVM API","pages":[{"title":"Install EVM API","href":"/build/evm/evm-package"},{"title":"Building with EVM API","href":"/build/evm/ethereum-vs-trn"},{"group":"Runtime Precompiles","pages":[{"title":"Decentralized Exchange","href":"/build/evm/runtime-precompiles/decentralized-exchange"},{"title":"Assets (ERC-20)","href":"/build/evm/runtime-precompiles/assets-erc-20"},{"title":"NFT (ERC-721)","href":"/build/evm/runtime-precompiles/nft-erc-721"},{"title":"SFT (ERC-1155)","href":"/build/evm/runtime-precompiles/sft-erc-1155"},{"title":"FeeProxy","href":"/build/evm/runtime-precompiles/feeproxy"},{"title":"FuturePass","href":"/build/evm/runtime-precompiles/futurepass"}]},{"group":"Cookbook","pages":[{"title":"How do I deploy a smart contract on The Root Network using hardhat?","description":null,"href":"/build/evm/cookbook/smart-contract"},{"title":"Tokens","href":"/build/evm/cookbook/tokens"}]}]}]},{"tab":"Participate","pages":[{"title":"Participate","href":"/participate/running-a-node"}]},{"tab":"Pricing Sylo","pages":[{"title":"Pricing Sylo","href":"/pricing-sylo/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"Asset Register","pages":[{"title":"Asset Register","href":"/asset-register/introduction"}]},{"tab":"RootRewards","pages":[{"title":"RootRewards","href":"/rootrewards/overview"}]}]},"basePath":"","title":"Tokens - The Root Network","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}