Matchlists (Blocklists)
What are Matchlists?
Matchlists are a sophisticated tool in the FrankieOne platform designed to screen entities against curated lists of attributes during your KYC process. They are an evolution of traditional blocklists, offering more nuanced classification and control over your risk-based decisioning.
While the primary use case is often for “blocklisting,” the Matchlist framework is designed to be flexible, allowing for different actions based on your compliance policies. In the current implementation, Blocklists are the first type of Matchlist available.
How Matchlists Work
The process is integrated directly into the workflow engine, allowing for automated, real-time screening at onboarding.
1. Configure a Matchlist
The FrankieOne team will work with you to set up your initial Matchlists. For now, a default “Blocklist” will be created with an action of BLOCK
and a risk score.
2. Add Entries to the Matchlist
You populate your Matchlist with entries via the API. Each entry consists of one or more attributes (e.g., a name, email address, or document number) that you want to screen against.
Managing Your Matchlist and Its Entries
While you cannot create your own Matchlists yet, you have full control over managing the entries within the lists configured for you by the FrankieOne team.
Retrieve Your Matchlist Details
Use the GET /v2/matchlists
endpoint to retrieve the details of the Matchlists created for you. This is how you find the matchlistName
needed for managing entries.
Adding Entries to a Matchlist
You can add entries one by one or in bulk using the POST /v2/matchlists/{matchlistName}/entries
endpoint. Each entry must contain an array of attributes
.
Preventing Duplicate Entries
To maintain data integrity, the system enforces uniqueness rules. An entry will be rejected if it is a duplicate.
- By
entityId
: An entry with the sameentityId
as an existing entry will be rejected. - By Attribute Combination: The system also checks for uniqueness based on specific combinations of attributes, even if no
entityId
is provided.- For Individuals:
IND_GIVEN_NAME
+IND_FAMILY_NAME
+IND_DATE_OF_BIRTH
DOC_PRIMARY_IDENTIFIER
+DOC_TYPE
- For Organizations:
ORG_NAME
+ORG_REGISTERED_COUNTRY
- For Individuals:
Screening and Classifying Results
The Matchlist Workflow Step
For screening to occur, your workflow must contain a Matchlist Step. When this step executes:
- If no match is found, the step
result
isCLEAR
. - If a match is found, the step
result
isHIT
, and aBLOCKLISTED
issue withBLOCK
severity is generated.
Classifying a Match
When a match is found, a compliance officer must review it and classify it using the PATCH /v2/individuals/{entityId}/results/matchlist
endpoint.
After classifying all hits for an entity, you should re-run the workflow. This will re-evaluate the Matchlist step. If all hits have been resolved as FALSE_POSITIVE
, the step result will change to CLEARED
, and the BLOCKLISTED
issue will be removed.
Managing Individual Entries via API
You can perform full CRUD (Create, Read, Update, Delete) operations on the entries within your Matchlists.
Updating Entry Attributes
You cannot directly update the attributes
of an existing Matchlist entry. To change an attribute, you must first mark the old entry’s state
as DELETED
and then create a new entry with the updated attributes.
Adding and Removing an Entire Entity
You can also manage entries based on an entityId
.
- Add Entity:
POST /v2/matchlists/{matchlistName}/entries/addEntity
- Remove Entity:
PATCH /v2/matchlists/{matchlistName}/entries/removeEntity
(This sets the entrystate
toDELETED
).
Reference: Reason Codes
When adding an entry to a blocklist, you can provide one or more reason codes to add context for auditing and review.
Configurable Attributes for Matchlist Checks
You can use any of the following attributes to create rules for matchlist checking: