User Guide
Getting Started
Orientation to Factory terms, workflows, and configuration
Key Terms & Concepts
The following are key terms in using the ComposerX Factory application.
| Role | A Role is a defined set of rights (methods) that are available for a particular entity within the System; for example, depending on the use case, a Role could be an individual or an entity within an organization. | 
| Role Context | A Role Context is a smart contract that bundles multiple role names to create an on-chain user directory by linking role names to wallet addresses. By adding a Role Context to a token, you can control the permissions and access for the token by individuals or entities within your organization. | 
| Allow List | An Allow List is a distribution list of whitelisted tokens. An issuer uses this functionality when using multiple distributors. An Allow List can be linked to multiple tokens, enabling asset transfers to addresses listed in the whitelist. | 
| Master Allow List | A Master Allow List is an aggregate of selected Allow Lists. You can create multiple Master Allow Lists composed of overlapping Allow Lists depending on your compliance strategy. | 
See Glossary and Key Industry Terms for a list of digital assets industry terms.
Example Workflow
The following provides the steps in the end-to-end workflow for creating a Digital Money Market Fund Token, from creating a Controller Wallet to importing the Token in Capital Markets Platform.
See the Compliance Workflow diagram for a visual representation of the Revocable and Compliance Tokenization workflow.
Prerequisite steps completed outside ComposerX Factory:
- 1ETH for gas fees must be topped up for future gas fees in Fireblocks
- 2Set up wallets on Fireblocks Console and name them per the roles
Perform in Capital Markets Platform
- 1Import Fireblocks-issued wallets
Perform in ComposerX Factory
- 1Access ComposerX Factory from WalletConnect with the Controller Wallet
- 2Create a Role Context
- 3Create a Role
- 4Add a Role to the Role Context
- 5Assign a Role to a Wallet
- 6Create the TokenReview Token Strategies to ensure selection of the desired compliance rules for your token. 
- 7Create a Master Allow List
- 8Add an Allow List to a Master Allow List
- 9Add a Wallet to an Allow List
- 10Add Master Allow List to the Token
- 11Add Role Context to the Token
- 12Assign Functions to the RoleExamples of functions: mint, burn, pause, un-pause, clawback, and so on. 
Perform in Capital Markets Platform
- 1Import a Fund token on DTCC Capital Markets Platform, Issuer Profile
- 2Assign Transfer Agent at Issuance
- 3Transfer Agent accepts nomination to perform day-to-day transactions (mint, burn, etc.)
Connect to a Wallet
For the purposes of illustration, this guide assumes the use of a MetaMask or Fireblocks wallet.
Prerequisite information:
- Ensure that you have a Fireblocks or MetaMask account with a functional wallet.
- You must import an initial wallet into ComposerX Factory.
- Once imported, this wallet serves as the Controller Wallet. It is the main wallet that owns all the Roles, Lists, and Tokens that you can create in the application for the management of digitized assets.
Steps to connect a wallet to serve as your Controller Wallet:
Info
The following steps assume that you are connecting through Fireblocks using the WalletConnect option. However, you can use any option and follow the provider's steps to connect the wallet.
- 1Click the Connect buttonTo connect a wallet; you need to select a wallet provider.  
- 2Select Fireblocks from WalletConnect pop up 
- 3Log into your Fireblocks accountFollow the on-screen prompts to connect your wallet.  
- 4Link your WalletOnce the wallet is successfully linked, the wallet's address, key details, and balance display in the upper right. This wallet is now your Controller Wallet.  
HL Besu Setup
When using ComposerX Factory for the first time, it may default to an Ethereum network or to testnet, such as Spolia. In this scenario, perform the following steps to connect your MetaMask:
- 1Log into your wallet
- 2Select 'Add Network' from the network dropdown
- 3Enter the following network settings:Network NameHyperledger Besu New RPC URLhttp://tnt-sec-shr-vm-eus-bsu01.regtoken.io:8545 ChainID1337 Currency SymbolBesu 
Contact our sales team for more information
View answers to the most common questions about our platforms and services