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.
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:
- Create a web form for end-users to enter personal and company details.
- Look up the information on official registries. In particular:
- Retrieve basic company details and enrich your data.
- Gain insights into financials.
- Identify roles within the organisation.
- Get a list of Ultimate Beneficial Owners (UBOs).
- Screen the individuals for PEP, sanctions and adverse media matches.
- Ask the end-users for confirmation and display intermediate results.
- 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:
- Form (built-in) to create web forms.
- Data Verification to perform corporate registry checks.
Prerequisites
To proceed with the tutorial, you must have completed the following initial preparations:
- Sign up to the Signicat Dashboard and register your profile. For more details, see the Get started with Signicat guide.
- 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.
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:
- In the Signicat Dashboard, go to Products > Signicat Mint.
- In the left menu, select Builder.
- Choose Blank.
- 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 seeThe name and description of a Flow are visible to end-users in the user journey.
- 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:
- In the canvas, select the plus icon (+), then Step to add a new step.
- In the left "Steps" menu, select Signicat > Form to add an empty form.
3. Add a header
- In the left "Elements" menu, select Special elements > Header.
- In the canvas, select Placeholder to edit the header element.
- In the left menu, edit the Text field to "KYB Process".
- Set the Header type to
h2.
4. Add a text block
- In the left "Elements" menu, select Special elements > Text Block.
- In the canvas, select Placeholder to edit the text.
- 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
- In the left "Elements" menu, select Grouping > Section.
- In the canvas, select Section to edit it.
- In the left menu, edit the Section title to "Your contact information" and disable the Collapsable toggle.
- 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:
- In the left "Elements" menu, select Inputs > Text.
- In the left menu, edit the Label to "Company number".
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:
- In the canvas, select the plus icon (+), then Step to add a new step.
- In the left "Steps" menu, select Data Verification > Organisation Basic info lookup.
- Configure the step:
- Country: ISO 3166-1 alpha-2 country code where the organisation is registered. For example,
sefor 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.
- Country: ISO 3166-1 alpha-2 country code where the organisation is registered. For example,
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.
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:
- In the canvas, select the plus icon (+), then Conditional logic.
- In the left "Conditional configuration" menu, do this:
- Step title: Edit to
Check for basic company result - True: Set the following condition:
Step outcome> Equals > Done
- Finally, select Save, in the left "Conditional configuration" menu, to save the conditional logic.
- Step title: Edit to
- In the canvas, select the plus icon (+) inside the False box and add a Set Name step with the following configuration:
- Step title: Edit to
Set journey identifier - Value: Set
Organisation basic info lookup.name
- Step title: Edit to
- In the canvas, select the plus icon (+) inside the Else box and add the following steps:
- 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.
- Header: Set Text to
- Redirect user: Enter a URL where to redirect users when the user journey fails. To redirect at the start, select the More Options icon () at the top right, then Copy workflow URL and paste the value in the box.
- Finish: To stop any steps that prevent the workflow from terminating, add
Finishedto "Outcome Names".
- Form: Add a text box to explain that the company was not found. For example, you could add the following elements:
Now, save your flow by selecting Save at the top right.
So far, you've designed your workflow to:
- Display a web form to the end-users to enter their personal details and company registration number.
- 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:
- In the canvas, select the plus icon (+), then Step to add a new step.
- In the left "Steps" menu, select Data Verification > Organisation finance lookup.
- Configure the step:
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
sefor 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.
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
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:
- In the canvas, select the plus icon (+), then Step to add a new step.
- In the left "Steps" menu, select Data Verification > Organisation roles lookup.
- Configure the step:
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
sefor 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.
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
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:
- In the canvas, select the plus icon (+), then Step to add a new step.
- In the left "Steps" menu, select Data Verification > Organisation UBO lookup.
- Configure the step:
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
sefor 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.
- Country: Country code the organisation is registered (ISO 3166-1 country code). For example,
Loop over UBOs
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:
- In the canvas, select the plus icon (+), then List-based Loop.
- In the left menu, do this:
- Step title: Edit to
Loop UBOs: Persons. - Target list: Set to
Organisation UBO lookup.ultimateBeneficiaryOwners. - Select Save, in the left menu, to save the loop configuration.
- Step title: Edit to
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:
- 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.
- In the left "Steps" menu, select Data Verification > Person PEP and sanction.
- Configure the step:
- Name: Type or select the + (plus) icon and choose the
Loop UBOs: Persons.name.fullvariable. - List Types: Select all:
PEP,SanctionandAdverse media.
- Name: Type or select the + (plus) icon and choose the
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:
- In the box inside the List-based Loop in the canvas, select the plus icon (+), then Conditional logic.
- In the left "Conditional configuration" menu, do this:
- Step title: Edit to
Check for UBO screening - True: Set the following condition:
Person PEP and sanction > screenedItemsCount> Greater than >0
- Finally, select Save to save the conditional configuration.
- Step title: Edit to
- In the canvas, select the plus icon (+) inside the False box and add a Set Variable step with the following properties:
- Variable Name: Edit to
flagged_ubo - Value: Edit to
true
- Variable Name: Edit to
- Inside the False box in the canvas, add a Trigger Alert step and:
- In the left configuration menu, edit the Step title to
Alert: UBO Screening - Edit the Target Step property to
Person PEP and sanction - Set the Severity to
Critical - In the message, type
Screening Match:, then select the plus icon (+) on the right to enter the variableLoop UBOs: Persons.name.full.
- In the left configuration menu, edit the Step title to
- Leave the Else box empty and proceed to the next section below.
- 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:
- 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.
- Header: Set Text to
- Redirect user: Enter a URL where to redirect users.
- Finish: To stop any steps that prevent the workflow from terminating. Add
Finishedto "Outcome Names".
Save and Publish
Now, it's time to save and publish your workflow, so you can share it with your end-users.
- Select Save at the top-right corner.
- 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.
To copy the workflow URL again, select the More Options icon () 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: