Notakey ICO approach (ICOP)

Gints Kirsteins
5 min readFeb 3, 2018


There are many approaches to token sales all over the world. I won’t delve deeper in to the specifics of each but instead try to explain our decision to go with a “Dutch auction” bidding style.

What is our ICOP token?

We are not issuing tokens as service API keys (utility token), nor are we inventing a new “proof of something” concept to maintain our own blockchain. We are building our system on top of the Ethereum virtual machine. All transaction fees and payments will be in ETH.

Like everyone organizing an ICO, we need funding. Before the ICO “era” the conventional approach was to attract investors or organize an Initial Public Offering (IPO). In both cases, the company provided share capital in return for investment, with investors becoming co-owners of the business.

We decided to keep our ICO offer small and straightforward, so our ICOP is a share equivalent for the ICO Pass service, or equity token of which there are 60,000,000 in total.

Our idea is to distribute revenue generated by ICO Pass to all ICOP owners via Smart Contract (SC). ICOP holders will be able to query the smart contract for currently allocated ETH per ICOP online. There will be an initial 20,000,000 ICOPs on sale.

We will use an Ethereum smart contract for organizing the sale of tokens and the future distribution of funds will be organized through smart contract as well, as this is most convenient method in our brave new digital world. We are excited by the possibilities the Ethereum virtual machine provides and have taken the decision to support the community by donating 10% of our net revenue (received through smart contract) to the ETH Foundation.

On average, about 21% of total revenue will be deposited quarterly and ICOP holders will be able to claim their funds accordingly. See the below example of revenue distribution from an in-app purchase of Onfido’s verification service.

Auction type

The U.S. Treasury uses a Dutch auction to sell its securities. To help finance the USA’s debt, the US Treasury holds regular auctions to sell Treasury bills (T-bills), notes (T-notes), and bonds (T-bonds), collectively known as Treasuries. Prospective investors submit bids electronically through TreasuryDirect or the Treasury Automated Auction Processing System (TAAPS) which accepts bids up to 30 days in advance of the auction.

Google opted for a Dutch auction to earn a fair price on its public offering. Prospective buyers submitted bids based on the number of desired shares and what they were willing to pay for them. After the auction ended, underwriters sifted through bids to determine the minimum price they would accept and landed on an IPO of $85 per share.

To our mind, the Dutch auction is a straightforward way to establish the true fair market price for an ICOP, ensuring participants are aware of what they are getting in return.

Having looked into smart contracts used in Dutch auctions, we found the type used for Polkadot’s ICO to be the most suitable. It is tried and tested and the result speaks for itself, with a lower level of risk involved for us and potential contributors.

How the Smart Contract works

As we are going to use smart contract, there is no need to wait for everyone to submit their offer. Bidders can see the price upfront. The sale will start with an initial 15% ETH bonus for the first hour. For example, a 100 ETH purchase in the first hour will cost 115 ETH a day later for the same number of ICOP tokens. For every period where 2 blocks are confirmed without new contributors, the early participation bonus will drop by 1 percentage point. After the 14th drop or 24 hours elapsed (whichever comes first), the early contribution bonus will end. The auction will start with a very high ICOP price and decrease, quickly at first and then more slowly. The initial price will be so high as to make it impossible for anyone to force the sale’s end by buying all the ICOPs immediately.

If bidders feel that the reached price is reasonable and they are ready to commit, they will send ETH to the bidding address, guaranteeing their tokens at the reached price or lower. If done during the bonus period, the smart contract will treat the amount as though it is up to 15% higher than the actual price and allocate ICOPs accordingly.

On each bid the smart contract checks if the total amount bid is enough to buy all ICOPs at the current price. The price will gradually go down from there, and the calculation redone for each bid.

When all ICOPs have sold or the time expires, the auction will end. The ICOP price will be the final price at this point. If all ICOPs were sold or the auction time expires, ICOP price will be calculated by dividing all ETHs transferred with total number of ICOPs available (20 million).

Auction example

Let’s assume that there are 100 ICOPs for sale and submitted bids are coming in as follows:

Final ICOP price is fixed at 3.0 per ICOP

Distribution of ICOPs after auction looks like:

As you can see from the example above everybody who managed to bid before the price went down below 3 received their ICOPs for the price bid or lower. Those who bet on a price of 2 and waited too long were not able to submit their bid, as the auction ended before reaching this price tag.

To summarize:

1. You bid for the ICOP at the price you are comfortable with

2. Price for 1 ICOP will be the same or lower the price you bid

3. If you bid, you get the ICOPs

4. All 20m ICOPs will be sold

5. You will be able to query the smart contract for your funds whenever you decide, if the funds are available at that moment. (Funds are intended to be transferred quarterly.)

To get more information about tokens sale,

please go to ICO PASS or

check our Whitepaper , join the Telegram channel

and say something