How to use the KYC constructor

Before you begin to configure a custom KYC (Know Your Customer) process, consider the following:

  • how many verification levels you want to support (you can use the built-in KYC provider or one of the supported third-party KYC providers to run a verification process at each level)

  • which restrictions and limits you want to set for each level

  • which documents your client must provide for each level

Follow the steps below to create and set up the required verification levels and documents in the Back Office, as well as configure their appearance in the B2Core UI.

How to create document groups

At this step, create document groups, for example, “Proof of ID”, “Proof of residence” and so on. Document groups are used to categorize documents required for verification.

To create a document group, do the following:

  1. Navigate to Verification > Document Groups in the menu, and then click +Create in the upper-right corner of the screen.

  2. On the Create document group screen, fill out the form:

  • Set the group Name, which will be displayed only in the Back Office.

  • Set Type to One.

  • Set Caption — the name of the document group in the B2Core UI. Set localizations if needed.

  • Set Description — here, you can provide hints to your clients about the verification procedure. This information can be presented in the HTML format. Set localizations if needed.

  • Set Enabled to Yes.

  1. Click Save to create the document group.

How to create documents

A KYC document is a formal document such as an ID card, a passport, driver’s license or bank statement, which can verify the identity and address of a client. At this step, define documents that clients should provide in order to get verified at each level.

To define a document, do the following:

  1. Navigate to Verification > Document Types in the menu, and then click +Create in the upper-right corner of the screen.

  2. On the Create document type screen, fill out the form:

  • Set the document Name, which will be displayed only in the Back Office.

  • Set Caption to specify the document name to be displayed in the B2Core UI. Set localizations if needed.

  • Set Description — the description can be specified in the HTML format. Set localizations if needed.

  • Set Status to Enabled.

  • Set the document Group — it should be one of the groups created at the previous step.

  • Set Max files to indicate how many documents of this type your client can upload.

  1. Click Save to define the document type.

How to create verification levels

At this step, create the required verification levels. For each B2Core instance, the Level 0 is already set up and is used as the default level.

To create a new verification level, do the following:

  1. Navigate to Verification > Levels in the menu, and then click +Create in the upper-right corner of the screen.

  2. On the Create verification level page, fill out the form:

  • Set the level Index, this value must be greater than 0.

  • Set Wizard — select DocumentsWizard to use the built-in KYC provider and display in the B2Core UI a form for uploading required documents based on the specified document type.

  • Set Caption — the level name to be displayed to clients in the B2Core UI and mobile app. If required, specify the localization properties for this field by clicking the button located on the right side of the field.

  • Set Next Level — select the next verification level that clients can be granted after obtaining the current verification level.

  • Set Desktop Description — the level description displayed to clients in the B2Core UI. For a level description, you can list the permissions granted to clients after obtaining this level.

    The description for the B2Core UI can be specified in the HTML format (see Example below). If required, specify the localization properties for this field.

  • Set Mobile Description — the level description displayed to clients in the mobile app.

    The description for the mobile app can be specified in the JSON format. If required, specify the localization properties for this field.

  1. Click Save to create the verification level.

Example

