API Reference
Log inSign up
v1.7.3
v1.7.3
  • ComplyCube API Reference
  • Integration
  • Test and Live
  • Authentication
  • Rate Limits
  • Service Quota
  • Errors
  • Pagination
  • Filtering
  • Versioning
  • Core resources
    • Clients
      • Create a client
      • Get a client
      • Update a client
      • Delete a client
      • List clients
      • Filtering clients
    • Addresses
      • Create an address
      • Get an address
      • Update an address
      • Delete an address
      • List addresses
      • Filtering addresses
    • Documents
      • Create a document
      • Get a document
      • Update a document
      • Upload image attachment
      • Delete image attachment
      • Download image attachment
      • Redact image attachment
      • Delete a document
      • List documents
      • Filtering documents
    • Live Photos
      • Upload a live photo
      • Get a live photo
      • Download live photo
      • Redact live photo
      • Delete a live photo
      • List live photos
    • Live Videos
      • Get a live video
      • Redact live video
      • Delete live video
      • List live videos
    • Checks
      • Create a check
      • Get a check
      • Update a check
      • Validate check outcome
      • Redact check outcome
      • List checks
      • Filtering checks
    • Risk Profile
      • Get a risk profile
  • Check types
    • AML Screening Check
    • Document Check
    • Identity Check
    • Enhanced Identity Check
    • Proof of Address Check
    • Multi-Bureau Check
    • Face Authentication Check
    • Age Estimation Check
  • Lookups
    • Company Search
      • Search company
      • Get company details
    • Address Search
      • Search address
  • Tools
    • Custom Lists
      • Get a custom list
      • Add entity to custom list
      • List custom lists
  • Static Data
    • Screening Lists
    • Supported Documents
  • Other Resources
    • Flow (Hosted Solution)
      • Create a session
    • Webhooks
      • Create a webhook
      • Get a webhook
      • Update a webhook
      • Delete a webhook
      • List webhooks
      • Filtering webhooks
    • SDK Tokens
      • Generate a token
    • Autofill
      • Perform autofill
    • Reports
      • Generate a client report
      • Generate a check report
    • Team Members
      • Get a team member
      • List team members
      • Filtering team members
    • Audit Logs
      • Get an audit log
      • List audit logs
      • Filtering audit logs
    • Account Info
      • Get account info
  • Useful Resources
    • Testing Data
    • User Docs
Powered by GitBook
On this page
  • Run an AML screening check
  • Check request
  • The options object
  • The screeningListsScope object
  • Example requests
  • Result object
  • Sample response

Was this helpful?

  1. Check types

AML Screening Check

Screen clients against ComplyCube's Sanctions & Watchlists, PEP, and Adverse Media database.

PreviousGet a risk profileNextDocument Check

Last updated 1 year ago

Was this helpful?

Run an AML screening check

To run an AML Screening Check, you must with type set to:

  1. standard_screening_check, or

  2. extensive_screening_check

For a 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.

Check request

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:

  1. standard_screening_check

  2. extensive_screening_check

(Required)

enableMonitoring

boolean

Determines whether continuous monitoring is enabled. When not provided, it defaults to false. (Optional)

options

object

The 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:

  1. fuzzy: applies various linguistic, phonetic, and near-match techniques on names to find matches.

  2. precise: only matches names that are exact

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:

  1. pepLevel1

  2. pepLevel2

  3. pepLevel3

  4. pepLevel4

  5. watchlistSanctionsLists

  6. watchlistOtherOfficialLists

  7. watchlistWarCrimes

  8. watchlistTerror

  9. watchlistOtherExclusionLists

  10. watchlistSanctionsControlAndOwnership

  11. adverseMediaEnvironmentProduction

  12. adverseMediaSocialLabour

  13. adverseMediaCompetitiveFinancial

  14. adverseMediaRegulatory

  15. otherListsAssociatedEntity

  16. otherListsOrganisedCrime

  17. otherListsFinancialCrime

  18. otherListsTaxCrime

  19. otherListsCorruption

  20. otherListsTrafficking

When this attribute is not provided, we will conduct a search against all eligible classifications.

The screeningListsScope object

Attribute

Description

mode

Type: string

The criteria to apply to the lists when performing a screening search. Valid values include:

  1. inclusion

  2. exclusion

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.

Example requests

Simple request

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);

Request with optional attributes

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);

Result object

The result object is only returned when the status of the check is complete . It has two components - outcome and breakdown.

Outcome

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.

Breakdown

The breakdown comprises the following objects:

summary object

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.

The summary object has the following constituents:

  • 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

    • 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

matches array

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

    • names: An array of name objects that contain all known aliases for the match. The name 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 for person and company.

    • 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 type person. Values include:

      • male

      • female

      • other

    • deceased: A boolean that indicates whether the match is deceased.

    • occupations: An array of occupation objects that contain all known occupations for the match. This is only returned when the match is a Politically Exposed Person (PEP). The occupation 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 of address objects that contain known associated countries for the match. The address 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 of reference objects that contain list references for the match. The reference 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.

Sample response

{
   "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"
}}

The optional settings for the check. Also, see the object below. (Optional)

The scope of lists to search as part of a screening check. See the below.

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 is a subset of an Extensive AML Screening.

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 .

pep : Contains the outcome for checks against the Politically Exposed Persons (PEP) database, with matches classified as per the levels described .

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 key.

country: The country. This will be the .

fromDate: The occupation start date. This will be a .

toDate: The occupation end date. This will be a .

data: The date. This will be a .

country: The country of the address. This will be the .

fromDate: The start date of the source's validity. This will be a .

toDate: The end date of the source's validity. This will be a .

create a check
client
Learn about AML Screening Checks
coverage scope
service page
here
two-letter country ISO code
two-letter country ISO code
structured date
summary object's
screeningListsScope
structured date
structured date
structured date
structured date
options