tMarket: a foray into tokenizing securities

This post and what follows is an attempt to explore an end-to-end process to tokenize securities, the type that an existing company (whether off-chain or on-chain) can use  to raise capital by accessing liquidity on the blockchain. In this case, we’ll attempt to tokenize an expired renounceable rights offer originally issued by Autoneum Holdings in 2023 on the Six Swiss Exchange. Fortunately, the Swiss-based Capital Markets and Technology Association (CMTA) has already done much of the groundwork by crafting a framework to aid in implementing such offerings on a distributed ledger technology (DLT) platform (in this case, Ethereum-based EMV). The CMTA has provided both documentation and a framework to help us stay compliant with Article 973d of the Swiss Code of Obligations. As such, this exploration will take place within the Swiss regulatory environment.

What is a Renounceable Rights Offer?

A renounceable rights offer is one way a corporation can raise capital. The general structure of such an offer is as follows:

  • The corporation issues rights to its existing shareholders, allowing them to purchase newly offered shares at a discounted price, with a specified ratio (e.g., 4 rights for 1 offered share).
  • These rights can be traded among existing shareholders or sold to new investors.
  • Shareholders can exercise these rights up until a specified date.
  • After the cutoff date, any remaining offered shares are sold to other investors, usually at a discounted price.

This is a simplified explanation, and there are numerous regulatory features that a tokenized offer would need to include to remain compliant, especially since we are dealing with a regulated asset. We’ll delve into these features in future posts.

Summary of the Offering

  • Name of Issuer: Autoneum Holding AG
  • Newly Offered Shares: 1,168,090
  • Shareholder Rights:
  • Each shareholder will receive 1 right per share held.
  • Each shareholder can purchase 1 offered share per 4 rights held at CHF 90.75 per share.
  • Rights can be traded on the Six Swiss Exchange until a specified date.
  • Rights can be exercised to purchase newly offered shares until a specified date, after which the new shares will be offered publicly.

This summary strips down the details, but it provides enough information to start constructing the offering’s framework.

Autoneum Holding AG Rights Offering and Share Capital Increase features

  • Issuance of 1,168,090 new shares at CHF 90.75, raising approximately CHF 100 million.
  • Key Dates:
  • September 18, 2023: Cutoff date for existing shareholders to receive rights (1 right per share).
  • September 19-25, 2023: Rights trading period.
  • September 19-27, 2023: Rights exercise period (convert rights to offered shares).
  • September 29-October 2, 2023: Trade leftover offered shares.

Design of v0.1

We’ll start with a basic design and refine it as we progress. Essentially, we’ll create 3 smart contracts:

  1. rightsTokens: These represent the rights, with their own lifecycle and functionality, including trade price and expiry (rights exercise cutoff date). This will be a base CMTAT with extended attributes, e.g. rights-to-offer ratio, offer price, rights cutoff date etc.
  2. AutoneumShareTokens: These represent the newly offered shares, with each token corresponding to one share.
  3. tMarket: will allow accounts to sell their rights, other accounts to purchase the rights, as well as allow accounts to purchase the offered shares using the owned rights tokens.

The CMTA framework will be central to our use case for creating and managing these tokens. While everything will first be verified through unit tests on the Foundry side, we’ll also use Scaffold-eth2 for front-end integration. The CMTA framework allows for the creation of tokens representing equity securities, debt securities, and structured products in compliance with Article 973d of the Swiss Code of Obligations. The standard and the specifications define the functionalities needed for equity securities, but the framework is extensible enough to enhance functionality through its modular structure. In our case, we will add functionality specific to Rights Offers by creating a RightsModule.

Base Functionality

The base functionality for equity securities is provided by the CMTA framework and resembles a typical ERC20 token. The modules provided include:

  • Base Module: For basic token functionality (e.g., totalSupply, balanceOf, transfer, mint, burn, pause), as well as storing information like the token name, ticker, and terms.
  • Snapshot Module: Determines account balances at specific points in time, useful for dividends and interest payments.
  • Validation Module: Requires pre-approvals from the issuer for certain actions, enhancing security.
  • Authorization Module: Manages role-based access to the token’s functionality.
  • MetaTxModule: Allows for gasless transactions.
  • DebtModule: Provides functionality for debt securities.

For our case, we will create the RightsModule to handle our specific needs.

Implementation of v0.1

  • Use the CMTA framework to create and deploy rightsTokens.
  • Create accounts for all shareholders, each associated with a wallet address.
  • Mint Rights tokens for each account, equivalent to the number of shares they hold (e.g., 10 shares = 10 Rights tokens given).
  • Implement shareholder functionality in a separate contract (TMarket.sol), an approved contract that manages transactions on behalf of users. Shareholders can then:
  • Trade rights via an OTC method (we’ll consider AMMs in future versions). Shareholders can create a Rights Sell Order (RSO) specifying the trade value in USDC and the number of rights for sale. These RSOs will be listed for other accounts to purchase (pending a successful KYC process in future versions).
  • Redeem offered shares at the specified ratio (4 rights = 1 offered share) at CHF 90.75 per share.
  • Do nothing, in which case the tokens expire and become unusable.
  • After the cutoff date, no more rights tokens can be traded, and they expire, ceasing to function. We should then have 1,168,090 rights minus the number sold to rights holders.
  • see code

To-do v0.2

  • The remaining AutoneumShareTokens will undergo two trading phases (this is a convenient implementation and may not exactly follow the logic stated in the terms, but we’ll revisit this later.
  • The issuer (Autoneum) will offer the remaining tokens to their investors at a competitive price.
  • Investors will be able to trade tokens just like the equivalent shares on the Six Swiss Exchange (SSE). Here, we will treat AutoneumShareTokens as Real World Assets (RWA), with their value pegged to the value traded on the SSE.