AI for Structured Data

Name Screening


Name Screening is a module that can be used to automatically check a potential customer’s name and personal information against a sanction list. It allows the user to speed up the customer onboarding process and set up a more effective vetting procedure that protects a financial institution from exposure to potentially costly compliance risks.


  • The algorithm behind our Name Screening API uses a list of millions of names in order to check if a potential customer’s information matches what can be found in a particular sanction list.

  • The matching algorithm is unsupervised and is based on a well-calibrated weighting scheme that ensures a high level of precision in the results.

How it works

The basic idea behind this module is fuzzy matching between entities. Each type of attribute of the entity is processed differently depending on the configuration specified by the user.

For each attribute, the user defines an encoding method and a similarity method. The encoding methods allow normalizing some of the unwanted variability in order to make the fuzzy matching better. The similarity method allows us to return a similarity score between two attribute values, this similarity score can either be binary or real-valued between 0 and 1.

For example, if we are working on the attribute Full Name, we can use Soundex encoding, which normalizes the name using a phonetic representation. If we want to compare two first names, Meriem and Meryem, we can encode them first using Soundex so that they both get encoded to M650 which makes their similarity equal to 1. We do the same for the last names and then each part of the full name is weighted by a frequency score that was calculated on millions of names in order to give more importance to rare first or last names, for example, here the last name will be given more importance since it occurs less frequently on our database of names.

A similar approach is applied to each attribute, then the similarity scores for all attributes are aggregated using a weighted sum, where the weights are user-specified depending on the importance of each attribute given the application domain.

Figure 1. Name Screening Pipeline

The query entity is compared using this approach to all items in the sanction list and the results that have a similarity higher than a threshold are returned to the user as matches.


  • Adaptability: The module can be used with any sanction list, either pre-loaded in the 2OS platform or user-defined. 

  • Customizability: The user can also configure the importance that is assigned to each client attribute during the matching process depending on his own requirements.

  • Ease of use: Name screening can be used with any 2OS workflow in order to speed up and automate the customer onboarding process. No code or technical knowledge is required.

  • Low processing time: The matching process is optimized to be fast and efficient.

Use Case

Name Screening Fig.2

Figure 2. Example of 2OS Name Screening UI

The user needs to specify the potential customer’s information, like:

  • Name
  • Place of birth
  • Document Id
  • Date of birth

The user also needs to choose a sanction list that will be used for the screening process. This list can be either one that was pre-loaded in the 2OS database or uploaded by the user.

The algorithm will compute a similarity score between the queried customer and every entry in the sanction list and return a match if any score is above a certain threshold.

This process can allow a user to quickly identify if a potential client is flagged in a sanction or law enforcement list and thus avoid accepting them as a customer if that is proven to be the case.