Note
Tokenization is a premium feature that requires an additional purchase. If you don’t have access to this feature, contact your Customer Success Manager to discuss enabling it in your Fireblocks workspace.
Overview
Fireblocks allows you to deploy token contracts via smart contract factories. A smart contract factory is a smart contract responsible for deploying other smart contracts. Using the Fireblocks Console or API, you can deploy additional contracts via these factories.
Typically, smart contracts are manually written and deployed, which can be cumbersome for complex contracts or multiple deployments. Using a factory allows you to deploy new smart contracts quickly and accurately since they are generated from the central factory.
Fireblocks has partnered with Tokeny to offer a deployment of the ERC-3643 Token contract using a smart contract factory.
ERC-3643 Token contract
The ERC-3643 Token contract, compliant with Ethereum’s ERC-3643 protocol, is a token framework created by Tokeny and audited by Hacken.
Make sure your Tokenization package or Tokenization trial includes the Tokeny license. After purchasing the appropriate package, you will receive an email invitation to onboard with Tokeny. Tokeny’s customer support will help you set up your token ecosystem, rules, and mechanics after deployment via Fireblocks.
Deploying the ERC-3643 Token framework
Prerequisites
- Whitelist Tokeny's smart contract factory address in your Fireblocks workspace. This will vary based on your desired blockchain, so contact your Customer Success Manager for assistance.
- Create a Contract call Policy rule that allows for calling the
deployTREXSuite()function on the whitelisted Tokeny contract. Learn more about creating Policy rules for specific contract call methods. - Prior to deploying the ERC-3643 Token framework, you are advised to source the Claim Issuer and Claim Topic configuration required for your token setup from Tokeny support (see more information on the Claim Topic Registry and Roles and Permissions of Users).
Deployment
If you purchased the appropriate Tokenization package from Fireblocks, the ERC-3643 Token template will be available in your Console. You will also be able to deploy the token and accompanying contracts via the Fireblocks API.
You can deploy this template in Fireblocks using the same procedure for deploying other smart contracts when issuing EVM tokens.
You must define the following parameters when deploying the ERC-3643 contract:
- Owner: The address you want to be the contract owner.
- Name: The name of the contract.
- Symbol: The symbol for the contract.
- Decimals: The number of decimals – for example, 18.
-
Irs: The address for identity registry storage.
- For this parameter, you must enter 0x0000000000000000000000000000000000000000. There must be 40 zeroes after the 0x.
-
ONCHAINID: The address of the token’s onchainID.
- For this parameter, you must enter 0x0000000000000000000000000000000000000000. There must be 40 zeroes after the 0x.
- Ir agents: The list of identity registry agents, such as the Owner’s address.
- Token agents: The list of token-specific agents, such as the Owner’s address.
Leave these parameters empty at deployment in Fireblocks. You configure them later in the Tokeny portal as part of your compliance setup:
Compliance modules
Compliance settings
Claim topics (you must configure at least one for the token to function)
Trusted issuers (you must configure at least one issuer permitted to issue those claims)
Issuer claims
Important:
- For the token to be usable in the Tokeny portal, you must configure at least one claim topic in the Claim Topics Registry. If you are not sure which claim topics to use, contact Tokeny support or follow the documentation you received during onboarding.
- You cannot deploy more than one instance of the ERC-3643 contract with the same Owner and Name.
Claim topics and eligibility
ERC-3643 tokens use a Claim Topics Registry to define which types of claims (for example, KYC or eligibility checks) an investor must have to hold or transfer the token. These claim topics are referenced by the identity and compliance contracts when they verify whether a holder is eligible.
To make the token functional in the Tokeny portal, you must configure at least one claim topic for the token during deployment.
Smart contracts accompanying the ERC-3643 Token
The ERC-3643 Token factory includes a primary token that can be governed and modified via accompanying smart contracts. While deploying the factory, these five additional contracts are automatically deployed for you to use as needed to implement decentralized identity and governance.
- Claims Topic Registry: A contract that lists the claim topics required to be an eligible investor in a token.
- Identity Registry: A contract responsible for linking blockchain addresses to digital identities, enabling the verification of token holders' eligibility and compliance with regulatory requirements.
- Identity Registry Storage: A contract that stores mappings between user addresses and their corresponding digital identities, ensuring efficient access and management of identity records.
- Modular Compliance: A contract used to add and remove compliance rules that apply to token transfers.
- Trusted Issuers Registry: A contract that manages a list of approved entities authorized to issue claims.
To link your contract to your Tokeny Issuer Portal, contact Tokeny support.