TokenGen KYC update

How to properly do KYC for your ICO or STO

A know-your-customer process is an integral part of every serious ICO or STO. We are proud to finally present the TokenGen KYC solution that will meet this notion.

In a previous announcement, we let the blockchain community know that we will be integrating our token crowdsale automation tool with Civic, one of the most popular decentralized identity platforms.

Through this integration, TokenGen users will now be able to both seamlessly add a KYC component to their TGE as well as go through the KYC process of ICOs and STOs raising funds on our platform.


First of all, let’s define the two types of TokenGen users:

  • Project owners – users who have created a TokenGen project and are looking to sell their digital asset in a TGE.
  • Investors – users looking to buy digital assets sold on TokenGen.

In both cases, people need certain things in order to work with the KYC process. Here’s what’s mandatory:

Once you have those covered, you can move onto working with the KYC process. There’s two cases, covering each of the two user types’ goals:

  • Going through the KYC process as an investor
  • Adding KYC to a project

Let’s start with the first one.

Going through the Civic KYC process

Once a TokenGen project has enabled its KYC component (we will go over that in the next section), you will be able to go through the KYC process from the project’s landing page. At the bottom, you will find a Get whitelisted button, which initiates the process:

TokenGen Landing Page get whitelisted button

First off, you need to provide an Ethereum address, from which you plan on participating in the fundraiser (best option is to provide your current MetaMask address), as well as agree to the TokenGen Privacy Policy:

TokenGen Landing Page get whitelist dialog

Once you click the Begin button, you will be transferred into the capable hands of the Civic platform. Scan the generated barcode with your Civic mobile app and go through the KYC process (you can learn more about it here).

When you are finished with that, you just need to wait for the admin of the project to whitelist your Ethereum address, that is if they consider your KYC entry valid.

You can check if you are whitelisted by clicking on the Purchase button at the bottom of the project’s landing page. If you don’t see a message telling you that your current MetaMask address is not yet whitelisted, then you are good to go.

Wait until the fundraiser begins and purchase some of these precious digital assets (handy guide on participating in TokenGen ICOs).

Adding KYC to your project

The first and most important thing to note is that, you need to add the Whitelistable Fundraiser feature at the time of purchase.

TokenGen Whitelistable Fundraiser feature selection

Next, you need to create a deployment for your project and select it for the Landing Page. To do that, all project details must be valid, after which you can use the Deploy Smart Contracts button on the Overview tab and then confirm the MetaMask transaction.

Once the deployment is confirmed and validated, you can select it as the Landing Page deployment via the slider on the Deployments tab. The whole process takes a few minutes and is explained in this quick guide.

The last thing you need to do is provide the parameters of your Civic application on the Civic sub-tab found on the Services tab of your project:

TokenGen Civic sub-tab

Here’s how you get those three parameters. First of all, you need to install the Civic app on your phone. Then you go to the Civic integration portal and you log in by using the generated barcode, scanning it with your Civic mobile app as you provide your account details – email, phone number, and company details.

Once you log in, you need to create a new application:

Civic create application form

Enter the name of your app, for example your project’s name, and then provide a logo at the bottom. Very importantly, you need to add “” (without the quotes) to the Whitelisted Domains input.

Once you are through with that, you can go ahead and create your Civic app. Now, in order to get the needed Civic parameters, you need to generate them via the Generate Keys Now button:

Civic app generate keys now

As you generate the keys, you need to save the following parameters since they are not stored anywhere:

  • Private Signing Key
  • Secret (App Secret as we call it in TokenGen)
  • Private Encryption Key

All of these will help you in the future if you need support from Civic. In TokenGen we need the App ID, the App Secret, and the Private Signing Key.

Once you fill-in those fields on the Civic tab, you click the Save changes button, which will promptly ask you to sign a message with your currently selected MetaMask account. This signature will be used to generate a key with which the KYC entries will be encrypted. Thus, only you will know the contents of the KYC data, so they are securely stored on our servers.

This leads to the fact that, you can only see the KYC entries as long as you have access to the MetaMask account with which you signed the message. So make sure not to lose access to it.

Finally, you need to go back to the Civic integration portal, go to the KYC menu and request a KYC component be added to your app (make sure to send a message to Civic, letting them know that you will be integrating their service with TokenGen – that will speed up the KYC review process):

Civic KYC menu

It takes some time for the Civic team to verify your submission. Once they do, the KYC for your project will be enabled. If you go to its landing page, you will see the Get whitelisted button at the bottom.

From here, your community can get KYC verified through Civic and then get whitelisted so they can participate in your TGE.

Whitelisting KYC entries

Once an investor goes through the KYC process, their data will immediately appear on the KYC tab of your project:

TokenGen KYC tab selected entries

As you can see, you can easily whitelist users from the table, if you decide that their submission is valid. Of course, the Verified column shows exactly that – whether or not the user went successfully through the Civic KYC process.

This is also where you can filter your participants by country. For instance, if you don’t want to allow any participants from the U.S., you need to ignore all KYC entries from that country.

And if you change your mind about a certain entry, all you need to do is find them via the search input and blacklist them and they will no longer be able to participate in the fundraiser. To ease the process of selection, we have added a select input that allows you to quickly and easily select entries on bulk, based on specific criteria, such as verification and whitelist status.


The TokenGen 5.0 update mainly consists of the integration with Civic. The rest of the changes in the update are cosmetic, such as the change to the main menu and the various content improvements throughout the app.

As we have mentioned previously, this will be the final big update to TokenGen this year, as we fully shift our focus to Fabric Store.