The interoperability infrastructure for compliant RWAs
What T-REX is
T-REX is a neutral, industry-led settlement and compliance layer governed by regulated financial institutions. It is not a competing L2 or a commercial venture, the objective is to provide the underlying infrastructure that allows transfer agents, custodians, CSDs, market infrastructures, and DeFi protocols to transact with full lifecycle control and regulatory oversight.
Why it is needed
FIs have built isolated private chains and stablecoin environments that don’t interoperate which will ultimately constrain adoption and fragment liquidity. Without a shared compliance and identity-based settlement layer, scaling digital markets globally becomes impossible.
Core principles
Golden-source ledger framework bridging TradFi and DeFi
Governance via an institutional DAO to ensure neutrality
Anchored to a public L1 environment (EVM-based) for global interoperability
Confidentiality via advanced cryptography (e.g., FHE)
Built on ERC-3643, the institutional compliance standard used by 140+ members
The problem with the other tokenization protocols and blockchains
RWAs were limited by tech, not regulation
The digital transformation of finance has introduced tokenization as a means to represent real-world assets on the blockchain. However, current tokenization protocols, particularly permissionless tokens like ERC-20, face significant limitations that hinder their effectiveness and adoption. Most RWA chains and protocols overlook that tokenizing an asset doesn't alter the nature of the underlying assets.
Globally, wherever securities regulations exist, asset tokenization is possible. However, this requires the ability to enforce these securities regulations within a blockchain infrastructure.
Existing Limitations:
Lack of Compliance Integration: Most existing tokenization protocols do not integrate compliance mechanisms directly on-chain. This oversight leads to regulatory challenges, lack of transparency, and limits the participation of institutional investors who require strict adherence to financial regulations.
Fragmented Ecosystem: The financial industry is highly fragmented, with various silos operating independently. So far, this fragmentation has been replicated on chain. This is exacerbated by the use of private recording systems and blockchains, which, despite their declining popularity, still contribute to a disjointed landscape. As a result, there is no unified ecosystem where all stakeholders can seamlessly and securely interact.
Distributor-Level Tokenization: Tokenization often occurs at the distributor level (centralized exchange, bank or broker) rather than at the issuer level. This approach creates multiple ledgers, one for each distributor, leading to inefficiencies and the need for off-chain reconciliation. Without a single, aggregated ledger, the system remains complex and prone to errors.
Market Gaps:
Compliance and Control: There is a pressing need for tokens that enforce compliance rules directly on-chain. Permissioned tokens, which can only be transferred to eligible investors based on compliance criteria, would provide issuers with the necessary assurances to authorize any application on the blockchain. These tokens also offer guarantees to investors, ensuring that they are the legal holders of the underlying assets, even in cases of wallet hacking or theft.
Real-World Asset Integration: Current protocols struggle to effectively link real-world assets with their digital representations. This gap limits the potential of blockchain technology in asset management and hampers the adoption of tokenization in traditional finance.
Unified Registry: The absence of a single registry that aggregates all transfers and investments from various platforms and distributors is a significant drawback. A unified registry would streamline operations, reduce reconciliation efforts, and enhance transparency.
Issues with simple ERC-20 Tokens:
Transfer capable, but not legal: ERC-20 tokens are technically easy to transfer, but they often represent financial assets that are not freely transferable due to regulatory constraints. This discrepancy creates legal and compliance issues, as the ease of transfer does not align with the regulatory requirements of the underlying assets. These discrepancies undermine investor guarantees. Investors who purchased tokens on the secondary market think they own an asset. However, they do not appear in the legal registry.
Bearer Instruments: Most countries have regulations against bearer instruments due to anti-money laundering (AML) and taxation rules. Simple ERC-20 tokens, which can be transferred without compliance checks, often fall into this category, making them non-compliant with regulations. Sanctions vary based on the asset's issuing country and the token holder's country, ranging from fines to imprisonment.
The Need for a New Approach:
To address these challenges, the industry requires a new approach that integrates compliance, unifies the ecosystem, and effectively links real-world assets with their blockchain representations.
This approach should focus on creating permissioned tokens that ensure great investor experience and compliance, enabling issuers to confidently authorize blockchain applications. By doing so, the industry can move towards a more cohesive and efficient system that benefits all stakeholders, providing them with the assurance of legal ownership and compliance.
Overview
A new Era for On-chain Finance
ERC-3643 RWA tokens, with legal guarantees and DeFi interoperability.
Powering Mass Tokenization.
After years of technological development, new regulations, and education worldwide, it is finally time to massively tokenize assets on the blockchain. The Great Transition, where assets get massively tokenized on the blockchain, will occur over the next ten years.
T-REX, the utility token driving the ERC-3643 protocol, addresses these needs with a practical and innovative approach to tokenizing financial assets where compliance is enforced on-chain enabling a strong interoperable ecosystem to thrive.
Currently, most RWA tokens lack compliance, provide poor investor guarantees, or are confined within central custodian wallets, limiting their use in DeFi applications. T-REX fixes these issues by enabling the legal tracking of digital asset ownership.
T-REX Protocol
The ERC-3643 protocol, known as "T-REX," is an advanced set of audited smart contracts designed to simplify the tokenization of financial assets. It allows for the seamless representation of assets and their underlying data, such as documents, prices, ratings, and certifications, as well as the legal identification of stakeholders on the blockchain. T-REX also enables the tracking of all investment activities, including transactions, investments, and redemptions. It is currently the only standard for tokenized securities recognized by the Ethereum community.
The protocol enhances the ERC-20 standard by integrating decentralized identity solutions and control functions. This extends the tokenization process by embedding critical compliance and control mechanisms directly into the cross-chain protocol. It provides a practical solution for linking real-world assets and financial securities to their blockchain representations.
On-Chain Compliance: Ensures that all transactions meet regulatory standards, providing a secure environment for asset management.
Direct Asset Linkage: Establishes a clear and transparent connection between real-world assets and their digital counterparts.
Stakeholder Representation: Supports various stakeholders, including issuers, investors, and distributors, within a unified framework.
Learn more about the protocol:
The T-REX protocol offers a standardized framework for tokenizing Real World Assets and securities, addressing the complexities inherent in both finance and blockchain technology. By providing clear guidelines and best practices, it enables all stakeholders to efficiently execute their roles, building on the experiences of previous projects. This standardization enhances interoperability and compatibility, allowing service providers to integrate seamlessly with all tokens through a single integration, thereby reducing technical burdens and promoting consistent interactions across the value chain.
Adopting the ERC3643 protocol significantly reduces technical complexity by utilizing an audited and market-proven standard, eliminating the need for extensive due diligence. This results in substantial time and cost savings, as issuers and investors can rely on the protocol's established credibility. Furthermore, the protocol democratizes access to technology, enabling even small asset owners to leverage the benefits of tokenization, driving innovation and growth. Investors gain confidence, knowing their rights are protected without the need to analyze smart contracts, thereby enhancing trust and adoption.
The T-REX Token is central to this ecosystem. T-REX holders contribute to the ecosystem's growth and benefit from staking rewards and revenue-sharing models, fostering a collaborative and sustainable environment.
RWA Market Needs
From a Fragmented Market to a unified Framework
The Need for an Interoperable Ecosystem.
Tokenizing financial assets is a complex process due to the intricacies of both finance and blockchain technology. The financial industry involves numerous actors with distinct roles, and the complexity varies based on the type of securities, jurisdictions, and investor types. Additionally, blockchain technology, including smart contracts, is often misunderstood, leading to further complications.
Challenges in the Current Landscape:
Complexity in Finance and Blockchain: The intricate nature of finance and the technical complexities of blockchain make tokenization projects difficult to execute. This dual complexity results in lengthy legal and technical challenges.
Educational Gaps: There is a significant need for education to bridge the knowledge gap between traditional finance and blockchain technology.
Incompatibility of Traditional Systems: Most traditional financial systems are not equipped or compatible with blockchain technology. This incompatibility hinders seamless interaction and integration, further complicating the tokenization process.
Due to these challenges, current tokenization projects often lead to poor quality outcomes. These projects provide limited guarantees to investors and lack interoperability within the value chain, hindering seamless interactions between issuers, distributors, and on-chain applications.
Chains and DeFi Compatibility: Seamlessly integrates with any EVM chains and decentralized finance (DeFi) applications, opening new avenues for growth and innovation.
Key Features:
T-REX Ecosystem
T-REX token
Ecosystem Players
Merging TradFi with DeFi
T-REX operates as a Decentralized Autonomous Organization (DAO), an innovative structure that eliminates traditional shareholders. Instead, token holders become the beneficiaries of the T-REX ecosystem, placing power in the hands of the community.
T-REX Network manages a strategic treasury, allocating budgets to key initiatives such as the ERC3643 Association and various service providers. It also implements grant programs to stimulate the ecosystem, creating a dynamic environment where innovation and collaboration thrive.
The ERC3643 Association is a non-profit organisation consisting of around 140 select members.
These core contributors collaborate to develop open-source tools and solutions for the T-REX ecosystem, establish guidelines, and ensure the open-source protocol continually evolves.
The association's members are actively engaged in various projects, currently focusing on privacy, cross-chain compatibility, decentralized identity, data management, and innovative tools for token management and distribution. All outputs from these working groups and projects are published publicly and made available to the T-REX Ecosystem.
Vision
When standardization enables mass adoption.
Tokenizing financial assets is a complex process due to the intricacies of both finance and blockchain technology. The financial industry involves numerous actors with distinct roles, and the complexity varies based on the type of securities, jurisdictions, and investor types. Additionally, blockchain technology, including smart contracts, is often misunderstood, leading to further complications.
By standardizing with T-REX, we create a more efficient, interoperable, and trustworthy environment for financial asset tokenization, benefiting all stakeholders.
A coherent and interoperable ecosystem is essential for successful asset tokenization at scale. The T-REX protocol aims to provide this standardized framework, leveraging the ERC-3643 suite of smart contracts and the guidelines provided by the ERC3643 Association. By ensuring seamless interaction among all stakeholders, it reduces legal and technical hurdles and enhances the reliability of tokenized assets.
ERC3643 Association receives an annual budget in T-REX tokens from the T-REX DAO. These tokens serve to motivate members to actively contribute to protocol development.
T-REX Builders specialise in creating and operating products and services compatible with ERC-3643 tokens. They commit to:
Hold T-REX tokens to demonstrate commitment and alignment with official ERC-3643 tools.
Exclusively recognize ERC-3643 tokens issued via the official Token Factory.
Be interoperable and collaborate to create a cohesive and compatible ecosystem.
Discover the vetted Builders of the T-REX Ecosystem:
The T-REX ecosystem stands out by offering the most extensive selection of standardized tokenized assets, providing investors with unparalleled opportunities. By ensuring that assets are tokenized in full compliance and that smart contracts are robustly secure, T-REX instills confidence in investors. Moreover, the ecosystem processes data related to underlying assets in a standardized and certified manner on the blockchain, adding an extra layer of trust and transparency.
Investors within the T-REX ecosystem enjoy the convenience of reusing their on-chain identity across various assets, enhancing their investment experience. This cohesive and compatible environment creates compelling incentives for investors to join a thriving community focused on tokenized assets, driving growth and innovation in the space.
The T-REX DAO
ERC3643 Association
Builders
Community of Investors
A Unified RWA Framework
Standardization enables Mass Adoption
The Urgent Need for Standardization:
To overcome these challenges, market standardization is crucial. A standardized approach to tokenization would streamline the entire process, from issuance and lifecycle management to distribution. This would pave the way for the Great Transition, where most assets are digitized on the blockchain, leading to better management and enhanced liquidity.
Benefits of Standardizing the Ecosystem
Adopting a common framework like the T-REX ERC3643 protocol brings numerous advantages to the tokenization of financial assets, streamlining processes and enhancing efficiency.
Clear Roles and Execution:
Guidelines and Best Practices: All actors can efficiently execute their roles using established guidelines and best practices, building on the experiences of previous projects and following the official guidelines and solutions provided by the DAO.
Interoperability and Compatibility:
Single Integration: Service providers, including law firms, fund administrators, exchanges, and distributors, need only one integration to be compatible with all tokens, reducing technical burdens.
Seamless Interaction: Standardized smart contracts enhance interoperability across the value chain, promoting consistent and compatible interactions.
Audited Smart contracts: Using an audited and market-proven standard removes technical complexity, eliminating the need for extensive tech due diligence.
Time and Cost Efficiency: Significant savings in time and cost, as issuers, service providers, and investors can rely on the protocol's credibility and widespread use.
Technology Access: T-REX democratizes access to technology, enabling even small asset owners to leverage tokenization benefits, driving innovation and growth.
Investor Confidence: Investors gain assurance that their rights are protected without needing to analyze smart contracts, enhancing trust and adoption.
Roadmap
Clear and Ongoing Roadmap
2017-2025
Create and battle-test the token protocol with 140+ token issuers
Develop core building blocks: Smart contracts suite, APIs, web interfaces, add-ons
Validation with 20+ regulators in key financial jurisdictions
Create the largest RWA non-profit association: ERC3643.org
T-REX Ledger: Test net of the RWA Reference chain
Key partnerships with technology providers and asset servicers
Grant programs for Builders and RWA issuers
Builders solutions onboarding
Tokenization of 10T USD of assets
Reach 1M holders exposed to tokenized RWAs
T-REX Protocol
The market standard for compliant tokenization and on-chain distribution.
The ERC-3643 protocol - code name "T-REX" - is a sophisticated suite of audited smart contracts designed to streamline the tokenization of financial assets. It enables the seamless representation of assets, the data of their underlying assets (documents, price, rating, certifications, etc.), and the legal identification of various stakeholders on the blockchain. Additionally, it facilitates the tracking of all investment activities, including transactions, investments, and redemptions.
Multi-chain Protocol: The ERC-3643 protocol can be easily deployed and operated on any EVM-compatible blockchain, ensuring flexibility and broad applicability.
Efficient Token Issuance: Issuers can deploy tokens in a single transaction while setting compliance and distribution rules. This efficiency simplifies the issuance process and enhances control.
Data Enrichment: Tokens can be enriched with detailed data using embedded AssetID smart contracts, providing comprehensive information about the underlying assets on the blockchain. This feature enhances transparency, builds investor confidence, and enables advanced DeFi applications.
Identity Verification: Investors' identities are represented anonymously using verifiable credentials on the blockchain. This ensures compliance while maintaining the confidentiality of investor data. The protocol is using an open DID framework compatible with all KYC solutions and agents.
Compliance Modules: Additional compliance modules can be linked to the RWA tokens to enforce regulatory requirements directly on-chain. This ensures that all transactions adhere to predefined rules. Most of the time, these compliance modules are used to enforce offering rules, applicable to all investors.
Centralized Registry: The protocol establishes a centralized but confidential registry on the blockchain, managed by the issuer or authorized agents (Transfer agent, CSD, etc.). This registry serves as a single, transparent source of truth accessible to all distributors and applications, reducing the need for off-chain reconciliation.
Automated Operations: Rules for managing and transferring tokens are applied automatically and in real-time on the blockchain. This automation enhances efficiency and reduces the risk of errors.
DeFi Compatibility: Assets tokenized using ERC-3643 are compatible with all decentralized finance (DeFi) applications, opening new opportunities for growth and innovation.
Learn more about the T-REX protocol:
Read the official documentation from the ERC3643 Association:
ERC-3643 enables the creation of a token-centric economy by providing a robust framework for asset tokenization. Its comprehensive features ensure compliance, enhance transparency, and streamline operations, making it an ideal solution for modern financial asset management.
DINO Primary
Dino Primary is the primary market rail of the T-REX ecosystem.
It is a shared smart contract, deployed on the , that standardizes how investors:
Subscribe to new ERC-3643 (T-REX) tokens, and
Redeem those tokens back to the issuer,
with instant onchain settlement, compliance checks, and a configurable rule set controlled by the issuer and its delegates.
Compliant by design
T-REX Ledger is the first institutional-grade settlement infrastructure where compliance is not a feature, it is the substrate. T-REX provides a "compliance brain" that operates across every layer.
Unlike general-purpose blockchains that rely on simple wallet whitelisting, T-REX enforces compliance directly within the smart contract logic of the asset thanks to the T-REX Protocol (ERC-3643).
Embedded KYC/AML: Every transfer triggers a real-time check against the OnchainID identity registry.
Modular Rule Engine: Issuers can program specific restrictions based on jurisdiction, investor type (e.g., Accredited vs. Qualified), holding periods, etc.
T-REX Apps
Official Solutions and Add-ons to the ERC-3643 smart contracts
On-chain factories are official and ready-to-use smart contracts provided to the T-REX community.
The T-REX network provides a token factory in accordance with the guidelines set by the ERC-3643 Association. These smart contracts, already available on numerous EVM-compatible blockchains, enable the deployment of Real-World Asset (RWA) tokens with just a few clicks, eliminating technical complexities and ensuring that the tokens are secure.
The factory utilizes the latest, audited version of the ERC-3643 protocol. All tokens deployed through these official on-chain factories receive a claim in their assetID, verifying their origin and compliance with the ERC3643 Association's guidelines. This approach ensures that users can confidently deploy tokens that meet the highest standards of security and compliance, streamlining the tokenization process.
The network also provides a factory for on-chain identities, known as onchainIDs, which are integral to the ERC-3643 protocol. These identities, represented as smart contracts on the blockchain, enable the identification of various stakeholders within the ecosystem (issuers, agents, investors, regulators). The open model of this decentralized identity system ensures compatibility with any identification solutions that support digital signatures. Coded in Solidity, these smart contracts are accessible on the same EVM-compatible blockchains as the token factory, facilitating seamless integration and interoperability across the network.
Reduced Complexity:
Accessibility and Trust:
Release of the T-REX Factory dApp
Release of the OnchainID dApp
Release of the AssetID dApp
Release of the DINO Primary dApp
Release of the DINO Secondary dApp
Partnerships with Exchanges
T-REX Token launch
T-REX Ledger: Main net of the RWA Reference chain
2026
2026-2035
The "Golden Record": The T-REX Ledger maintains the definitive book of record for ownership, ensuring that even when assets move cross-chain, the compliance rules remain intact and non-bypassable.
The T-REX Ledger is powered by a production-grade OP Stack deployment, managed via a professional team to ensure institutional-grade reliability and security.
Institutional PoA Consortium: The network is operated by a consortium of regulated financial institutions and Tier-1 Web3 corporates who serve as Proof-of-Authority (PoA) validators, co-signing key network events.
Sequencer-Level Screening: Compliance starts at the gateway. The sequencer will include OFAC-configurable ingress screening and AI-powered detection to identify and block suspicious behaviors or known bad actors before they reach the execution layer.
Guardian Role: To mitigate critical security incidents, T-REX authorized engineers hold a "Guardian" role, providing the ability to pause L1 withdrawals in the event of a vulnerability or hack.
Compliance extends to the tools and services interacting with the ledger. The T-REX AppStore is a gated ecosystem.
Vetted Providers: Only "Institutional Grade" providers who pass the T-REX Committee's five-dimensional vetting process (Utility, Business Model, Security, Compliance, and Reliability) are listed.
Verified Badge: Approved applications receive the "T-REX Certified" badge, ensuring they meet global securities regulations and technical standards.
Non-Circumvention: Providers are legally bound to maintain high SLAs and strict data protection standards (GDPR/PIPA).
T-REX is structured to provide legal certainty for the world's largest asset managers.
Bermuda DABA License (pending approval): The network operator (Digital Asset Operational Services ISAC Ltd.) is seeking a Digital Asset Business Act (DABA) license from the Bermuda Monetary Authority (BMA), covering issuance, custody, and exchange operations.
MiCA Compliance: We are filing a MiCA whitepaper in the EU to ensure the upcoming utility token is compliant for admission to trading across the European Union.
Clear classification: The utility token will be strictly a utility token for gas, governance, and service credits, separate from the security tokens it settles.
Permissioned Settlements: We are currently evaluating the integration of permissioned stablecoins and native cash legs like USD1 to ensure the entire transaction lifecycle, from gas to settlement, remains within a regulated perimeter.
Through our partnership with Zama, T-REX will offer optional Fully Homomorphic Encryption (FHE).
Confidential Transfers: Institutions can keep balances and transaction details encrypted while still allowing smart contracts to perform compliance checks.
Programmable Decryption: Regulators can be granted "view keys" for specific data, enabling oversight without exposing sensitive commercial information to the public.
1. Token-Level Enforcement (ERC-3643)
2. Infrastructure & Sequencer Security
3. Curated AppStore Excellence
4. Regulatory & Legal Framework
5. Privacy without Anonymity
Tokens issued by the token factory include an assetID by default, which operates on the same principles as self-sovereign identities. These assetIDs represent the underlying assets of the tokens and allow for data enrichment. For example, they can include details such as the issuer's Legal Entity Identifier (LEI), the financial instrument's International Securities Identification Number (ISIN), the token's Digital Token Identifier (DTI), the token's price (Net Asset Value), ratings and even legal documents.
This information can be signed and certified, either by the issuer or authorized third parties, such as regulators or auditors, ensuring the data's authenticity. These smart contracts, coded in Solidity, are accessible on the same EVM-compatible blockchains as the token factory, facilitating seamless integration and data verification.
A complete, secure and scalable set of APIs to interact with ERC-3643 tokens and the T-REX ecosystem.
A turnkey white-label platform to onboard RWA investors, collect their investments, manage portfolio, and access applications compatible with the T-REX ecosystem.
A simple and free decentralized application to verify claims on asset identities.
A simple and free decentralized application to verify claims on stakeholders' identities (Investors, issuers, agents, regulators).
An example of decentralized application connected to the DINO primary market distribution network for compliant security tokens and RWAs.
An example of decentralized application connected to the DINO secondary liquidity network for compliant security tokens and RWAs.
A permissioned cash coin made available to the RWA ecosystem. It relies on the T-REX on-chain identities to track and guarantee ownership. It is pegged by a selection of stablecoins available on the market.
The Builders applications have been thoroughly assessed for their compatibility and suitability with the ecosystem before being made available.
You are interested in providing your solutions to the T-REX ecosystem? Contact us: contact@t-rex.network
On-chain Factories
Token deployments
Self-sovereign identities
Asset identities
Applications already selected
T-REX Engine - âś… LIVE
T-REX Platform - âś… LIVE
AssetID dApp - 🏗️ Q4 2025
OnchainID dApp- 🏗️ Q4 2025
DINO Primary dApp - 🏗️ Q1 2026
DINO Secondary dApp - 🏗️ Q1 2026
T-REX Cash - 🏗️ Q2 2026
Call for Builders
Instead of each issuer building its own bespoke subscription and redemption logic, Dino Primary provides a common infrastructure layer that any issuer, distributor, broker-dealer or dApp can reuse.
Standardized subscription & redemption flows
Unified logic across all Dino-enabled ERC-3643 tokens, with instant settlement onchain.
Multiple payment tokens
Issuers can accept several payment tokens (e.g. stablecoins and non-stable tokens) and configure them per asset.
Price oracle integration
Dino Primary plugs into price feeds so the contract can compute how many asset tokens correspond to a given payment amount.
Per-asset rule configuration
Issuers (or their admins) can configure:
Subscription and redemption open/close
Minimum and maximum amounts
Accepted payment tokens
Built-in compliance
Dino Primary is designed for tokens following the ERC-3643 standard. It relies on the Identity Registry and token compliance modules to ensure that only verified and eligible investors can subscribe or redeem.
Shared infrastructure on the T-REX Ledger
All participants — issuers, distributors, platforms, and investors — share the same contract infrastructure, making integrations repeatable and interoperable.
At a conceptual level, Dino Primary involves:
Issuer / Issuer Safe
The party responsible for the asset and the wallet that receives subscription proceeds and pays redemptions.
Investors
Wallets holding ERC-3643 tokens (or subscribing for them) that are verified and compliant.
Distributors / Platforms / dApps
Front-ends integrating with Dino Primary to offer “Invest” and “Redeem” experiences to end-users.
Dino Primary Contract
The onchain logic handling subscriptions and redemptions, enforcing rules, collecting ecosystem fees, and talking to the ERC-3643 token.
Under the hood, Dino Primary uses an AccessManager with separate roles (e.g. admin, token manager, rules manager) so issuers can clearly separate:
Who can configure payment tokens,
Who can adjust subscription/redemption rules,
Who can manage overall administration.
Details of these roles and functions are covered in the Dino Primary – Admin & Management subpage.
A subscription is when an investor buys ERC-3643 tokens from the issuer, paying with an approved payment token.
High-level flow:
Configuration by the issuer
The issuer (or its delegates) configures:
Subscription open/close status,
Min/max subscription amounts,
Accepted payment tokens and their price feeds.
Investor eligibility
The investor must:
Be registered in the Identity Registry (ONCHAINID linked to their wallet),
Investor action
The investor approves the payment token (e.g. stablecoin) for Dino Primary.
The investor calls the subscribe(amount, paymentToken) function via a dApp or platform.
On-chain processing
Dino Primary:
Verifies that subscriptions are open and within configured limits.
Settlement & logging
The transaction settles atomically on-chain.
A Subscribed event is emitted with the relevant details for off-chain systems.
From a front-end perspective, this is typically surfaced as a simple “Invest” button with fields for amount and payment token, while all compliance and settlement logic happens within Dino Primary and the ERC-3643 token.
A redemption is when an investor sells their ERC-3643 tokens back to the issuer under pre-defined rules.
High-level flow:
Configuration by the issuer
The issuer configures:
Whether redemptions are open,
Min/max redemption amounts,
Accepted payment tokens,
Optional malus (a penalty or haircut on the redemption price).
Investor eligibility
As with subscriptions, the investor must remain compliant and verified under ERC-3643 rules.
Investor action
Optional – The investor approves the asset token (ERC-3643) for Dino Primary – only applicable if Preminted treasury where the tokens need to be transferred back to the Issuer.
The investor calls redeem(amount, paymentToken) via a dApp.
Onchain processing
Dino Primary:
Verifies that redemptions are open and limits are respected.
Settlement & logging
The transaction settles atomically.
A Redeemed event is emitted with all key parameters.
From the end-user perspective, this is usually exposed as a “Redeem” or “Sell back to issuer” action with clear display of applicable rules and any malus.
Dino Primary supports:
Stable payment tokens
Tokens considered stable against the reference asset (e.g. USD), where pricing can be treated as 1:1 or based on simple rules.
Non-stable payment tokens
Tokens whose value fluctuates (e.g. other cryptocurrencies). For these, Dino Primary integrates with a price oracle implementing AggregatorV3Interface configured per payment token.
This allows issuers to:
Offer subscriptions/redemptions in several currencies or tokens.
Keep the asset priced in one reference unit (e.g. NAV in USD) while accepting payments in different tokens.
The configuration and management of payment tokens is described in the Dino Primary – Admin & Management subpage.
Dino Primary is designed to work with ERC-3643 permissioned tokens:
Every investor wallet is linked to an ONCHAINID in the Identity Registry.
When a subscription or redemption is attempted, Dino Primary:
Calls into the ERC-3643 token / Identity Registry to confirm:
The investor is registered and eligible.
The transfer or burn/mint operation is allowed by compliance rules.
Executes the token transfer or burn/mint only if all checks pass.
This ensures that every primary market operation is compliance-aware by design, not just at the UI layer.
Typical integration steps for a platform building on Dino Primary:
Discovery
Fetch Dino Primary configuration for a given token:
Subscription and redemption status.
Min/max amounts.
Accepted payment tokens and, where useful, their price feeds.
Pre-checks
Check that:
The investor is onboarded and linked to an ONCHAINID.
User flows
For subscriptions:
Guide user to approve the payment token.
Post-trade processing
Listen to Subscribed / Redeemed events to:
Update portfolio views,
Because Dino Primary is a shared contract on the T-REX Ledger, the same integration can be reused across multiple assets, issuers, and distribution channels.
For more detailed and technical information, see the subpages:
These pages are where you can expose the content from your existing DinoPrimary.md and the actual contract interface, while keeping this page focused on the conceptual behavior and business logic.
Dino is the onchain distribution and market infrastructure of the T-REX ecosystem. It provides a shared set of smart contracts that any issuer, distributor, broker-dealer, or dApp builder can plug into to distribute and trade ERC-3643 (T-REX) tokens.
Instead of every project deploying its own isolated subscription forms and OTC order books, Dino runs on a shared infrastructure (the T-REX Ledger). This turns fragmented primary and secondary flows into a common liquidity pool, where all participants benefit from the same rails and network effects.
At a high level, Dino provides three building blocks:
DinoFactory – Deploys and wires Dino contracts (Primary & Secondary) for a given ERC-3643 token, with standardized roles, fees, and permissions.
T-REX Engine
The Enterprise-grade ERC-3643 API
To fully leverage the capabilities of the ERC3643 protocol, an API called the T-REX Engine is introduced. This API serves as a crucial interface for interacting with the Solidity smart contracts that underpin the protocol, offering several key advantages:
The T-REX Engine API simplifies the integration process with the ERC-3643 protocol, making it accessible for both modern frontends and legacy systems used by financial institutions. By providing a standardized way to interact with the smart contracts, the API enables seamless integration, reducing the technical barriers associated with blockchain adoption.
The API facilitates data access, allowing users to retrieve comprehensive information about transactions, stakeholder activities, asset data, and token lifecycle events. This transparency is essential for monitoring and managing assets within the ERC-3643 ecosystem, ensuring that all stakeholders have a clear view of ongoing activities.
The T-REX Engine API supports the entire lifecycle of tokenized assets, from issuance to distribution and management. It provides functions to trigger smart contract operations, enabling users to manage tokens efficiently and securely. This comprehensive support ensures that all aspects of token management are covered, from creation to redemption.
Optional malus / haircut on redemptions
Referral fees for distributors
Pass the usual ERC-3643 compliance checks (jurisdiction, investor type, etc.).
Verifies the investor’s eligibility and token compliance.
Transfers the payment token to the issuer’s safe address.
Allocates the ERC-3643 tokens to the investor using one of two approaches:
Preminted treasury: tokens are transferred from the issuer’s treasury wallet.
On-the-fly mint: tokens are minted directly to the investor (Dino Primary acts as a minter agent of the token).
Re-checks investor eligibility and compliance.
Handles the ERC-3643 tokens using one of two approaches:
Preminted treasury: tokens are transferred back to the issuer’s treasury.
Burning: tokens are burned from the investor (Dino Primary acts as an agent with burn permissions).
Calculates the payment amount, optionally applying a malus if configured.
Transfers the payment token from the issuer’s safe address to the investor.
The wallet is approved in the relevant Identity Registry.
The transaction respects compliance rules defined at ERC-3643 level (call canTransfer(address from, address to, uint256 amount) on the compliance contract).
Any off-chain checks (e.g. investor questionnaire) are completed.
Call subscribe(amount, paymentToken) and track the emitted event.
For redemptions:
Guide user to approve the asset token (only if Preminted treasury).
Call redeem(amount, paymentToken) and track the emitted event.
Trigger reporting,
Synchronize with off-chain systems (e.g. transfer agent, fund admin, custodians).
DinoPrimary – Handles onchain subscription and redemption flows for T-REX tokens in the primary market (investors subscribing to new tokens or redeeming them with the issuer).
DinoSecondary – Handles onchain trading intents in the secondary market (investors posting offers to buy or sell existing T-REX tokens).
Together, they form a single onchain venue where compliant primary flows and secondary trading can coexist for any ERC-3643 token connected to the T-REX Ledger.
DinoPrimary is the primary market layer for T-REX tokens:
Issuers (or their distributors) can open subscription windows and let qualified investors subscribe onchain using approved payment tokens (e.g. stablecoins).
The same rail can be used for redemptions, allowing investors to sell tokens back to the issuer under predefined rules.
All flows are compliance-aware, leveraging the ERC-3643 identity and eligibility checks (Identity Registry, ONCHAINID, etc.).
For the user, this can look like a simple “Invest” / “Redeem” button in a dApp or platform UI. Under the hood, all issuers use the same DinoPrimary infrastructure, which:
Standardizes subscription and redemption logic.
Applies ecosystem fees in a predictable way.
Ensures that investor qualification and token compliance are enforced at the contract level.
The result: repeatable, interoperable primary flows for any compliant RWA, instead of one-off bespoke implementations per issuer.
DinoSecondary is the secondary market layer:
Investors can publish offers (intents) to buy or sell a given T-REX token against another token (typically a payment token).
Other participants can take those offers, fully or partially, enabling peer-to-peer trading.
Offers are managed onchain with expiry, pruning, and compliance checks built in.
Because DinoSecondary is shared:
Any broker-dealer, platform, or dApp can plug into the same pool of offers.
Liquidity doesn’t get siloed inside a single interface, it’s aggregated at the contract level.
The same fee and compliance framework applies to all trades, simplifying integrations.
This creates a common secondary liquidity network for ERC-3643 tokens, rather than fragmented OTC channels scattered across different systems.
Dino contracts are deployed on the T-REX Ledger, which acts as the reference chain for compliance and market infrastructure across the ecosystem.
Because DinoPrimary and DinoSecondary are shared contracts on this common ledger:
Any compliant ERC-3643 token can attach to the same primary and secondary rails via the DinoFactory.
Distributors, broker-dealers, custodians, and platforms can integrate once and access all Dino-enabled tokens.
New apps (e.g. white-label platforms, bespoke institutional portals, wallets, or aggregators) can reuse the same contracts and liquidity instead of rebuilding their own infrastructure.
In other words, Dino is not a single app, it is the onchain market layer that all T-REX-compatible apps can build on.
Dino is designed to be used by:
Issuers & Fund Managers
Use DinoPrimary to run compliant onchain subscriptions and redemptions for their RWA programs.
Distributors, Broker-Dealers & Market Operators
Plug into DinoPrimary and DinoSecondary to distribute products and provide liquidity without reinventing the rails.
Platforms & dApp Builders
Build investor-facing experiences on top of shared infrastructure, benefiting from common standards, fees, and compliance behavior.
Investors
Interact through any connected dApp to subscribe, redeem, and trade T-REX tokens, while always benefiting from the same underlying onchain logic.
Within the broader T-REX ecosystem:
T-REX Engine exposes APIs to interact programmatically with Dino contracts.
T-REX Platform and dedicated dApps (DINO Primary dApp, DINO Secondary dApp) provide investor-facing UIs on top of these contracts.
Dino itself is the neutral, shared smart contract layer that all of these applications use for distribution and trading.
The detailed mechanics of primary subscriptions/redemptions and secondary offers/trades are described on the next pages:
Running on the T-REX Ledger: Shared Infrastructure by Design
Who Is Dino For?
Dino in the T-REX Apps Stack
Commercial Service
The API is secured, audited, and even certified with SOC2 Type 2 certification, ensuring that it meets the highest standards of security and compliance. This certification provides assurance to users, particularly financial institutions, that the API adheres to stringent security protocols, protecting sensitive data and transactions.
The T-REX Engine is a commercial service provided by , offering a direct and efficient way to access the T-REX network. While not mandatory, using the API can significantly accelerate projects by saving months or even years of development time. It provides a robust and reliable framework for interacting with the ERC-3643 protocol, enabling projects to focus on their core business objectives rather than technical integration challenges.
Streamlining interaction with ERC-3643
Facilitating Integration:
Enhancing Data Access:
Lifecycle Management:
Security and Compliance:
Commercial Service:
ERC-3643 protocol
The sole EVM Standard for Security tokens and RWAs
Learning center
Official Documentation
Access the main documentation of the ERC-3643 token protocol. Discover how compliance and controls are applied on-chain for RWAs:
Official Github
Deep dive in the token protocol and access the suite of tools and experimentations made by the ERC3643.org non-profit association:
Whitepaper of the Protocol
Read the original T-REX Whitepaper and discover why the T-REX protocol is a game changer technology for finance:
Tokeny.com
Admin & Management
This page explains how to operate and configure the Dino Primary contract:
How access control works (roles & responsibilities)
Which functions are available to admins, token managers, and rules managers
How payment tokens, subscription windows, redemption windows and malus are configured
How fees and events fit into the operational model
For Solidity interfaces, function signatures, and low-level integration details, see the
Dino Primary uses to enforce fine-grained permissions.
Instead of hard-coding onlyOwner logic, each mutating function is protected by AccessManager, which checks whether the caller has the appropriate role before allowing execution.
Dino Primary defines three logical roles:
Role
Value
Description
Typical Holder(s)
Roles are not granted directly by Dino Primary itself. Instead:
Dino Primary is deployed and initialized with the address of an AccessManager contract.
That AccessManager is responsible for:
Attaching permissions to each Dino Primary function selector
Typical pattern:
The Token Owner is set as admin of the AccessManager.
The Token Owner then assigns:
ADMIN_ROLE to the issuer’s main treasury or governance multisig;
Holders of ADMIN_ROLE can manage core configuration of Dino Primary.
Setting
Function
Role
Description
The issuer safe is the central wallet used for:
Subscriptions: subscription proceeds (payment tokens) are sent to this address.
Redemptions: redemption payments (payment tokens) are paid from this address.
Changing the issuer safe:
Does not affect past transactions,
But all future fund flows will use the new address.
The preminted flag indicates how the ERC-3643 token supply is handled:
preminted = true
The issuer has already minted a supply of tokens into a treasury address.
Dino Primary will transfer tokens from that treasury to investors on subscription, and back to treasury on redemption.
Holders of TOKEN_MANAGER_ROLE configure which payment tokens can be used for subscriptions and redemptions, and how they are priced.
Dino Primary exposes three management functions:
Setting
Function
Role
Description
Each payment token is associated with:
token – ERC-20 address of the payment token;
priceFeed – an oracle contract implementing the ;
isStable – boolean indicating whether the token is considered stable vs the pricing currency used for the asset (e.g. NAV in USD).
Only add payment tokens that:
Have reliable liquidity and oracle feeds;
Are supported by your compliance / risk policies.
Holders of RULES_MANAGER_ROLE configure when subscriptions/redemptions are allowed and within which limits, plus the malus applied on redemption.
Subscription rules are updated via:
Setting
Function
Role
Description
Parameters:
dateOpened – timestamp when subscriptions become possible;
dateClosed – optional timestamp when subscriptions end (0 may mean “no end”);
minAmount
Subscriptions are only accepted when:
dateOpened <= block.timestamp, and
dateClosed == 0orblock.timestamp <= dateClosed, and
minAmount <= amount <= maxAmount
Redemption rules are updated via:
Setting
Function
Role
Description
Parameters mirror subscription rules, with one extra field:
redemptionMalus – a basis point value (e.g. 100 = 1%, 500 = 5%) representing a haircut applied to redemption amounts.
When investors redeem:
Dino Primary computes the gross amount owed based on the asset price and quantity.
It applies the malus:
Malus amount = grossAmount * malusBps / 10_000;
This allows the issuer to model:
Exit penalties,
Early redemption haircuts,
Liquidity management fees.
Dino Primary integrates with the T-REX Ecosystem Fee Collector to charge protocol-level fees on top of the asset economics.
Per design, Dino Primary applies multipliers on a base ecosystem fee:
Operation
Fee Multiplier
Description
The base fee, fee token, and recipient are managed by the ecosystem fee collector, not by the Dino Primary contract itself.
Dino Primary emits events for all important administrative and economic actions. These can be indexed by back-office systems, analytics, and monitoring tools.
Event
Description
Event
Description
Each Subscribed / Redeemed event contains the nonce, investor, amounts and payment token, allowing:
Portfolio reconstruction,
Regulatory reporting,
Reconciliation with off-chain systems (fund admin, custodian, TA, etc.).
Inherited from the AccessManaged / AccessManager system:
Event
Description
Putting it all together, a typical lifecycle for a new asset is:
Assigning roles to actual addresses (EOAs, multisigs, other contracts).
TOKEN_MANAGER_ROLE to treasury/ops;
RULES_MANAGER_ROLE to the team in charge of product / risk / compliance.
ADMIN_ROLE
Sets whether the asset is preminted or not.
preminted = false
Token supply is minted on demand.
Dino Primary acts as an authorized agent on the ERC-3643 token and:
Mints new tokens directly to the investor on subscription;
Burns tokens from the investor on redemption.
TOKEN_MANAGER_ROLE
Deregisters a payment token (no longer accepted for new flows).
Update Payment Token
updatePaymentToken
TOKEN_MANAGER_ROLE
Updates price feed and/or stability status of an existing payment token.
Removing a payment token:
Does not affect past subscriptions/redemptions,
But prevents new operations using that token.
Updating a price feed is sensitive:
Always ensure the feed address is correct and from a trusted oracle provider;
Consider multi-sig confirmation or governance procedures for changes.
– minimum amount of ERC-3643 tokens that an investor can subscribe in a single transaction;
maxAmount – maximum amount of ERC-3643 tokens that an investor can subscribe in a single transaction.
.
Net paid to investor = grossAmount - malusAmount.
Approved the fee token for the ecosystem fee collector;
Sufficient fee token balance.
PaymentTokenRemoved
Emitted when a payment token is removed.
PaymentTokenUpdated
Emitted when a payment token’s feed/stability is updated.
SubscriptionRulesUpdated
Emitted when subscription rules are changed.
RedemptionRulesUpdated
Emitted when redemption rules / malus are changed.
Initial issuer safe,
preminted flag,
AccessManager address,
Ecosystem fee collector.
Role Assignment
AccessManager admin assigns:
ADMIN_ROLE to issuer governance / treasury,
TOKEN_MANAGER_ROLE to treasury/ops,
RULES_MANAGER_ROLE to risk/product/compliance.
Payment Token Setup
TOKEN_MANAGER_ROLE adds one or more payment tokens (USD1, USDC, etc.) with price feeds.
Rule Setup
RULES_MANAGER_ROLE sets initial subscription and redemption rules (dates, min/max, malus).
Operation
Investors subscribe and redeem via connected dApps/platforms.
Ops teams can adjust rules, add/remove payment tokens, and eventually update issuer safe if needed.
Monitoring
Back-office systems listen to events to track configuration changes and investor activity.
ADMIN_ROLE
0
Global administrative role
Issuer Safe / Issuer Ops / Governance Safe
TOKEN_MANAGER_ROLE
Issuer Safe
updateIssuerSafe
ADMIN_ROLE
Updates the address receiving subscription proceeds and paying redemptions.
Preminted Status
Add Payment Token
addPaymentToken
TOKEN_MANAGER_ROLE
Registers a new payment token with its price feed and stability flag.
Remove Payment Token
Subscription Rules
updateSubscriptionRules
RULES_MANAGER_ROLE
Sets subscription period and amount limits.
Redemption Rules
updateRedemptionRules
RULES_MANAGER_ROLE
Sets redemption period, amount limits, and redemption malus percentage.
Subscribe
3x base fee
Fee charged on each subscription transaction
Redeem
3x base fee
Fee charged on each redemption transaction
IssuerSafeUpdated
Emitted when the issuer safe address is changed.
PremintedUpdated
Emitted when the preminted status is updated.
PaymentTokenAdded
Emitted when a new payment token is added.
Subscribed
Emitted on every successful subscription.
Redeemed
Emitted on every successful redemption.
AuthorityUpdated
Emitted when the AccessManager controlling Dino Primary is updated.
Access Control System
Roles
The numeric values (0, 1, 2, …) are configured in the AccessManager contract. Dino Primary only checks that the caller is authorized for a given function via its restricted modifier; it is the AccessManager that maps accounts to roles.
How Roles Are Granted
In practice, you usually want:
A multisig (e.g. Safe) to hold ADMIN_ROLE;
One or more dedicated ops / treasury addresses to hold TOKEN_MANAGER_ROLE;
A separated address (or multisig) for RULES_MANAGER_ROLE to keep configuration changes auditable and controlled.
Admin Management Settings (ADMIN_ROLE)
Core Admin Functions
Issuer Safe
Make sure the new issuer safe:
Is under appropriate control (e.g. issuer’s treasury multisig),
Holds enough balance of each payment token to fulfil redemptions,
Is properly set up so that the DinoPrimary contract has an allowance to transfer payment tokens out of the issuer safe address for paying redemptions.
Is properly integrated with your off-chain bookkeeping and reporting.
Preminted vs Non-Preminted Mode
The choice between preminted / non-preminted is defined at product design level. Changing it mid-life is a sensitive operation and should be aligned with your token economics and legal documentation.
Token Manager Settings (TOKEN_MANAGER_ROLE)
Payment Token Management
For stable tokens (e.g. fully backed USD stablecoins), the price feed may be trivial (1:1) or reflect a tight peg.
For non-stable tokens (e.g. volatile crypto), Dino Primary uses the price feed to compute how many asset tokens correspond to a given payment amount.
Operational Guidelines
Rules Manager Settings (RULES_MANAGER_ROLE)
Subscription Rules
You can use minAmount / maxAmount to enforce ticket size policies (e.g. minimum investment amount or tranche-specific caps). It can be combined with specific Compliance Modules on the ERC-3643 token to limit volumes on a time basis or holdings per investor for example.
Redemption Rules & Malus
Any change to redemption rules (especially malus) should be clearly disclosed to investors and reflected in legal / regulatory documentation.
Fee System
Operation Fees
Fee Collection Flow
Issuers do not configure fee amounts inside Dino Primary. They only need to ensure users are aware of the ecosystem fee and that the fee set at the protocol level is acceptable for their use case.
A fee abstraction layer can be used to allow users to pay the ecosystem fees with any payment token for more convenience and reduced user friction.
Events & Monitoring
Admin / Config Events
Economic Events
AccessManaged Events
In production, you should index at least: IssuerSafeUpdated, PaymentToken*, SubscriptionRulesUpdated, RedemptionRulesUpdated, Subscribed, and Redeemed. This makes it easy to audit configuration changes and reconstruct investor activity.
140+ Selected Members. Large FIs, Web3 players and global law firms
Share liquidity across multiple platforms and dApps, instead of fragmenting it into isolated OTC channels
Every offer is created and settled directly onchain, with:
Built-in compliance integration for ERC-3643
Freezing of RWA tokens instead of moving them to escrow which helps maintain the integrity of the onchain cap tables at all times
Configurable fee mechanisms for both the ecosystem and the asset issuer/operator
Dino Secondary is not a single UI. It is the neutral onchain marketplace layer that any T-REX-compatible application can plug into.
Offer creation – Any investor or participant can publish an offer expressing their intent to:
Sell an ERC-3643 token for another token (e.g. stablecoin), or
Buy an ERC-3643 token by offering another token.
Flexibility – Offers specify:
The token being offered (tokenOut)
The token requested (tokenIn)
The respective amounts
Offers can be partially filled multiple times until:
Fully filled
Cancelled by the creator
Pruned after expiry or if conditions are no longer met
The contract tracks:
Total offered amount
Filled amount
Remaining amount
Dino Secondary supports two ways to handle the asset vs payment tokens:
Freeze mode for ERC-3643 tokens
When the offer is selling the ERC-3643 token:
The RWA tokens remain in the seller’s wallet
They are frozen using the ERC-3643 token’s built-in freeze mechanism
When the offer (or part of it) is taken, the relevant amount is unfrozen and transferred
Escrow mode for standard ERC-20 tokens
When the offer is selling a non-ERC-3643 token:
Tokens are transferred to the Dino Secondary contract on offer creation
They stay in escrow until the offer is taken, cancelled, or pruned
This design ensures:
RWA tokens remain tightly coupled with their identity/compliance logic
Standard ERC-20s are handled with a classic escrow pattern
Dino Secondary is built for ERC-3643 tokens:
At least one leg of every trade must involve the configured ERC-3643 token for this Dino Secondary instance.
Transfers of that token are subject to the token’s existing compliance rules:
Identity registry checks
Eligibility / jurisdiction rules
Freeze/unfreeze controls
If a transfer would violate compliance, the trade simply cannot be executed.
All offers for a given ERC-3643 token are stored in the same contract instance on the T-REX Ledger. That means:
Any dApp, broker-dealer, or platform integrating Dino Secondary taps into the same pool of offers.
Liquidity is aggregated at the contract level, not at the UI level.
New interfaces can appear (white-label platforms, wallets, institutional portals, aggregators) and immediately see and use the existing offer book.
At a conceptual level, Dino Secondary involves:
Offer Creators (Makers)
Investors or institutions who post offers to buy or sell the ERC-3643 token.
Offer Takers
Counterparties who accept offers (fully or partially), triggering settlement.
Issuers / Operators
Entities responsible for the ERC-3643 token and the market around it. They benefit from shared liquidity and may configure fees and operational parameters.
Platforms & dApps
Any interface building on top of Dino Secondary: broker portals, investor dashboards, wallet integrations, etc.
Dino Secondary Contract
The on-chain engine:
Stores & updates offers
Manages freezing / escrow of tokens
Enforces expiry and pruning
At the admin level, the contract uses an AccessManager with roles (such as ADMIN_ROLE and FEE_MANAGER_ROLE) to control pausing and fee configuration. Those details are described on the Admin & Management page.
A maker:
Chooses:
Which token they are offering (tokenOut)
Which token they want in return (tokenIn)
Amounts and expiry
Calls createOffer(...) via their preferred dApp or platform.
Under the hood:
If tokenOut is the ERC-3643 token:
Dino Secondary checks that the maker’s free (unfrozen) balance is sufficient
Freezes the offered amount in the maker’s wallet
If tokenOut is a standard ERC-20:
Transfers the offered amount into escrow (the Dino Secondary contract)
Records the offer in storage and emits an OfferCreated event
Charges the relevant ecosystem fee for offer creation
A taker:
Selects an offer and decides how much to take (can be partial).
Approves the appropriate token if needed (e.g. payment token).
Calls takeOffer(offerID, amount).
Dino Secondary:
Validates the offer is still active and not expired
If the offer is no longer valid, it is automatically pruned and cannot be taken.
Computes the corresponding counter-amount using the offer’s price ratio.
Executes settlements:
Unfreezing & transfer when selling ERC-3643
Escrow release when selling standard ERC-20
Transfers the requested token from taker to maker
Applies volume-based fees and any configured fixed fees.
Updates the offer’s filled amount and marks it:
Partially filled (still active with reduced remaining size), or
Filled (fully executed and closed)
Emits events (partially filled / filled) and charges ecosystem fees.
Makers can cancel their own active offers:
Call cancelOffer(offerID).
Dino Secondary:
Unfreezes ERC-3643 tokens or releases escrow as needed
Marks the offer as Cancelled
Emits OfferCancelled and charges the ecosystem fee for cancellation
Any address can trigger pruning via pruneOffer(offerID):
If the offer:
Has expired, or
Is underfunded (e.g. maker moved their frozen tokens away or no longer has enough balance)
Then:
Dino Secondary releases any frozen/escrowed tokens
Marks the offer as Expired
Emits OfferPruned
Pruning prevents stale or unsafe offers from being executed and keeps the active offer set clean.
Dino Secondary is designed to align with all compliance guarantees of ERC-3643:
Dino Secondary always interacts with the token using its standard interfaces, which means:
If a transfer would violate compliance, the token reverts and the trade cannot be settled.
Freeze/unfreeze operations respect existing identity and permission structures.
As a result, secondary market activity remains fully compliant with the same rules as primary issuance and transfers.
Dino Secondary supports multiple fee layers:
T-REX Ecosystem Fees
Collected via the shared Ecosystem Fee Collector, with different multipliers depending on the operation (offer creation, taking, cancellation).
Asset / Market-Level Fees
Configurable by authorized operators (via the FEE_MANAGER_ROLE), including:
A fixed fee per trade
A volume-based fee (percentage) capped to protect users
Details on how to configure, calculate, and monitor these fees are covered in the Admin & Management page.
A typical integration with Dino Secondary follows these steps:
Discovery & Display
Query the list of open offers for a given ERC-3643 token.
Display:
Maker, price, remaining size, expiry, direction (buy/sell).
Offer Creation (Maker UI)
Provide a form where users choose:
Sell token / buy token
Offer Taking (Taker UI)
Allow users to:
Select any open offer
Offer Management
Expose “My Offers” view:
List of user-created offers
Because Dino Secondary is shared infrastructure on the T-REX Ledger, one integration lets your platform:
Access all offers for that token
Co-exist with other platforms and broker-dealers on the same liquidity pool
Emitted when the controlling AccessManager is updated.
Access Control System
Roles
Dino Factory can either:
Deploy a new AccessManager and wire Dino Primary & Dino Secondary to it; or
Reuse an existing AccessManager shared across multiple assets.
For a given token, Dino Primary and Dino Secondary must share the same AccessManager so roles and UX are consistent.
Coordinated protocol upgrade or parameter change that temporarily requires halting trading.
Fee Manager Settings (FEE_MANAGER_ROLE)
Fee Configuration Functions
Fee System
Ecosystem Operation Fees
Combined Fee Flow per takeOffer
Fee Introspection Helpers
Multicall Support
Events & Monitoring
Dino Secondary–Specific Events
Inherited AccessManaged Events
Recommendation: index at least OfferCreated, OfferTaken, OfferCancelled, OfferPruned, FixedFeeUpdated, VolumeFeeUpdated, Paused, and Unpaused in your backend or analytics pipeline.
import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import { IERC3643 } from "@erc3643org/erc-3643/contracts/ERC-3643/IERC3643.sol";
import { AggregatorV3Interface } from "@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol";
import { IDinoPrimary } from "./interfaces/IDinoPrimary.sol";
import { IFeeCollector } from "./interfaces/IFeeCollector.sol";
contract DinoPrimary is IDinoPrimary { /* ... */ }
IERC3643 public erc3643;
address public issuerSafe;
bool public preminted;
IFeeCollector public ecosystemFeeCollector;
uint256 public nonce;
mapping(address => PaymentToken) public approvedPaymentTokens;
function updateIssuerSafe(address newIssuerSafe) external;
function updatePreminted(bool _preminted) external;
Developer Reference
This page documents the on-chain interface of DinoSecondary, the secondary-market module of the DINO stack.
Each DinoSecondary instance is bound to one T-REX (ERC-3643) token and exposes a simple offer book where users can post and take bilateral offers between that T-REX token and any ERC-20 payment token. The contract supports:
Freeze-based handling for the ERC-3643 leg (tokens locked in the investor’s wallet)
Escrow-based handling for the non-ERC-3643 leg (tokens held by the contract)
Fixed and volume-based fees
Ecosystem-level fees (handled by the T-REX fee collector)
This page is aimed at dapp and integration developers. Admin-only concerns (roles, pausing, fee configuration) are covered in the page.
At a high level, the public interface exposed to integrators is:
Represents a fee configuration used by DinoSecondary:
Field
Type
Description
For fixed fees, feeAmount is the exact amount of feeToken charged per takeOffer.
For volume-based fees, feeAmount represents the basis points (bps) applied on the non-ERC-3643 leg, capped at 100 bps (1%).
Offer lifecycle states:
Active – Offer is live and can be taken.
Filled – Offer is fully executed.
Cancelled – Cancelled by creator.
Represents a single order in the book:
Field
Type
Description
Amounts always keep the original price ratio: partial fills are proportional and update the filledAmount* fields accordingly.
Purpose
Create a new offer to sell tokenOut for tokenIn at a fixed ratio amountIn / amountOut.
High-level flow
Caller checks prerequisites and approves tokens for DinoSecondary (for the ERC-20 leg).
Contract validates:
amountOut and amountIn are non-zero.
Common errors
ZeroAmount() – if one of the amounts is 0.
InvalidExpiry(expiry) – if expiry is in the past or otherwise rejected.
InvalidToken(token) – if either token address is not allowed.
Purpose
Accept an existing offer (partially or fully) and execute the trade.
High-level flow
Validates that:
offerID refers to an existing offer.
Offer is Active and not expired.
Common errors
InvalidOfferId(offerID) – offer does not exist.
ZeroAmount() – taker tries to take 0.
InvalidTokenTransfer(token) – failure in underlying token transfer.
Purpose
Allow the offer creator to cancel an active offer.
Behavior
Only the original offerCreator can cancel their own offers.
Any frozen ERC-3643 tokens are released.
Any ERC-20 tokens held in escrow are returned to the maker.
Common errors
InvalidOfferId(offerID) – no such offer.
OfferNotCreatedBySender(offerID, sender) – caller is not the original maker.
Purpose
Clean up offers that are no longer valid, for example:
Expired offers.
Offers that became non-compliant.
Offers where the ERC-3643 leg is no longer funded (maker removed allowance or an agent moved away the frozen balance reserved for the transfer).
Pruning is open to any caller; it updates status to Expired and emits OfferPruned. If tokens had been locked/frozen, they are freed accordingly.
Common errors
InvalidOfferId(offerID) – no such offer.
Admin-only function to configure the per-transaction fixed fee:
feeToken: ERC-20 token used to pay the fee.
feeRecipient: address that receives fixed fees.
amount: exact amount of feeToken
Reverts with:
VolumeBasedFeeTooHigh does not apply here.
May revert with ZeroAddress (common error) if token or recipient is zero.
Admin-only function to configure the percentage-based fee:
basisPoints: rate in bps (100 = 1%) applied to the non-ERC-3643 leg of each trade.
basisPoints is capped at 100; higher values revert with VolumeBasedFeeTooHigh.
fixedFee()
feeToken: token used for the fixed fee.
feeAmount: fixed fee amount.
The implementation also provides convenience view functions for the raw recipients (fixedFeeRecipient, volumeFeeRecipient) as documented in the DinoSecondary docs.
Returns the ERC-3643 token address this DinoSecondary instance is bound to. Every offer must involve this token in at least one leg.
Shortcut to read only the expiry field for a given offer.
Returns the next offer ID that will be assigned on the next createOffer call (i.e. a counter, not the last valid ID). To iterate over all offers, index from 0 (or 1, depending on deployment conventions) up to getCurrentOfferID() - 1, combined with getOfferDetails and event history.
Returns the full Offer struct for the given offerID. Use this for:
Front-end display of the order book.
Reconciling with your indexer state.
Checking status, amounts and timestamps on-chain.
DinoSecondary uses a dedicated events library for consistent logging.
Event
When it fires
Key fields
Event
Description
From inherited contracts:
Paused(address account) / Unpaused(address account) from Pausable.
AuthorityUpdated(address authority) from AccessManaged when the AccessManager is changed.
These are particularly useful for indexers and monitoring dashboards.
Error
Typical cause
You should surface these errors in your dapp for clearer UX (e.g. mapping them to human-readable messages).
The contract supports OpenZeppelin Multicall, allowing you to batch several calls into a single transaction (for example, multiple takeOffer operations or a takeOffer + off-chain accounting update).
This is especially useful for:
Wallets wanting to group multiple fills.
Protocols executing rebalancing strategies that span several offers.
Use TREX() to ensure you are interacting with the right DinoSecondary instance for a given asset. IDinoSecondary
Index events (OfferCreated, OfferPartiallyFilled, OfferFilled, OfferCancelled, OfferPruned) as your primary source of truth, and reconcile with
T-REX Ledger
The compliant reconciliation ledger for Regulated Financial institutions
1. Concept and Purpose
The T-REX Ledger is the foundational layer of the ERC-3643 ecosystem — a domain-specific blockchain infrastructure designed to act as the canonical ledger and book of record for regulated digital assets.
Rather than competing with existing Layer 1 or Layer 2 blockchains, the T-REX Ledger functions as a trusted financial substrate where real-world assets, tokenized under ERC-3643, reconcile and settle across chains.
Its purpose is to provide:
Authoritative on-chain recordkeeping for securities and other regulated financial instruments.
Seamless interoperability with multiple chains for liquidity and user accessibility.
Institutional-grade trust and compliance guarantees, enforced through an embedded governance and identity framework.
The T-REX Ledger launches as an Ethereum Layer 2 built on the OP Stack, leveraging Ethereum for security and data availability.
It integrates zero-knowledge proofs for fast and reliable finality, ensuring transaction integrity and scalability.
To combine public settlement security and institutional trust, the T-REX Ledger introduces a dual validation architecture:
Ethereum Anchoring: all state roots are periodically posted to Ethereum, inheriting its proven decentralization and immutability.
Institutional Proof-of-Authority (PoA) Layer: a quorum of trusted validators co-sign and attest to key on-chain events.
This hybrid approach provides:
Ethereum-level settlement assurance.
Institutional oversight and governance for regulatory confidence.
In summary:
T-REX Ledger = Ethereum-anchored rollup (OP Stack) + Institutional PoA validation layer
It merges Ethereum’s security with the governance and trust framework expected in regulated financial infrastructure.
All canonical asset issuance occurs on the T-REX Ledger, which functions as the authoritative chain for tokenized financial instruments.
Full implementation of ERC-3643, including:
Embedded identity management
Claim registries for KYC/AML and investor eligibility
Simplified distribution contracts, similar to permissioned ERC-20 tokens.
Transferability and permissions are derived from the compliance logic of the reference (T-REX) chain.
This model ensures:
The T-REX Ledger holds the “golden record” of ownership and balances.
External chains serve as liquidity and accessibility layers — secondary representations of the canonical assets.
Cross-chain movement follows a freeze / mint model, preserving canonical integrity:
Outbound Transfer
Tokens are frozen on the T-REX Ledger.
Equivalent tokens are minted on the destination chain.
➡️ Result:
The T-REX Ledger always maintains the canonical accounting of balances — no double issuance, no desynchronization.
The T-REX Ledger is designed to act as the regulator-recognized book of record for legal ownership of tokenized securities.
Transfer agents, custodians, and regulators can rely on it as the authoritative register.
External chains are treated as distribution and liquidity venues, not legally binding records.
This design makes T-REX unique:
it positions itself as a compliance and reconciliation layer for digital assets, not a competitor to general-purpose blockchains.
Regulatory confidence through PoA-based validation and Ethereum anchoring.
Simplified reconciliation across chains with a single authoritative ledger.
Interoperability without compromising compliance.
Single issuance point across all networks.
Automated compliance enforcement via ERC-3643.
Bridging and liquidity on external chains while maintaining legal control on T-REX.
Transparent and verifiable ownership on a regulated chain.
Inter-chain liquidity without losing regulatory protection.
Instant, compliant transferability.
Access to standardized smart contracts and dApps for issuance, compliance, and bridging.
Participation in an institutionally backed ecosystem (via the ERC-3643 Association).
Opportunities to build dApps in the future T-REX AppStore : custody tools, marketplaces, compliance modules, etc.
The governance of the T-REX Ledger combines on-chain transparency with institutional oversight:
PoA Validators: Operated by a consortium of regulated and reputable institutions.
T-REX DAO: Oversees protocol upgrades, parameter changes, and validator admission.
ERC-3643 Association: Maintains open standards, audits, and interoperability guidelines.
Together, they ensure:
Accountability to the community and regulators.
Controlled evolution under transparent governance.
Sustainable ecosystem growth aligned with compliance requirements.
Layer
Component
Description
The T-REX Ledger will remain domain-specific — optimized for tokenized financial assets rather than general-purpose computation.
Future roadmap:
Expand the institutional PoA network.
Launch the T-REX AppStore for compliance-native financial applications.
Deepen interoperability with major L1/L2s for cross-chain liquidity.
Public blockchains offer transparency, but that transparency is often a blocker for large financial institutions and regulated markets. Some reasons:
Sensitive amounts: Firms may not want their transaction volumes, balances, or financial positions exposed publicly.
Strategic opacity: For trade execution, hedging, or portfolio adjustments, revealing flows can leak market strategy.
Regulatory / client confidentiality: Custodians, asset managers, and clients require privacy guarantees to comply with reporting laws, client privacy rules, and trade secrecy.
By offering a privacy layer as an option, T-REX can bridge the best of both worlds:
Public verifiability and auditability remain for those who want it.
Selective confidentiality for parties or flows that require privacy.
That optional privacy makes the T-REX Ledger far more palatable to major financial institutions — they can use a public blockchain while still protecting sensitive data.
The privacy layer is built on Fully Homomorphic Encryption (FHE), leveraging ideas pioneered by cryptography projects like Zama (in their “Confidential Blockchain Protocol” and fhEVM) to enable computation over encrypted data.
Key properties of FHE (as applied here):
Encrypted data at rest and in operation
Transaction amounts, addresses (or pseudonyms), and balances can remain encrypted, even while being processed by smart contracts.
Public verifiability of correctness
Even though data is encrypted, validators (or proof systems) can verify that computations were done correctly (e.g. that balances add up, compliance constraints are met) without seeing the raw values. Zama’s design uses FHE + zero-knowledge proofs to guarantee integrity.
Programmable decryption / access control
Smart contracts or compliance modules can define who is permitted to decrypt which data (e.g. a regulator, auditor, or the transacting parties). This is sometimes called programmable confidentiality
Here’s how the privacy option plugs into the existing T-REX Ledger model:
Opt-in privacy mode
Privacy is optional, not mandatory. Issuers or specific transactions/settings can enable confidentiality.
Encrypted balances & transactions
In private mode, account balances and transaction amounts are stored in encrypted form. Only authorized parties (e.g. sender, receiver, regulator) can decrypt.
Compliance logic on encrypted data
Even though values are encrypted, counterparties or compliance modules can enforce rules (e.g. transfer caps, KYC checks) via FHE computation so that the contract can still validate without fully revealing amounts.
Financial Institutions
Use a public blockchain (with Ethereum anchoring) while keeping internal flows and positions confidential.
Protect sensitive data from competitors, on-chain analysis, or front-running.
Satisfy client confidentiality and regulatory privacy mandates.
Issuers of Securities
Issue tokens transparently but allow private transfers or tranche-level privacy (e.g. for high-net-worth investors).
Shield sensitive holdings, distribution patterns, or capital flows.
Maintain compliance but avoid exposing proprietary investment structures.
Investors
Keep personal balances and transaction history private from public observers.
Enjoy the benefits of regulated, verifiable ownership without full exposure to the blockchain at large.
Selectively share decrypted proofs for audits or compliance only when needed.
Builders / Protocols
Build confidential dApps on top of T-REX that integrate privacy by default (e.g. private settlement layers, auctions, confidential lending).
Leverage standard APIs and smart contract templates that support both encrypted and transparent modes.
Increase adoption by offering privacy-first modules without reinventing cryptography.
Adding optional transaction confidentiality via FHE gives T-REX a massive strategic advantage:
It allows a public, auditable, anchored blockchain that also meets top-tier institutional privacy demands.
It bridges the gap between permissioned privacy (traditionally seen in private blockchains) and public blockchain integrity.
It strengthens T-REX’s positioning as the trusted compliance and reconciliation layer for regulated assets — offering both transparency and confidentiality.
In short: privacy is optional, but powerful — making T-REX suitable for real-world finance without compromising on blockchain principles.
Issuers can mint on T-REX and deliver directly to another chain in a single transaction, streamlining initial distribution.
Synchronized Accounting
Transfers on external chains are automatically mirrored on the T-REX Ledger using frozen tokens, ensuring continuous reconciliation.
Validation Layer
Institutional PoA Quorum
Trusted institutions co-sign transactions and attest to finality.
Bridging Layer
Freeze/Mint Protocol
Handles cross-chain transfers with canonical accounting.
Identity & Compliance Layer
OnchainID + Claim Registries
Provides verifiable identity and compliance enforcement.
API Layer
T-REX Engine
Developer gateway for issuance, transfer, and compliance operations.
Facilitate FHE integration for privacy
Evolve into the trusted financial substrate where regulated assets reconcile across all chains.
Risk management & segregation: Masking internal flows or positions can reduce front-running, MEV attacks, or exposure to on-chain arbitrages.
.
Composability and interoperability
FHE-based contracts can interoperate with non-confidential ones, enabling mixed workflows (some parts private, others public).
Post-quantum resilience
Many FHE schemes are lattice-based, offering resistance against quantum attacks beyond classical cryptography.
Bridging & canonical integrity
When bridging out, the encrypted state must align with the canonical (public) representation so auditors / the T-REX Ledger can confirm no discrepancy.
Cross-chain freeze / mint logic will need to work with both encrypted and non-encrypted modes, ensuring that canonical accounting remains consistent even in private mode.
Access control / audit decryption
For audit, regulatory, or legal disclosure, there must be mechanisms (e.g. threshold decryption or key-sharing among trusted parties) for authorized decryption of selected data.
Settlement Layer
Ethereum (L1)
Provides anchoring, security, and data availability.
Execution Layer
T-REX Ledger (OP Stack Rollup)
Executes ERC-3643 smart contracts and manages canonical issuance.
Note: The implementation also integrates AccessManager roles, pausing and ecosystem fee collection. Those are configured via the factory and documented in the DinoFactory and Admin pages.
Core Data Structures
Fee
OfferStatus
Offer
Trading Functions
createOffer
takeOffer
cancelOffer
pruneOffer
Fee Configuration & Getters
setFixedFee
setVolumeBasedFee
Fee getters
For the ecosystem fee, see DinoFactory / Global Fees docs – it is collected separately by the T-REX Ecosystem Fee Collector.