A Continuous Organization refers to any organization that set up a Continuous Token Offering to give to every stakeholder the ability to invest in the organization at any single time.
A Continuous Token Offering (CTO) is a novel way for organizations to receive financing without releasing any equity or any governance rights. A CTO uses an organization's realized revenues (i.e. revenues for which a payment has been made) as a collateral to back fully digital assets that anyone can buy or sell to speculate on the organization's future revenues.
To create a Continuous Token Offering, an organization would agree to build a collateral of value using a fixed percentage of its realized revenues during a pre-defined minimum period of time. This is done concretely by funneling the said fixed percentage of revenues into a Decentralized Autonomous Trust (DAT). A DAT is a smart-contract that automatically issues and buy back CTO Tokens to meet market demand from investors using a token bonding curve contract with sponsored burning.
Important note about the currency used to interact with a DAT
In the following examples, we are using ETH (the currency of the Ethereum blockchain) as the currency to interact with the DAT. ETH is the native currency for an Ethereum-based DAT. It does not mean that end users (individuals and organizations) will necessarily have to manipulate ETH to interact with DATs. First, ETH can be replaced by a stablecoin (like DAI or USDC) to remove the volatility associated with ETH.
Many individuals have explored the bonding curve model since Simon De La Rouvière first came up with the idea in 2017.
A bonding curve contract is a specific type of smart-contract that issues its own tokens through Buy and Sell functions. To buy tokens, the buyer sends ETH to the Buy function which calculates the average price of the token in ETH and issues you the correct amount. The Sell function works in reverse: The contract will calculate the current average selling price and will send you the correct amount of ETH (excerpt taken from Token Bonding Curves Explained).
In the case of Continuous Organizations, the Buy and Sell functions are distinct:
A token bonding curve model has interesting properties, including:
- Limitless supply. There is no limit to the number of tokens that can be minted.
- Deterministic price calculation. The buy and sell prices of tokens increase and decrease with the number of tokens minted.
- Guaranteed and immediate liquidity. The bonding curve contract is the counterparty of the transaction and always holds enough ETH in reserve to buy tokens back. So tokens can be bought or sold instantaneously at any time, the bonding curve acting as an automated market maker.
- Continuous price. The price of token n being inferior to the token n+1 and superior to the token n-1, calculating the number of tokens minted for a given amount of ETH (or the number of ETH sent back for a given amount tokens) requires some integral calculus.
It is important to note that in a bonding curve model, the x-axis represents the number of tokens issued. To give a simple example, let's say B(x)=x and S(x)=0. The cost C to buy the first 10 tokens is given by the surface between the buy curve and the sell curve that can be expressed as the following integral:
So, in our example: C=10*10/2=50.
In the case of Continuous Organizations, we introduce the revenue-based bonding curve: a bonding curve that uses 2 different functions, one for the buy curve and another for the sell curve: B (for buy) and S (for sell) with .
The bonding curve contract of a Decentralized Autonomous Trust issues COT Securities (COTs). These COTs represent a claim on the DAT's cash reserve. It is important to note that, unlike a stock, a COT does not represent a claim on the organization's ownership, it only carries a financial right to the cash reserve managed by the DAT. And the DAT's cash reserve is a function of the organization's revenues. So, by buying COTs, an investor gets a financial exposure on the organization's future revenues.
The function B defines the price at which COTs can be bought from the DAT. B is a linear function and has a positive slope b such that B(x)=b*x where and
b>0. The slope b can be chosen arbitrarily. The higher b is, the more value unit tokens will have, and vice-versa, as the lower b is, the less value unit tokens will have.
If you want your investors to have a lot of tokens, pick a very small value for b (like 1x10^(-9)). It has no financial impact, simply allowing more granularity for fractional rights.
The function S defines the price at which COTs are bought back by the DAT. S is a linear function as well and has a slope s such that S(x)=s*x where and
s>0. However, in a Continuous Organization, the value of s changes over time. To explain how the value of s changes over time, it is important to understand how a DAT receives and processes the cash it receives.
The first (in "time", not in "proportion") source of cash-flows for a DAT are investors who want to invest in the Continuous Organization. They do that by calling the buy() function of the DAT. Whenever an "external" investor (as opposed to the organization itself) sends funds to the DAT, a fraction of the funds sent is being held in the cash reserve by the DAT and the rest of the funds are being transferred to the organization's wallet. We'll call I (for invest) the percentage of the funds being held in the cash reserve. I is a constant.
Value flow when an investment occurs
Impact on the Bonding Curve Contract of the DAT when an investment occurs
The investors buying COTs are doing so to invest money in the underlying organization. Investors don't want their money to be held in reserve by the DAT, they want their money to be put to good use by the organization. Consequently, the value of s must be an order of magnitude lower than b, which means that I should ideally be low. I could also be 0 if the organization's characteristics (revenues, growth...) can justify it.
Example: Let's say that an investor sends 10 ETH to the DAT, if I=10% then the DAT will transfer 9 ETH to the organization's wallet and will keep 1 ETH in its cash reserve.
The rules described above do not apply if the investor is the beneficiary organization, that is, if the organization is technically investing in itself. In that case, I is always equal to 100%. It means that whenever an organization is investing in its DAT, 100% of the amount invested by the organization to buy COTs goes to the buy-back reserve. For more information, see the COTs purchase by the beneficiary organization section below.
When an investor buys COTs for a cost c, he receives x COTs, with x being equal to:
(see proof in Annex)
with c the amount used to buy COTs, b the sell slope and a the number of COTs already in circulation before the transaction.
At any time, the beneficiary organization can decide to buy COTs. To do that, the beneficiary organization calls the buy() function like any other investor, however, unlike external investors, the funds sent by the beneficiary organization to purchase COTs are 100% funneled to the buyback reserve (i.e the contribution ratio I is equal to 100% when funds come from the beneficiary organization).
This guarantees a total alignment of interests between all investors. Indeed, if the beneficiary organization was able to buy COTs with the same investment ratio I than external investors, it would concretely mean that the beneficiary organization is able to buy COTs for a fraction of the price compared to external investors (because the organization receives by definition (1-I)% of the amount invested). This difference could easily be abused by dishonest organizations and managers.
Purchasing COTs is also how the organization can reward COTs holders. Indeed, when the beneficiary organization buys COTs, not only does it increase the buy-back reserve, it also increases the slope of the selling curve (see detailed explanation below).
As a consequence, in the case of an organization with off-chain revenues, buying COTs is how the organization actually funnels its revenues to the DAT. That means that, the more revenues the organization generates, the more COTs it accrues over time and can use to further incentivize its key stakeholders. Of course, the organization can also simply decide to burn() its COTs if it wants to maximize the reward to COT holders.
Value flow when the beneficiary organization purchases COTs
Impact on the Bonding Curve when the beneficiary organization purchases COTs
The difference between an investment by an external investor and a COTs purchase by the beneficiary organization is their respective contribution ratio to the DAT's reserve:
- investment by external investor: an amount M contributes
I*Mto the DAT's reserve while minting the value equivalent of M, thus a contribution ratio of(I*M)/M=Iand by construction I<<100% - COTs purchase by beneficiary organization: an amount M contributes
Mto the DAT's reserve while minting the value equivalent ofM, thus a contribution ratio ofM/M=100%
After each transaction, s can be recalculated from the amount in reserve Rt:
so
(see proof in Annex)
Example: Say I=10%,s0=0.1 and b=1. Assume an investor buys the first 10 tokens for 50 ETH, so the DAT now has 50x10%=5 ETH in reserve. Then, the beneficiary organization buys COTs for 1 ETH of value. This 1 ETH is used to mint 0.0995 tokens (we'll leave this as an exercise for the reader. Hint: the equation to solve is ), which gives s1=0.1176. So, the operation increased value for COTs holders as s1>s0, that is, they can now sell their COTs at a higher value than before.
A COTs holder can at anytime take the decision to burn its COTs by calling the burn() function.
Burning COTs does not technically destroys them (the total supply of COTs, including burnt COTs remains the same) but it makes sure that no one will ever be able to use them so that their marginal value can be redistributed equally to other COT holders.
It makes little sense for an investor to do so with its COTs, but it does make sense for the beneficiary organization to be able to burn its COTs (1) if it has no use of them or (2) if it wants to increase the value of all other COTs.
Indeed, when a COT is burnt, its lowest possible value is equally redistributed to all COTs holders so that, when an investor sells its COTs, he receives a fraction of the cash reserve + a pro-rata of the value locked in burnt COTs. See sell() section below for the exact calculus.
The direct consequence of this is that there is never value locked forever in the cash reserve: selling 100% of the non-burnt COTs will deplete the cash reserve from 100% of its value.
Representation of the impact of burning COTs on the Bonding Curve
Investors can at any time decide to sell their COTs to get ETH back. They do that by calling the sell() function of the DAT. When the DAT receives COTs, it burns the received COTs and sends ETH back to the selling investor according to a function S (for sell). S has a slope s that increases discretely over time, every time the DAT receives a payment. The ETH sent back to the investor is taken from the DAT "buyback" cash reserve and does not affect the organization's treasury.
Value flow when a COT sale occurs
Impact on the Bonding Curve Contract of the DAT when an investor sells its tokens
When an investor sells x COTs, assuming no COTs were previously burnt, he receives an amount c, with c being equal to:
(see proof in Annex)
with s the sell slope and a the number of COTs in circulation before the transaction.
In the case COTs were burnt (see previous section), the calculus becomes:
where x' is the number of burnt COTs.
A Continuous Organization has the option to perceive its customer's payments directly through the DAT by calling its pay() function.
Whenever the DAT receives a payment P, a fraction of the payment received is being funneled into the cash reserve. We'll call D (for Distribution) the percentage of the revenues being funneled into the cash reserve and d the corresponding fraction of the revenues (d=P*D). The entire amount d is saved in the DAT's cash reserve, thus increasing the value of COTs.
It is important to note that calling pay() will also trigger the issuance of new COTs. The number of COTs issued is equivalent to the number of COTs that would be created if buy(d) was called. By default, these newly minted COTs are sent to the organization like showed on the following graph:
Value flow when the CO relies on the DAT to receive its payments
Optionally, the customer can specify a parameter of the pay() function to sent the newly minted COTs to an address of his choice (most likely the address of his wallet) in which case the value flow would look like this:
Value flow when the customer specifies his wallet address to pay()
Example: Suppose D=5%, if the Continuous Organization receives a payment of 100 ETH, 5 ETH will be funneled to the "buyback" cash reserve, increasing the collective value of COTs.
Note: For some Continuous Organizations (COs with no underlying legal entity, for example), it can make sense to receive their customers' payments (i.e. the CO's revenues) directly through the DAT. It is important to note that it is not mandatory for the organization's revenues to funnel through the DAT as the organization can also decide to only reward COTs holders through COTs purchase.
For organizations that already have a running business, they will very likely prefer to first receive a payment from their customer in fiat (as they usually do, without changing their selling process) and will then purchase COTs to transfer a fraction of their perceived revenues to the DAT to increase the COTs value, as illustrated here:
This way, the DAT is made completely invisible for the customer (no change in UX) and the organization does not have to modify any of its highly optimized selling processes.
When the DAT is being created (and only then because once created the DAT becomes immutable), the organization can decide to "pre-mint" for itself and for free a number PM of COTs. That means that, instead of having the supply of COTs of the DAT start from zero, it would start from PM.
Pre-minting COTs can often make a lot of sense to the organization, be it to reward its founders, to pay its early employees, to reward its early users or to secure a liquidity pool for the secondary market.
However, it is very important to realize that pre-creating COTs comes with a potentially high cost, as these "free" pre-minted COTs represent a selling pressure on the DAT as they are COTs that got allocated "for free", without any contribution to the DAT "buyback" cash reserve.
Technically speaking, it means that the greater the number of COT tokens that are pre-minted, the lower the sell curve will be (i.e., the s slope defined previously). So concretely, if an organization decides to pre-mint a large number of COTs when setting up the DAT, it may want to be very careful not to pre-mint too many of them because it could have a significant negative impact on the risk and financial reward of investors.
Impact of pre-minted tokens, everything else being equal
So, as an organization, you might have good reasons to pre-mint some COTs but beware because pre-minting too much will make your COTs become less attractive for investors. A good rule here is to only pre-mint the COTs needed before generating revenues. Once revenues starts rolling in, the organization will accrue COTs naturally, through the funneling of its revenues to the DAT.
A Continuous Organization is an organization that issues COT through a Continuous Token Offering by funneling part or all of its realized revenues to a specific type of smart-contract called Decentralized Autonomous Trust (DAT). These COT represent a claim on the DAT's present and future cash reserve and allow investors to speculate on the revenue growth of the organization. The organization, its investors and, potentially, its customers interact with the DAT by sending ETH or COTs to it:
Finally, a DAT can be created with pre-minted COTs for the organization that can then distribute them freely to stakeholders. However, it is important to note that these pre-minted COTs come at a cost as they are directly diluting future investors.
The initialization phase of a CTO is specific in that it does not use the bonding curve. Indeed, to kickoff a CTO, the beneficiary organization needs to set an minimal funding goal (MFG). This MFG is the amount of investment required for the bonding curve to start. All investors investing before the MFG is reached (using the buy() function) receive COTs at the same average price.
Initialization phase of a Continuous Token Offering
Until the MFG is reached, all funds are escrowed and investors can decide to withdraw their investment at any time (by calling the sell() function) and will receive 100% of their investment back. Once the MFG is reached, the bonding curve starts, a fraction I of the MFG is funneled to the cash reserve and the complement (MFG*(1-I)) is being transfered to the beneficiary organization.
Also, before the MFG is reached, the beneficiary organization can unilateraly decide to cancel the CTO in which case investors can then withdraw 100% of the funds they individually invested.
It's important to note that once the MFG is reached, then the organization cannot cancel the CTO anymore and it will now continue to be live for a minimum period of time (defined in the smart-contract by the organization). Equally, after MFG is reached, investors cannot withdraw their funds anymore as the bonding curve started. They can now only call the sell() function will operates as described in the previous section.
The MFG protects both investors and the organization. It protects the investors because if there is low appeal from investors, the MFG won't be reached and investors can withdraw their money. Plus, the fact that all early investors get averaged priced COTs means that no early investors will get unreasonably low price COTs. But the MFG also protects the organization as the organization can use it to gauge the market appetance for its CTO and can decide to cancel it if investors interest is below its expectations.
The organization should not set the MFG too high though, otherwise it would have the effect of transforming the CTO into a simple crowdfunding campaign and defeat the purpose of the CTO. In other words, the CTO must reflect the minimum amount the organization expects to validate its CTO. It should definitely not be set to the entire value an organization expects to raise.
A CTO can continue indefinitely but it doesn't have to: the beneficiary organization can decide to close it at anytime after the minimum period of time expired.
In order to give some necessary visibility to investors, the beneficiary organization has to commit to keep its CTO running for a minimum period of time (3 years, 5 years, 10 years...). After this minimum period of time has passed, the organization does not have to close its CTO but it can. Also, at any single time, the organization can increase the minimum period of time it commits to keep its CTO running to give increased visibility to investors.
Closing a CTO is not free. To close its CTO, the beneficiary organization will have to pay an exit fee. The price of this exit fee is equal to the current issuance (buy) price of COT multiplied by the number of COTs outstanding. Once the exit fee is paid, the organization can close its CTO which allows every single investor to then sell their COTs at the same price: the current buy price (and hopefully the highest).
Visualization of the exit fee required to close a Continuous Token Offering
By doing this, it means that the last investor will make a white operation (bought at buy price and sold at the same price moments after) while early investors will hopefully turn a profit (it is obviously not guaranteed as the last issuance price is not necessarily the highest price).
The spread that exists between the buy price and the sell price of COTs creates an incentive for investors to buy and hold COTs until the Continuous Organization starts generating revenues:
- Pre-revenue. The price appreciation of COTs is due to investors' speculation as they anticipate future revenues.
- Post-revenues. Once revenues begin to flow, the price appreciation of COTs starts being driven by the revenues generated by the organization, as a fraction of the revenues is funneled to the buyback reserve of the DAT.
There is a clear incentive for investors to hold their COTs and act as long-term investors.
The spread between the Buy and Sell curves also leaves space for a secondary market of COTs. If the current price of a newly minted COT is 10, an investor would rather buy an already-minted COT from another investor willing to sell at a better price than the buyback price offered by the DAT.
Obviously, this secondary market is bounded in a dynamic price range imposed by the DAT: it would not make sense for a buyer to bid a price higher than the current price proposed by the DAT. Likewise, it would not make sense for a seller to ask for a price lower than the price proposed by the DAT.
Said otherwise, an investor will always be better off buying or selling their COTs in the secondary market, as the price will likely be better than the price proposed by the DAT.
Interestingly, the recent rise of automated market mechanisms for secondary markets (like Uniswap or Kyber network) means that one could completely blend the primary market (the DAT) and the secondary market together from a UX perspective: a user would enter the value of COTs he wants to buy and his trade could be automatically optimized between the primary and secondary market. This is a feature Fairmint provides, which is important to reduce price volatility and maximize investors' returns.
One of the most valuable properties of a Continuous Organization is that the liquidity of COTs is immediate and guaranteed. If an investor does not find a buyer or a seller in the secondary market, they can always buy or sell tokens to the DAT. By construction, the DAT always has the funds to buyback COTs at a price defined by the S function. The DAT really acts as the organization's central bank, minting new tokens when demand exceeds available supply and contracting the token supply when sellers outnumber buyers.
In the proposed bonding curve model the buyback price (defined by the S function) for a given supply is very low compared to the buy price (the B function). So one could argue that, even if there is guaranteed liquidity, this liquidity has limited utility because investors would likely take a loss by selling to the DAT. This is true only if an investor buys COTs and sells them back to the DAT short thereafter.
However, if the investors have more patience and if the organization develops well:
- more investors will buy COTs, thus increasing both the buy and the sell price to where the investor will turn a profit by selling their COTs back to the DAT.
- the organization will start generating revenues, thus automatically increasing the buyback reserve and increasing the value of COTs (using the mechanism described previously).
- the organization can also start distributing COTs directly if it is doing well and sees an interest in doing so. Distributing COTs has a double effect:
- significantly increasing sell price because these COTs are bought from the DAT and the funds are 100% saved in the buyback reserve, thus increasing the value of s and with it the minimum sell price.
- increasing the investor's return on investment (ROI) as the investors can decide to immediately sell back the COTs they received to cash them out.
Finally, it is good to keep in mind that the DAT is only the buyer-of-last-resort. It is very likely that an investor could sell their COTs on the secondary market at a higher price than the "buy-back price" offered by the cash reserve of the DAT for a given supply.
By construct, a Continuous Organization is continuously fundraising as investors can permission-lessly buy and sell the organization's COTs at any time:
- Any increase in COT supply (i.e., a COT that is being minted by the DAT, not bought on the secondary market) directly translates into funding for the organization.
- Any decrease in COT supply (i.e., a COT that is being sold to the DAT, not sold on the secondary market) is being paid by the buyback reserve of the DAT and does not affect the organization's treasury.
Whereas in the traditional VC financing model, fundraising defocuses the entrepreneur in a time-consuming and uncertain process that creates dangerous valuation thresholds, COs help the entrepreneur stay focused on execution and make the organization more resilient to the business ups and downs.
To illustrate this, let's take the example of a Continuous Organization whose COT price over time as measured by the buy function of the DAT follows the following very volatile curve:
The zones in blue correspond to upward trends of the COT price, which translates into the Continuous Organization raising funds. Alternatively, the white zones are downward trends which translates into the DAT (not the organization) buying back the COTs that are being sent to it using its buyback reserve.
The Continuous Organization model is blockchain agnostic but requires a turing-complete smart-contract language to be implemented. The availability of stablecoins are not necessarily a requirement but they definitely improve the UX of Continuous Organizations.
A reference implementation for the Ethereum blockchain has been specified and implemented (in Vyper language) by Fairmint. The contracts used for the Continuous Organization are a fork of the fairmint c-org contracts, which were audited by Consensys Diligence and the results of the audit will be made public as soon as it is finalized.
DISCLAIMER: What is written in this section as it only reflects the author's opinion and does not constitute a legal opinion. Please consult a lawyer specialized in Securities law in your jurisdiction for a legal opinion.
A Continuous Organization requires the setup of a Continuous Token Offering (CTO). Apart from the continuous aspect of the offering, which is novel, a CTO is simply another type of token Offering. As such, a Continuous Organization will very likely need to comply with the digital tokens law in its jurisdiction.
When buying COTs, you need to perform a calculus to know how much COTs you will get for the amount you are willing to invest.
Let's calculate the number of COTs x received when d is invested when a COTs have already been minted. We have the following:
So the number of tokens minted for an investment d is:
When selling COTs, you need a calculus to know how much you will get back for the amount of COTs you are willing to sell.
Let's calculate the number value M received when x COTs are sold when a COTs have already been minted. We have the following:
Which gives:
As s is easy to calculate:
We ultimately get:
Now the sell calculus show above is right only when no COTs are burnt. If COTs are burnt, the burnt value is redistributed proportionally at each sell(). Here is how it works in a scenario where we have x' burnt tokens and x tokens in circulation. We have a theoretical burnt value of R' as shown in the following graph:
We have:
Now, we do not want this value R' locked forever. We want to redistribute it to current COTs holder so let's "spread" R' accross all current COTs holders:
We have:
Which means we can now express the complete sell() function, including the burn factor:
































