Skip to main content

KYB: Business verification

Know Your Business (KYB) is a due diligence procedure to understand and verify the structure, ownership and activities of a company ahead of establishing business relationships. KYB verification is a key component of Anti-Money Laundering (AML) and Combating the Financing of Terrorism (CFT) regulations.

A typical KYB process involves a series of steps to check organisation data in official registries, retrieve ownership information, identify Ultimate Beneficial Owners (UBOs), conduct screening for Politically Exposed Persons (PEP) and authenticate members.

Signicat Mint helps you design KYB workflows that verify key data about an organisation, reduce risks of working with fraudsters and avoid the risk of receiving fines from regulators.

This tutorial aims to build a basic Mint workflow to perform KYB verification. While it will provide you with a scaffold that you can expand and customise, this tutorial is for informational purposes only and does not constitute legal advice.

New to Mint?

If you are new to Signicat Mint, we recommend you start your journey with the Build your first flow guide.

Workflow overview

Although a KYB process can vary from country to country based on local regulations, there are many common steps across jurisdictions. A typical KYB workflow involves the following steps:

Workflow overview
  1. Create a web form for end-users to enter personal and company details.
  2. Look up the information on official registries. In particular:
    1. Retrieve basic company details and enrich your data.
    2. Gain insights into financials.
    3. Identify roles within the organisation.
    4. Get a list of Ultimate Beneficial Owners (UBOs).
    5. Screen the individuals for PEP, sanctions and adverse media matches.
  3. Ask the end-users for confirmation and display intermediate results.
  4. Complete the user journey and redirect the end-users to a custom landing page.

The steps in this tutorial rely on the following Signicat services:

Prerequisites

To proceed with the tutorial, you must have completed the following initial preparations:

  1. Sign up to the Signicat Dashboard and register your profile. For more details, see the Get started with Signicat guide.
  2. In the Dashboard, make sure you have set up an organisation, an account and a domain.
    Sandbox and production accounts

    We recommend you create a sandbox account to test our services before going live. Sandbox and production accounts must be set up separately.

If you require assistance, you can contact us by creating a support ticket in the Dashboard.

Permissions

To perform the operations described in this page, you need to have access to the following products and permissions in the Signicat Dashboard:

  • Signicat Mint and any of the following permissions: Mint Workflow Builder Editor, Mint Editor or Mint Admin.
  • Data Verification and the data sources used in this tutorial.
Data sources

To manage your data sources in the Signicat Dashboard, go to Products > Data Verification. In production, you first need to activate the data source in the Signicat Marketplace or through an account manager.

Build the workflow

Below, you find step-by-step instructions to build a KYB workflow.

Create a new Flow

To create a new Mint Flow, do the following:

  1. In the Signicat Dashboard, go to Products > Signicat Mint.
  2. In the left menu, select Builder.
  3. Choose Blank.
  4. Edit a name and a description for the Flow. For example:
    • Name: "Know Your Business (KYB)"
    • Description: "Onboard and verify your business."
    What end-users see

    The name and description of a Flow are visible to end-users in the user journey.

  5. Select Create flow.

Now, you are ready to add steps to the workflow.

Add a web form

Whether it is through an input field or a table, a web form helps you receive data and display it to the end-users. The Form step allows you to add modular elements, such as input fields or text boxes, that are visible and interactive in the user journey.

In your KYB process, you can use web forms to collect information about an organisation, such as the name or business registration number. Additionally, you can display text to provide instructions and context to a prospective customer. To do this:

  1. In the canvas, select the plus icon (+), then Step to add a new step.
  2. In the left "Steps" menu, select Signicat > Form to add an empty form.
3. Add a header
  1. In the left "Elements" menu, select Special elements > Header.
  2. In the canvas, select Placeholder to edit the header element.
  3. In the left menu, edit the Text field to "KYB Process".
  4. Set the Header type to h2.

4. Add a text block
  1. In the left "Elements" menu, select Special elements > Text Block.
  2. In the canvas, select Placeholder to edit the text.
  3. In the left menu, edit the Text field to provide context. For example:
    "To perform KYB verification, we need a few details about your company. We'll verify and enrich the data by checking trusted registry sources."

5. Add a new section
  1. In the left "Elements" menu, select Grouping > Section.
  2. In the canvas, select Section to edit it.
  3. In the left menu, edit the Section title to "Your contact information" and disable the Collapsable toggle.
  4. Add the following input elements to the section:
    • Text: Set label to "Full name".
    • Email: Set label to "Email address".
    • Phone: Set label to "Phone number".

6. Add an input text

To add a box for your end-users to provide the company registration number of their organisation, do this:

  1. In the left "Elements" menu, select Inputs > Text.
  2. In the left menu, edit the Label to "Company number".
