Skip to content

Drag-Along

Typical shareholder agreements contain “drag-along” and “tag-along” clauses. If someone makes an acquisition offer and a majority of shareholders wants to sell, the drag-along clause allows them to force the remaining shareholders to join in selling their shares at the same price. This is useful because an acquirer often wants to either buy a company completely or not at all — similar to a squeeze-out on the stock market, which allows someone owning 98% of a company to buy the remaining 2%.

In contrast, a drag-along clause is often already enforceable when 75% or so of the shareholders agree. However, enforcing it can be time-consuming in practice, as all involved parties need to be contacted, sign a transfer agreement, and be paid. The draggable smart contract fully automates this process for tokenized shares, allowing companies to have thousands of shareholders without losing the strategic option of an exit.

This section describes the automatic enforcement of the drag-along clause implemented by the SHA smart contract.

The Offering Party can initiate an offer to acquire all (but not less than all) SHA Tokens from the other SHA Token Holders (the “Selling Parties”) for a specific price per share (the “Offering Price”) through interaction with the SHA Contract, subject to a non-reimbursable software license fee (see License Fee). By doing so, an Offer Contract is created and an OfferCreated event is emitted on the blockchain. It is the responsibility of each Token Holder to monitor the blockchain for such events or to use a service to do so on their behalf.

After the initiation of an offer, the Voting Period starts. During the Voting Period, any SHA Token Holder (including the Offering Party) may call voteYes and voteNo to vote on the offer. This only affects the tokens residing on the calling address, and the vote count is automatically adjusted as tokens arrive at or leave the address during the Voting Period.

The total supply of SHA Tokens may increase during the Voting Period as additional shareholders wrap newly tokenized shares or existing Base Tokens. Holders of other forms of shares can report their vote to the Oracle, which shall in turn report these votes to the Offer Contract within three business days. The Oracle can invoice the transaction fees for reporting the votes to the respective voters.

After the end of the Voting Period, the Execution Period starts. No new votes are accepted, but the Oracle can still report votes it received before the end of the Voting Period.

Anyone can trigger the execution function on the Offer Contract at any time during the Voting Period or the Execution Period, given that all necessary conditions are met — namely that the Acquisition Quorum is reached and the required funding is available.

Executing the Acquisition Offer assigns all wrapped Base Tokens to the Offering Party and replaces them with the sales proceeds. At the same time, the agreement ceases to be contractually binding, allowing the SHA Token Holders to unwrap the sales proceeds in proportion to their tokens.

The Acquisition Quorum, as specified in the SHA and typically set at 75%, is achieved when more than this percentage of all shares approved the acquisition. Once the Voting Period ends, the shares for which no vote was cast are assumed to have voted yes and no in the same proportion as those shares that did vote. The votes of shares not represented by SHA Tokens are reported through the Oracle.

The Offering Party can cancel the offer at any time by calling the respective function on the Offer Contract.

Anyone can also contest the Acquisition Offer by calling the respective function on the Offer Contract. This results in the offer being cancelled if:

  • The Offering Party did not make enough funds available
  • The Execution Period has passed
  • The Acquisition Quorum has become unreachable (assuming the number of “no” votes will not decrease)

Additionally, anyone can make a higher counteroffer using the same acquisition currency as the current offer. Making such an offer cancels the old one.

  • Wrapping — Anyone owning base tokens can wrap them at any time, converting them into draggable tokens. The base tokens still exist but are now under control of the draggable contract. For each outstanding draggable token, the contract holds exactly one base token as backing. A draggable token legally represents a base token bound to a shareholder agreement.
  • Migration — A majority of shareholders, holding at least the percentage required for the migration quorum as outlined in the SHA (e.g. 75%), can transfer all base tokens to a new contract representing a different shareholder agreement, or terminate the existing agreement entirely. Once the agreement has ended, token holders are free to unwrap their base tokens.
  • Acquisition flow — Anyone can make an acquisition offer at any time. The full acquisition amount must be available in a currency of choice. If the quorum (e.g. 75%) of all votes cast within a given timeframe (e.g. 60 days) approves the acquisition, all base tokens are sent to the acquirer and replaced with the corresponding amount of money. From then on, draggable tokens represent a proportional claim on the acquisition currency, and holders can unwrap at any time.
  • Oracle — In case not all shares are tokenized, an external oracle can report the votes of the other shareholders to the token contract.
  • Contesting — If the offer has expired or is no longer well-funded, anyone can kill the current offer by calling contest on the Offer Contract.
  • Counteroffers — Counteroffers can be made, but the price must be higher than the previous offer and in the same currency.
  • Early resolution — The offer can be ended early if it is clear that the remaining votes cannot change the outcome.

A majority of shareholders could theoretically abuse the smart contract to acquire the shares of the remaining shareholders at a very low price by making a cheap acquisition offer and approving it. Doing so would likely constitute a violation of the shareholder agreement, and the minority shareholders would have to hold the majority accountable through the traditional legal system. The assumption is that it is possible to identify some of the majority shareholders so they can be taken to court or the matter settled bilaterally.

While it is relatively easy to implement a drag-along clause in a smart contract, there is no straightforward way to implement a tag-along clause. A tag-along clause allows a shareholder to sell shares at the same price if other shareholders sell a large package to a buyer. This is difficult to automatically enforce because:

  • A transfer of shares does not necessarily imply a sale. The holder may have moved them to a more secure wallet or a different custodian.
  • Shares can be sold without moving them to a new address (e.g. when held by an intermediary and assigned to the new owner contractually).
  • Even if a transfer of ownership is detected, there is no guarantee the payment is visible on-chain or that there were no side-agreements between buyer and seller.

Enforcing a tag-along term necessarily requires human intervention and cannot be automated. The same holds for many other contractual clauses. The drag-along is fortunate in that it can be represented with a relatively simple smart contract.

This smart contract uses a custom software license: the “MIT License with Automated License Fee Payments”. Anyone is free to reuse the code as long as the built-in license fee, paid to Aktionariat AG, is preserved. The license fee of three Ether is due whenever a new acquisition offer is made and is paid by the prospective buyer. This has the side-effect of ensuring that the offer is serious.