Comment on page
AML Screening Check
Screen clients against ComplyCube's Sanctions & Watchlists, PEP, and Adverse Media database.
- 1.
standard_screening_check
, or - 2.
extensive_screening_check
For a client of type
person
, you can run an AML Screening Check when the firstName
and lastName
are present. For a company, only the name
is required.The more data you provide for a client, the more accurate the AML Screening Check results. This will ultimately reduce the number of potential 'false positive' matches.
It is highly recommended that you provide the client's date of birth in addition to the first and last names of persons.
Attribute | Type | Description |
clientId | string | The ID of the client associated with this check. (Required) |
type | string | The type of AML screening check. Valid values include:
(Required) |
enableMonitoring | boolean | Determines whether continuous monitoring is enabled. When not provided, it defaults to false. (Optional) |
options | object |
Attribute | Description |
screeningListsScope | Type: object
When this attribute is not provided, we will search all eligible lists. |
screeningNameSearchMode | Type: string
The name matching technique to apply:
When this attribute is not provided, we will use fuzzy name matching. |
screeningClassification | Type: array[string]
The match classifications to include as part of a screening check. Valid values include:
When this attribute is not provided, we will conduct a search against all eligible classifications. |
Attribute | Description |
mode | Type: string
The criteria to apply to the lists when performing a screening search. Valid values include:
When this attribute is not provided, it will default to inclusion . |
lists | Type: array[string]
The lists to include or exclude as part of the screening search. |
cURL
Node.js
Python
PHP
.NET
curl -X POST https://api.complycube.com/v1/checks \
-H 'Authorization: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"clientId":"CLIENT_ID",
"type": "extensive_screening_check"
}'
const { ComplyCube } = require("@complycube/api");
const complycube = new ComplyCube({ apiKey: "<YOUR_API_KEY>" });
const check = await complycube.check.create("CLIENT_ID", {
type: "extensive_screening_check"
});
from complycube import ComplyCubeClient
cc_api = ComplyCubeClient(api_key='<YOUR_API_KEY>')
check = cc_api.checks.create('CLIENT_ID','extensive_screening_check')
use ComplyCube\ComplyCubeClient;
$ccapi = new ComplyCubeClient('<YOUR_API_KEY>');
$result = $ccapi->checks()->create('CLIENT_ID',
['type' => 'extensive_screening_check']);
using ComplyCube.Net;
using ComplyCube.Net.Resources.Checks;
var checkApi = new CheckApi(new ComplyCubeClient("<YOUR_API_KEY>"));
var checkRequest = new CheckRequest
{
clientId = "CLIENT_ID",
type = "extensive_screening_check"
};
var check = await checkApi.CreateAsync(checkRequest);
cURL
Node.js
Python
PHP
.NET
curl -X POST https://api.complycube.com/v1/checks \
-H 'Authorization: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"clientId":"CLIENT_ID",
"type": "extensive_screening_check",
"enableMonitoring": true,
"options":{
"screeningClassification": ["otherListsFinancialCrime"],
"screeningNameSearchMode": "precise",
"screeningListsScope": {
"mode": "inclusion",
"lists": ["Companies House (UK) Disqualified Directors"]
}
}
}'
const { ComplyCube } = require("@complycube/api");
const complycube = new ComplyCube({ apiKey: "<YOUR_API_KEY>" });
const check = await complycube.check.create("CLIENT_ID", {
type: "extensive_screening_check",
enableMonitoring: true,
options: {
screeningClassification: ["otherListsFinancialCrime"],
screeningNameSearchMode: "precise",
screeningListsScope": {
mode:"inclusion",
lists: ["Companies House (UK) Disqualified Directors"]
}
}
});
from complycube import ComplyCubeClient
cc_api = ComplyCubeClient(api_key='<YOUR_API_KEY>')
options = {
'screeningClassification': ['otherListsFinancialCrime'],
'screeningNameSearchMode': 'precise',
'screeningListsScope': {
'mode':'inclusion',
'lists': ['Companies House (UK) Disqualified Directors']
}}
check = cc_api.checks.create( 'CLIENT_ID',
'extensive_screening_check',
options=options)
use ComplyCube\ComplyCubeClient;
$ccapi = new ComplyCubeClient('<YOUR_API_KEY>');
$check = [ 'type' => 'extensive_screening_check',
'options' => [
'screeningClassification' => ['pepLevel1'],
'screeningNameSearchMode' => 'precise',
'screeningListsScope' => [
'mode' => 'inclusion',
'lists' => ['Companies House (UK) Disqualified Directors']
]
]
];
$result = $ccapi->checks()->create('CLIENT_ID', $check);
using ComplyCube.Net;
using ComplyCube.Net.Resources.Checks;
var checkApi = new CheckApi(new ComplyCubeClient("<YOUR_API_KEY>"));
var checkRequest = new CheckRequest
{
clientId = "CLIENT_ID",
type = "extensive_screening_check"
};
checkRequest.options = new CheckRequestOptions {
screeningClassification = new string[] { "pepLevel1" },
screeningNameSearchMode = "precise",
analysisCoverage = new string[] {
"consistency_analysis",
"forensic_analysis" }};
var check = await checkApi.CreateAsync(checkRequest);
The
result
object is only returned when the status of the check is complete
. It has two components - outcome
and breakdown
.The outcome attribute represents the overall check result. Returned values include:
- 1.
clear
: Indicates ComplyCube found no matches. - 2.
attention
: Indicates ComplyCube found potentials matches.
All summary results will either return
clear
, attention
, or not_processed
. The value not_processed
is expected to return on Standard AML Screening checks, as the service coverage scope is a subset of an Extensive AML Screening.The breakdown comprises the following objects:
The outcome summary of the check. For each conducted check, the returned values include:
- 1.
clear
: Indicates no matches were found on the corresponding database. - 2.
attention
: Indicates potential matches found on the corresponding database. - 3.
not_processed
: Returned when the corresponding database has not been checked. This is to be expected for Standard AML Screening checks, as the coverage scope is a subset of an Extensive AML Screening check as highlighted on the service page.
watchlist
: Contains the outcome for checks against the Sanctions & Watchlist database, with matches classified with one or more of the following values:sanctionsList
terror
warCrimes
otherOfficialLists
otherExclusionLists
sanctionsControlAndOwnership
pep
: Contains the outcome for checks against the Politically Exposed Persons (PEP) database, with matches classified as per the levels described here.level1
level2
level3
level4
adverseMedia
: Contains the outcome for checks against the Adverse Media database, with matches classified with one or more of the following values:competitiveFinancial
regulatory
:environmentProduction
socialLabour
otherLists
: Contains the outcome for checks conducted against other prudent lists, with matches classified with one or more of the following values:taxCrime
corruption
trafficking
financialCrime
organisedCrime
associatedEntity
The matches array contains a list of match objects, which contain the details of the entity that matched with the screened client's details. For each
match
object has the following constituents:id
: The unique identifier for a match.score
: The match score, as calculated by ComplyCube. A higher score indicates a closer match.details
: This contains the details of a match.entityName
: The full name of the matched entity.
entityType
: The type of matched entity. Values include:person
company
classifications
: This contains key and string array pairs that classify the match. Possible values of the key and associated string array will align with the summary object's key.
names
: An array ofname
objects that contain all known aliases for the match. Thename
object has the following attributes:type
: The type of name. Values include:primary
: The Latin name by which entity is primarily or legally known as.alias
: An alias by which the entity is also known as.localised_name
: The entity name as transcribed or known in languages or scripts such as Arabic, Cyrillic, Sanskrit, and so forth.
firstName
: The match's first name.middleName
: The match's middle name.lastName
: The match's last name.entityName
: The match's complete name, returned forperson
andcompany
.
countries
: An array of value pair objects covering known associated countries for the match.type
: The type of association.
birthPlaces
: An array of strings that contain all known birthplaces for the match.
gender
: The gender of the match, if of typeperson
. Values include:male
female
other
deceased
: A boolean that indicates whether the match is deceased.
occupations
: An array ofoccupation
objects that contain all known occupations for the match. This is only returned when the match is a Politically Exposed Person (PEP). Theoccupation
object has the following attributes:type
: The type of occupation.category
: The category of the occupation.title
: The role title.
dates
: An array of value pair objects covering important dates associated with the match.type
: The type of date.
addresses
: An array ofaddress
objects that contain known associated countries for the match. Theaddress
object has the following attributes:line
: The line of the address.city
: The city or town of the address.postalCode
: The post or zip code of the client's address.
references
: An array ofreference
objects that contain list references for the match. Thereference
object has the following attributes:source
: The source name.
identifications
: An array of value pair objects covering known identifications associated with the match.type
: The type of identification.value
: The value or reference associated with the identification.
images
: An array of strings that contain URIs of images for the match.
{
"id": "5ebe587ffd7de4000876118e",
"entityName": "Viktor Shayman",
"type": "extensive_screening_check",
"clientId": "5ebe587bfd7de4000876118d",
"status": "complete",
"enableMonitoring": false,
"result": {
"outcome": "attention",
"breakdown": {
"summary": {
"otherLists": {
"associatedEntity": "attention",
"organisedCrime": "clear",
"financialCrime": "clear",
"taxCrime": "clear",
"corruption": "clear",
"trafficking": "clear"
},
"pep": {
"level2": "attention",
"level3": "attention",
"level1": "attention",
"level4": "clear"
},
"watchlist": {
"sanctionsLists": "clear",
"otherOfficialLists": "clear",
"warCrimes": "clear",
"terror": "clear",
"otherExclusionLists": "clear",
"sanctionsControlAndOwnership": "clear"
},
"adverseMedia": {
"environmentProduction": "clear",
"socialLabour": "clear",
"competitiveFinancial": "clear",
"regulatory": "clear"
}
},
"matches": [
{
"id": "5ebe5880fd7de4000876118f",
"score": 100,
"status": "attention",
"details": {
"entityName": "Viktor Vladimirovich Sheyman",
"entityType": "person",
"gender": "male",
"deceased": false,
"names": [
{
"type": "primary",
"firstName": "Viktor",
"middleName": "Vladimirovich",
"lastName": "Sheyman",
"entityName": "Viktor Vladimirovich Sheyman"
},
{
"type": "localised_name",
"entityName": "Віктар Уладзіміравіч Шэйман"
},
{
"type": "localised_name",
"entityName": "Шейман Виктор Владимирович"
},
{
"type": "localised_name",
"entityName": "Виктор Владимирович Шейман"
},
{
"type": "alias",
"firstName": "Victor",
"middleName": "Vladimirovich",
"lastName": "Sheyman",
"entityName": "Victor Vladimirovich Sheyman"
},
{
"type": "alias",
"firstName": "Victor",
"middleName": "Vladimirovich",
"lastName": "Sheiman",
"entityName": "Victor Vladimirovich Sheiman"
}
],
"countries": [
{
"type": "Born in",
"country": "BY"
},
{
"type": "Citizenship",
"country": "BY"
},
{
"type": "Resident of",
"country": "BY"
},
{
"type": "Jurisdiction",
"country": "BY"
}
],
"birthPlaces": [
"Grodno region,Belarus",
"Hrodna region,Belarus",
"Soltanishka, Voronovskovo,Belarus",
"Soltanishki,Belarus",
"Belarus"
],
"occupations": [
{
"type": "Primary Occupation",
"category": "Senior Civil Servants-National Government",
"title": "Head, President's Office",
"fromDate": {
"day": "21",
"month": "01",
"year": "2013"
}
},
{
"type": "Previous Roles",
"category": "Senior Civil Servants-National Government",
"title": "State Secretary, National Security Council",
"fromDate": {
"day": "20",
"month": "03",
"year": "2006"
},
"toDate": {
"day": "08",
"month": "07",
"year": "2008"
}
},
{
"type": "Previous Roles",
"category": "Senior Civil Servants-National Government",
"title": "State Secretary, National Security Council",
"fromDate": {
"month": "12",
"year": "1995"
},
"toDate": {
"year": "2000"
}
},
{
"type": "Previous Roles",
"category": "Senior Members of the Judiciary",
"title": "Prosecutor General",
"fromDate": {
"year": "2000"
},
"toDate": {
"month": "11",
"year": "2004"
}
},
{
"type": "Previous Roles",
"category": "Senior Civil Servants-National Government",
"title": "Presidential Aide for Special Missions",
"fromDate": {
"month": "01",
"year": "2013"
},
"toDate": {
"day": "21",
"month": "01",
"year": "2013"
}
},
{
"type": "Previous Roles",
"category": "Senior Civil Servants-National Government",
"title": "State Secretary, National Security Council",
"fromDate": {
"day": "05",
"month": "08",
"year": "1994"
},
"toDate": {
"month": "10",
"year": "1995"
}
},
{
"type": "Previous Roles",
"category": "National Government Ministers",
"title": "Minister of Interior",
"fromDate": {
"month": "10",
"year": "1995"
},
"toDate": {
"month": "12",
"year": "1995"
}
},
{
"type": "Previous Roles",
"category": "Senior Civil Servants-National Government",
"title": "Head, Presidential Administration",
"fromDate": {
"month": "11",
"year": "2004"
},
"toDate": {
"day": "04",
"month": "01",
"year": "2006"
}
}
],
"dates": [
{
"type": "Date of Birth",
"date": {
"day": "26",
"month": "05",
"year": "1958"
}
}
],
"references": [
{
"source": "EC 2015/1949 Belarus List",
"fromDate": {
"day": "29",
"month": "10",
"year": "2015"
}
},
{
"source": "EC (CFSP) 2015/1957 Belarus List",
"fromDate": {
"day": "29",
"month": "10",
"year": "2015"
}
},
{
"source": "EC 2016/276 Belarus List",
"fromDate": {
"day": "25",
"month": "02",
"year": "2016"
}
},
{
"source": "EC (CFSP) 2016/280 Belarus List",
"fromDate": {
"day": "25",
"month": "02",
"year": "2016"
}
},
{
"source": "French Economy Ministry - EU and UN Asset Freezing Measures",
"fromDate": {
"day": "30",
"month": "07",
"year": "2017"
}
}
],
"addresses": [
{
"line": "Karl Marx, 38",
"city": "Minsk",
"postalCode": "220016",
"country": "BY"
}
],
"identifications": [
{
"type": "OFAC Program ID",
"value": "BELARUS"
},
{
"type": "OFAC Unique ID",
"value": "9769"
},
{
"type": "EU Sanctions Programme Indicator",
"value": "BLR"
},
{
"type": "EU Consolidated Electronic List ID",
"value": "3411"
},
{
"type": "HM Treasury Group ID",
"value": "8904"
},
{
"type": "SECO SSID",
"value": "4596"
}
],
"images": [
"https://naviny.com/c/b0/b06235bad25e89f92f5ffe89676e8589.jpg",
"http://pmrb.gov.by/images/shejman.jpg"
],
"classifications": {
"pep": [
"level2",
"level1"
]
}
},
"breakdown": [
{
"fieldName": "name",
"riskWeight": 100,
"breakdowns": [],
"fieldValue": "viktor uladzimiravich sheyman",
"score": 93,
"riskWeightedScore": 93,
"normalisedScore": 100
}
]
}
]
}
},
"createdAt": "2020-05-15T08:53:20.307Z",
"updatedAt": "2020-05-15T08:53:20.307Z"
}}
Last modified 28d ago