Remember to save

After adding a step, it is important to save your flow to prevent losing any progress you made. To save a flow, select Save at the top right.

Add Organisation basic info lookup

The Organisation basic info lookup fetches information about an organisation like trade name, address, organisation type, legal status and industry sector.

To add this step to your flow:

  1. In the canvas, select the plus icon (+), then Step to add a new step.
  2. In the left "Steps" menu, select Data Verification > Organisation Basic info lookup.
  3. Configure the step:
    • Country: ISO 3166-1 alpha-2 country code where the organisation is registered. For example, se for Sweden.
    • Organisation ID: Type or select the + (plus) icon and choose "Company number". For example, Form - Process start.Company number.
    • Source: Choose the data source to look up organisation data. For example, Bolagsverket Sweden.
Background steps

Lookup steps run in the background, so end-users do not see nor interact with them in the user journey.


You can show a custom waiting message while the workflow continues by editing the Waiting message on the left Step options menu.

Add a conditional

When looking up organisation data on a register, you rely on the data being available on the source provider side. Based on whether any data is retrieved, the lookup step may produce different outcomes.

Conditional steps

To address different outcomes in a Mint workflow, you can use a conditional step. This allows you to split your workflow into parallel routes depending on whether a certain condition is met.

In the KYB workflow, you need to tackle these condition-dependent scenarios:

  • Condition: Look up a company on a register.
  • Condition is True: If a company is found, then continue.
    • Optional action: Store the company name as journey metadata.
  • Condition is False: If a company is not found, then show a web form with an error message and redirect users back to the start.

To define the above conditional logic in your Mint Flow:

  1. In the canvas, select the plus icon (+), then Conditional logic.
  2. In the left "Conditional configuration" menu, do this:
    1. Step title: Edit to Check for basic company result
    2. True: Set the following condition:
      • Step outcome > Equals > Done
    3. Finally, select Save, in the left "Conditional configuration" menu, to save the conditional logic.
  3. In the canvas, select the plus icon (+) inside the False box and add a Set Name step with the following configuration:
    1. Step title: Edit to Set journey identifier
    2. Value: Set Organisation basic info lookup.name
  4. In the canvas, select the plus icon (+) inside the Else box and add the following steps:
    1. Form: Add a text box to explain that the company was not found. For example, you could add the following elements:
      • Header: Set Text to Company not found
      • Text block: A description of what happened. For example, The registration number you entered was not found. Try again.
    2. Redirect user: Enter a URL where to redirect users when the user journey fails. To redirect at the start, select the More Options icon (more_vert) at the top right, then Copy workflow URL and paste the value in the box.
    3. Finish: To stop any steps that prevent the workflow from terminating, add Finished to "Outcome Names".

Now, save your flow by selecting Save at the top right.

Recap

So far, you've designed your workflow to:

  1. Display a web form to the end-users to enter their personal details and company registration number.
  2. Look up the company registration number in a registry, and based on the response:
    • If successful, update the workflow identifier with the organisation name.
    • If not found, inform the end-user, redirect back to the start and terminate the underlying workflow.

Next, a KYB process involves a series of steps to enrich and verify the information you have obtained so far. For example, retrieving the financial details of the organisation.

Add Organisation finance lookup

The Organisation finance lookup step retrieves financial information about an organisation, including financial statements, credit rating, and yearly profit/turnover figures.

To add this step to your flow:

  1. In the canvas, select the plus icon (+), then Step to add a new step.
  2. In the left "Steps" menu, select Data Verification > Organisation finance lookup.
  3. Configure the step:
    • Country: Country code the organisation is registered (ISO 3166-1 country code). For example, se for Sweden.
    • Organisation ID: Type or select the + (plus) icon and choose "Company number" as a variable. For example, Form - Process start.Company number.
    • Source: Choose the data source to look up organisation data. For example, Creditsafe.

Add Organisation roles lookup

The Organisation roles lookup step provides the personal details of natural persons who have a registered role in an organisation, such as board members and daily management. In addition, this step returns information about external third-party service providers, such as accountancy and bookkeeping firms.

To add this step to your flow:

  1. In the canvas, select the plus icon (+), then Step to add a new step.
  2. In the left "Steps" menu, select Data Verification > Organisation roles lookup.
  3. Configure the step:
    • Country: Country code the organisation is registered (ISO 3166-1 country code). For example, se for Sweden.
    • Organisation ID: Type or select the + (plus) icon and choose "Company number" as a variable. For example, Form - Process start.Company number.
    • Source: Choose the data source to look up organisation data. For example, Bolagsverket Sweden.

Add Organisation UBO lookup

The Organisation UBO lookup step provides information about the Ultimate Beneficial Owners (UBOs) of an organisation.