The following HTML code example illustrates how to specify a level description for the B2Core UI:

    <p><strong>Verification Level 0</strong>
    <br/>
    <br/>
    <table class="table table-striped" role="grid">
    <br/>
    <tbody>
    <tr>
    <td style="background-color: #151D24;"><strong>Operations</strong></td>
    <td style="background-color: #151D24;">
    <center><strong>Permissions</strong></center>
    </td>
    </tr>
    <tr>
    <td style="background-color: #3E4E5A;">Crypto Deposits</td>
    <td style="background-color: #3E4E5A;">
    <center><span class="glyphicon glyphicon-error" aria-hidden="true"></span></center>
    </td>
    </tr>
    <tr>
    <td style="background-color: #212E38;">Crypto Withdrawals</td>
    <td style="background-color: #212E38;">
    <center><span class="glyphicon glyphicon-error" aria-hidden="true"></span></center>
    </td>
    </tr>
    <tr>
    <td style="background-color: #3E4E5A;">Fiat Deposits</td>
    <td style="background-color: #3E4E5A;">
    <center><span class="glyphicon glyphicon-error" aria-hidden="true"></span></center>
    </td>
    </tr>
    <tr>
    <td style="background-color: #212E38;">Fiat Withdrawals</td>
    <td style="background-color: #212E38;">
    <center><span class="glyphicon glyphicon-error" aria-hidden="true"></span></center>
    </td>
    <tr>
    <td style="background-color: #212E38;">Trading</td>
    <td style="background-color: #212E38;">
    <center><span class="glyphicon glyphicon-error" aria-hidden="true"></span></center>
    </td>
    </tr>
    </tbody>
    </table>
    <p><strong>To obtain Verification Level 1, submit the following documents:</strong></p>
    <ul>
    <li>A list of documents that a client must submit or other requirements that must be met for receiving Level 1.</li>

Note

To mark an operation as enabled for this verification level, change glyphicon glyphicon-error to glyphicon glyphicon-success in the HTML code.

The level description will be displayed in the B2Core UI as follows:

Verification level description

How to create permission levels

Permission levels are a set of operations that clients are allowed to make in the B2Core UI. The permission levels are associated with verification levels. When clients obtain a particular verification level, they are granted the permissions associated with this verification level.

To create a permission level, do the following:

  1. Navigate to System > Client Rights, and click +Create in the upper-right corner of the page.

  2. In the Create role window that is displayed, fill in the following fields:

  • Name — specify the name of the verification level, which should not include any capital letters.

  • Caption — specify the permission level description.

  1. Click Save to create the permission level.

  2. Click the Edit button located in the permission level row.

  3. From the Parent Role drop-down list, select a previous permission level that clients must obtain before they can get this level. This field is not applicable to the default permission level.

  4. Select the permissions that you want to grant to your clients at this level:

  • Verification — if selected, clients are allowed to obtain a higher verification level in the B2Core UI.

  • Converter — if selected, clients can exchange funds in the B2Core UI.

  • Deposits — if selected, clients can deposit funds in the B2Core UI.

  • Withdrawals — if selected, clients can withdraw funds in the B2Core UI.

  • Internal Transfers — if selected, funds can be transferred from one client to another within the same B2Core system.

  1. Click Save to apply the changes.

How to set up deposit, withdrawal and transfer limits by verification levels

For each verification level, you can limit the amounts that clients who are granted this level can deposit, withdraw and transfer.

Note

All limit values are calculated in USD.

To set up limits for a particular level, do the following:

  1. Navigate to Verification > Levels.

  2. Select a verification level for which you want to set up limits, and then click the Edit button located in the level row.

  3. On the Update verification level screen, fill in the fields displayed under the Limits section:

  • To limit the amount that clients can deposit per day, specify the maximum allowed value in the Daily deposit field.

  • To limit the amounts that clients can withdraw per day and per month, specify the maximum allowed values in the Daily withdraw and Monthly withdraw fields.

  • To set the minimum amount that clients can transfer, specify the Transfer min. field. It is not allowed to transfer amounts that are less than the assigned limit.

  • To allow clients to withdraw certain amounts without obtaining approvals, specify the maximum allowed amount in the Auto withdraw field. The amounts that do not exceed the assigned limit can be withdrawn by clients automatically (without the admin approval).

  • To set the maximum allowed amount for internal transfer operations per day, specify the Daily internal transfer field. If a client wants to make an internal transfer after reaching a specified limit, a request for the internal transfer is created and must be approved by an admin.

Note

If a client makes an internal transfer to or from an MT account, the MT platform settings override the Daily internal transfer option.

If the Request required for transfer from and Request required for transfer to options are enabled for the MT platform, the Daily internal transfer option is ignored, and requests for internal transfers are always created and must be approved by an admin.

To apply no limits, enter -1 in the corresponding field described above. To prohibit clients from making a specific transaction, enter 0 in the corresponding field described above.

  1. Click Save to apply the changes.