To add this step to your flow:

  1. In the canvas, select the plus icon (+), then Step to add a new step.
  2. In the left "Steps" menu, select Data Verification > Organisation UBO lookup.
  3. Configure the step:
    • Country: Country code the organisation is registered (ISO 3166-1 country code). For example, se for Sweden.
    • Organisation ID: Type or select the + (plus) icon and choose "Company number" as a variable. For example, Form - Process start.Company number.
    • Source: Choose the data source to look up organisation data. For example, Bolagsverket Sweden.

Loop over UBOs

List-based Loops

To repeat an operation on every item stored in a list, you can use a List-based Loop step. This allows you to apply one or many steps iteratively to the items in an object present in your workflow, including data from previous steps.

To iterate over the UBOs using a List-based Loop, do this:

  1. In the canvas, select the plus icon (+), then List-based Loop.
  2. In the left menu, do this:
    1. Step title: Edit to Loop UBOs: Persons.
    2. Target list: Set to Organisation UBO lookup.ultimateBeneficiaryOwners.
    3. Select Save, in the left menu, to save the loop configuration.

Person PEP and sanction

As part of your KYB workflow, you may want to check whether any of the UBOs is on a Politically Exposed Person (PEP), sanction or adverse media list.

You can perform a PEP, sanctions and adverse media check for every person found in the UBOs list by the Person PEP and sanction step. To do this:

  1. In the box inside the List-based Loop in the canvas, select the plus icon (+), then Step to add a step inside the loop context.
  2. In the left "Steps" menu, select Data Verification > Person PEP and sanction.
  3. Configure the step:
    • Name: Type or select the + (plus) icon and choose the Loop UBOs: Persons.name.full variable.
    • List Types: Select all: PEP, Sanction and Adverse media.

The Person PEP and sanction step returns the type of check (PEP, sanction or adverse media), a certainty match score, together with additional information about the person, such as address, gender and date of birth.

To receive a notification for reviewing all cases that have at least one match, you need to add a check for when a UBO appears on any PEP/sanction/adverse media list.

Check for UBO screening

To check whether any UBO is on a PEP/sanction/adverse media list, you need to add a Conditional step that is true when more than one result is found. To do this:

  1. In the box inside the List-based Loop in the canvas, select the plus icon (+), then Conditional logic.
  2. In the left "Conditional configuration" menu, do this:
    1. Step title: Edit to Check for UBO screening
    2. True: Set the following condition:
      • Person PEP and sanction > screenedItemsCount > Greater than > 0
    3. Finally, select Save to save the conditional configuration.
  3. In the canvas, select the plus icon (+) inside the False box and add a Set Variable step with the following properties:
    1. Variable Name: Edit to flagged_ubo
    2. Value: Edit to true
  4. Inside the False box in the canvas, add a Trigger Alert step and:
    1. In the left configuration menu, edit the Step title to Alert: UBO Screening
    2. Edit the Target Step property to Person PEP and sanction
    3. Set the Severity to Critical
    4. In the message, type Screening Match: , then select the plus icon (+) on the right to enter the variable Loop UBOs: Persons.name.full.
  5. Leave the Else box empty and proceed to the next section below.
  6. Below the conditional step but inside the Loop, add a Store loop step data step. In the Steps property, choose Person PEP and sanction. This will store all data retrieved in the loop.

The steps above will trigger an alert that you can see in the Mint Journeys when reviewing the outcome of a user journey. To learn more about alerts, see the Trigger alert step.

Now, let's add a few final steps to inform the user that they completed the KYB verification process and redirect them to your website, before terminating the workflow.

End the workflow

To inform and redirect the user, add the following steps:

  1. Form: Add a text box to explain that the workflow is about to end. For example, you could add the following elements:
    • Header: Set Text to Thank you
    • Text block: A description of what happened. For example, The KYB process is almost done! Select Submit to complete the process. We will review the submission and get back to you soon.
  2. Redirect user: Enter a URL where to redirect users.
  3. Finish: To stop any steps that prevent the workflow from terminating. Add Finished to "Outcome Names".

Save and Publish

Now, it's time to save and publish your workflow, so you can share it with your end-users.

  1. Select Save at the top-right corner.
  2. Select Publish to publish the flow. Now, Mint generates a public URL that you can share with your end-users. The workflow URL is automatically copied to your clipboard.
Where to find the workflow URL

To copy the workflow URL again, select the More Options icon (more_vert) at the top-right corner. Then, select Copy workflow URL.

See it in action

In your browser, open a new window and paste the workflow URL to start the user journey and test how your end-users experience the workflow.

View and monitor user journeys

You can find reports of all the finished, suspended and failed user journeys in Mint Journeys. To learn more about the interface, visit the Mint Journeys documentation.

Next steps

Continue your journey with Mint: