AMLCFT Screening Advanced API
Introduction
The AML Screening API v3 allows you to perform advanced anti-money laundering checks against various databases. This endpoint accepts details of an individual or an entity and performs screening based on the configured checks, providing a detailed report of any matches found.
Database Descriptions
Database Name | Description |
|---|---|
amlCheck | Anti-Money Laundering checks to identify suspicious financial activities or transactions that could be related to money laundering or terrorist financing. |
highRiskCountries | A list of countries identified as having a higher risk for money laundering, terrorist financing, or other financial crimes due to poor regulatory frameworks or ongoing conflicts. |
humanRightsViolations | A list of individuals, organizations, or countries involved in human rights abuses or violations, often used for compliance checks and risk management. |
indianWatchlists | A list of individuals, organizations, or entities flagged in India for various legal, financial, or security concerns, typically used for background checks. |
globalWatchLists | A compilation of individuals, organizations, or entities from around the world that have been flagged for potential financial crimes, security risks, or legal issues. |
sanctionsCheck | A database used to check if an individual or entity is subject to international sanctions, including those imposed by governments or global organizations. |
publicSectorEntitiesCheck | A check to identify entities that are part of the public sector, including government-owned companies and agencies. |
politicallyExposedPerson | A list of individuals in prominent political positions, who are considered high-risk due to potential involvement in corruption or money laundering. Please Note: In case of doing a PEP Search , Please pass the country of target here. Example : Donald Trump will be pep checked if the country is USA/United States of America |
Sample Curl
curl --location 'https://api-preproduction.signzy.app/api/v3/ndd/aml-screening-adv' \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{
"batchId": "e02f7189-1e3d-4871-b8e4-738b70522e4f",
"requestId": "b2070bf0-0bcb-415e-8391-dbe5f9ff633d",
"type": "individual",
"checks": {
"databaseList": [
"amlCheck",
"highRiskCountries",
"humanRightsViolations",
"indianWatchlists",
"globalWatchLists",
"sanctionsCheck",
"publicSectorEntitiesCheck",
"politicallyExposedPerson"
],
},
"individualDetails": {
"fullName": "<FullName>",
"dob": "18/04/1969",
"gender": "Male"
},
"entityDetails": {
"entityName": "",
"establishmentDate": ""
},
"generalInfo": {
"alias": [],
"comments": [],
"phoneNo": ""
},
"address": {
"addressLine": "",
"cityOrDistrict": "",
"zipCode": "",
"state": "",
"country": "INDIA"
},
"checkConfig": {
"nameMatchThreshold": 80,
"resultType": "PARTIAL",
"startDate": "",
"endDate": "",
"countryExactMatch": false,
"nameMatchScoreWeight": 0.8,
"dobMatchScoreWeight": 0.1,
"countryMatchScoreWeight": 0.1,
"idNumberMatchScoreWeight": 0.8
},
"callbackConfig": {
"url": "https://webhook.site/44face84-66dd-4258-b299-7789538207bb",
"headers": {
"x-api-key": "123rqdsf23r2sxffw"
}
}
}'Request Body
Request Parameters
Parameter | Type | Required | Description |
|---|---|---|---|
batchId | string | Yes | Unique identifier for the batch of requests. |
requestId | string | Yes | Unique identifier for the individual request. |
type | string | Yes | Type of screening subject. Can be either individual or entity. |
checks | Checks | Yes | The checks to be performed. Includes a list of databases and optional specific checks like PEP. |
individualDetails | IndividualDetails | Required if type is individual | Details of the individual to be screened. |
entityDetails | EntityDetails | Required if type is entity | Details of the entity to be screened. |
generalInfo | GeneralInfo | No | Additional information such as aliases, comments, and phone number. |
address | Address | No | Address details for the individual or entity. |
checkConfig | CheckConfig | Yes | Configuration options for the checks, such as match thresholds and weights. |
callbackConfig | map[string]interface{} | No | Configuration for the callback URL and headers. |
Data Types
- checks:
Field | Type | Required | Description |
|---|---|---|---|
databaseList | array | Yes | List of databases to check use "ALL" "amlCheck", "highRiskCountries", "humanRightsViolations", "indianWatchlists", "globalWatchLists", "sanctionsCheck", "publicSectorEntitiesCheck", |
- IndividualDetails
Field | Type | Required | Description |
|---|---|---|---|
fullName | string | Yes | Full name of the individual. |
dob | string | No | Date of birth in DD/MM/YYYY format. |
gender | string | No | Gender of the individual. |
- EntityDetails:
Field | Type | Required | Description |
|---|---|---|---|
entityName | string | Yes ( if doing entity check) | Name of the entity. |
establishmentDate | string | No | Date of establishment in DD/MM/YYYY format. |
- GeneralInfo:
Field | Type | Required | Description |
|---|---|---|---|
alias | array | No | List of aliases for the individual/entity. |
comments | array | No | Any additional comments. |
phoneNo | string | No | Contact phone number. |
- Address:
Field | Type | Required | Description |
|---|---|---|---|
addressLine | string | No | Address line of the individual/entity. |
cityOrDistrict | string | No | City or district of the address. |
zipCode | string | No | ZIP/Postal code. |
state | string | No | State/Region of the address. |
country | string | N | Country of the individual/entity. |
- CheckConfig
Field | Type | Required | Description |
|---|---|---|---|
nameMatchThreshold | integer | Yes | Threshold for name matching (0-100). |
resultType | string | Yes | Type of result expected, e.g., CONFIDENT. |
startDate | string | No | Start date for the screening period in DD/MM/YYYY format. |
endDate | string | No | End date for the screening period in DD/MM/YYYY format. |
countryExactMatch | boolean | No | Whether to perform an exact match on the country field. |
nameMatchScoreWeight | float | Yes | Weight of name match score in the overall result. |
dobMatchScoreWeight | float | Yes | Weight of date of birth match score in the overall result. |
countryMatchScoreWeight | float | Yes | Weight of country match score in the overall result. |
idNumberMatchScoreWeight | float | Yes | Weight of ID number match score in the overall result. |
dobExactMatch | boolean | No | Whether to perform an exact match on the dob field. Note - If true, and dob is passed in request body, api will output match found only when the dob is exactly matching the input dob. This will exclude records where dob is not present. |
doiExactMatch | boolean | No | Whether to perform an exact match on the date of incorporation. Note - If true, and doi is passed in request body, api will output match found only when the doi is exactly matching the input dob. This will exclude records where doi is not present. |
idNumberExactMatch | boolean | No | Whether to perform an exact match on the idNumber. Note - If true, and id Numbers are passed in request body, api will output match found only when the any id number is exactly matching the input numbers. This will exclude records where id number is not present. |
- CallbackConfig (Optional)
Field | Type | Required | Description |
|---|---|---|---|
url | string | Yes | URL to receive callback notifications. |
headers | object | No | Headers to be included in the callback request. |
Response
Example Response
{
"batchId": "c45ac867-6b7b-4dc0-aa0a-97ce2831343d",
"requestId": "5e3b6aec-79bb-4d7f-9e94-4731b0070688",
"searchableString": "5e3b6aec-79bb-4d7f-9e94-4731b0070688 nseDefaulters politicallyExposedPerson sebiIlegalMoneyList adverseMedia mcaDisqualifiedDirectors Vijay Mallya 18/04/1969 Male 18/04/1969 INDIA",
"result": "MATCH_FOUND",
"dbsMatched": [
"nseDefaulters",
"politicallyExposedPerson",
"sebiIlegalMoneyList",
"mcaDisqualifiedDirectors"
],
"pepResult": "MATCH_FOUND",
"matchDetails": {
"mcaDisqualifiedDirectors": {
"numberOfRecords": 2,
"records": [
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"alias": "",
"cin": "",
"country": "IND",
"country_name": "India",
"din": "122890",
"director_status": "",
"dob": "",
"effective_date": "",
"entry_category": "MCA Disqualified Directors",
"entry_sub_category": "",
"first_name": "",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "",
"linkedTo": "KINGFISHER AIRLINESLIMITED",
"name": "VIJAY MALLYA",
"name_source": "Website",
"organization": "",
"passport_id": "",
"period_from": "1/11/2017",
"period_till": "31/10/2022",
"photo": "",
"pob": "",
"positions": "",
"primary_name": "",
"reason_for_disqualification": "",
"remarks": "",
"roc_code": "",
"source": "",
"status": "",
"sub_category": ""
}
},
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"alias": "",
"cin": "",
"country": "IND",
"country_name": "India",
"din": "",
"director_status": "",
"dob": "",
"effective_date": "1/11/2017",
"entry_category": "MCA Disqualified Directors",
"entry_sub_category": "",
"first_name": "Vijay",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "Mallya",
"linkedTo": [
"KINGFISHER AIRLINESLIMITED"
],
"name": "VIJAY MALLYA",
"name_source": "",
"organization": "KINGFISHER AIRLINESLIMITED",
"passport_id": "",
"period_from": "",
"period_till": "",
"photo": "",
"pob": "",
"positions": "Director",
"primary_name": "VIJAY MALLYA",
"reason_for_disqualification": "",
"remarks": "Disqualified since 1/11/2017 to 31/10/2022. Company Status: Active.ROC ROC - BANGALORE. Violated Section \n164(2)(a)",
"roc_code": "",
"source": "https://www.mca.gov.in/content/mca/global/en/data-and-reports/company-llp-info/under-alert/disqualified-directors.html",
"status": "",
"sub_category": ""
}
}
]
},
"nseDefaulters": {
"numberOfRecords": 2,
"records": [
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"alias": "",
"country": "IND",
"country_name": "India",
"dob": "",
"effective_date": "",
"entry_category": "",
"entry_sub_category": "",
"first_name": "",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "",
"linkedTo": "",
"name": "Vijay Mallya",
"name_source": "Website",
"order_date": "25-Jan-17",
"organization": "",
"pan": "AENPM6247A",
"passport_id": "",
"period": [
"Revoked on 01.06.2021"
],
"photo": "",
"pob": "",
"positions": "",
"primary_name": "",
"reason_for_declaring_the_member_as_expelled_or_defaulter": "",
"remarks": "",
"source": "https://archives.nseindia.com/content/press/prs_ra_sebi.xls",
"sub_category": "SEBI DEBARRED",
"updatedTime": "2023-05-23T11:17:42.503798"
}
},
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"alias": "",
"country": "IND",
"country_name": "India",
"dob": "",
"effective_date": "",
"entry_category": "NSE",
"entry_sub_category": "SEBI DEBARRED",
"first_name": "",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "",
"linkedTo": "",
"name": "Vijay Mallya",
"name_source": "Website",
"order_date": "26 Jul 24",
"organization": "",
"pan": "AENPM6247A",
"passport_id": "",
"period": [
"3 years"
],
"photo": "",
"pob": "",
"positions": "",
"primary_name": "",
"reason_for_declaring_the_member_as_expelled_or_defaulter": "",
"remarks": "",
"source": "https://archives.nseindia.com/content/press/prs_ra_sebi.xls",
"sub_category": "SEBI DEBARRED",
"updatedTime": "2024-07-27T19:38:49.338053"
}
}
]
},
"politicallyExposedPerson": {
"numberOfRecords": 3,
"records": [
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"Family name at birth": "",
"Forename in original script": "",
"address": "",
"age": "",
"alias": "Mallya , Vijay Vittal Mallya , Виджай Маллья , Виджай Маля , Виджей Малья , Віджай Маллья , Маллья , Виджай , Малья , Виджай , Малья , Виджей , فيجاى ماليا , فيجاي ماليا , विजय मल्ल्या , विजय माल्या , বিজয় মাল্য , ਵਿਜੇ ਮਾਲਿਆ , વિજય માલ્યા , விஜய் மல்லையா , విజయ్ మాల్య , ವಿಜಯ ಮಲ್ಯ , ವಿಜಯ್ ಮಲ್ಯ , വിജയ് മല്യ , വിജയ് മല്ല്യ , ビジェイ・マリヤ , ヴィジェイ・マルヤ , ヴィジャイ・マルヤ , 維傑·馬爾雅 , 维杰·马尔雅",
"children_details": "",
"constituency": "",
"country": "IN",
"country_name": "India",
"dob": "18/12/1955",
"educational_qualification": "",
"effective_date": "",
"email": "",
"entry_category": "PEP",
"entry_sub_category": "",
"family_name": "",
"father_name": "",
"first_name": "",
"fuzzy_score": 100,
"gender": "",
"gov_designation": "",
"linkedTo": "",
"marital_status": "",
"mother_name": "",
"name": "Vijay Mallya ",
"name inn original script": "",
"name_source": "Website",
"organization": "",
"party": "",
"phone_no": "",
"photo": "",
"pob": "",
"positions": "",
"primary_name": "Vijay Mallya",
"profession": "",
"profile_link": "",
"remarks": "",
"source": "",
"state": "",
"status": "",
"term": "",
"wanted_by": ""
}
},
{
"score": {
"nameMatchScore": 95,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 86
},
"recordDetails": {
"Family name at birth": "",
"Forename in original script": "",
"address": "",
"age": "67",
"alias": "",
"children_details": "",
"constituency": "",
"country": "IND",
"country_name": "India",
"dob": "",
"educational_qualification": "",
"effective_date": "",
"email": "",
"entry_category": "PEP",
"entry_sub_category": "",
"family_name": "",
"father_name": "",
"first_name": "",
"fuzzy_score": 95,
"gender": "",
"gov_designation": "",
"linkedTo": "",
"marital_status": "",
"mother_name": "",
"name": "Dr. Vijay Mallya",
"name inn original script": "",
"name_source": "Website",
"organization": "",
"party": "",
"phone_no": "",
"photo": "",
"pob": "",
"positions": "",
"primary_name": "Dr. Vijay Mallya",
"profession": "",
"profile_link": "",
"remarks": "",
"source": "https://sansad.in/rs/members",
"state": "Karnataka",
"status": "",
"term": "",
"wanted_by": ""
}
}
]
},
"sebiIlegalMoneyList": {
"numberOfRecords": 2,
"records": [
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"address": "",
"alias": "",
"circular_date": "",
"circular_number": "",
"country": "IND",
"country_name": "India",
"date_of_order": "",
"dob": "",
"effective_date": "",
"entry_category": "SEBI",
"entry_sub_category": "",
"first_name": "",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "",
"linkedTo": "",
"name": "Vijay Mallya",
"name_source": "Website",
"order_date": "Aug 24, 2005",
"organization": "",
"pan": "",
"passport_id": "",
"photo": "",
"pob": "",
"positions": "",
"primary_name": "",
"referred": "",
"remarks": "Order against Shri Vijay Mallya and other companies",
"source": "https://www.sebi.gov.in/sebiweb/home/HomeAction.do?doListing=yes&sid=2&ssid=9&smid=6",
"status": "",
"sub_category": "Adjudication Orders"
}
},
{
"score": {
"nameMatchScore": 100,
"dobMatchScore": 0,
"countryMatchScore": 100,
"identificationMatchScore": 0,
"overallScore": 90
},
"recordDetails": {
"address": "",
"alias": "",
"circular_date": "26-07-2024",
"circular_number": "20240726-45",
"country": "IND",
"country_name": "India",
"date_of_order": "",
"dob": "",
"effective_date": "26-07-2024",
"entry_category": "SEBI",
"entry_sub_category": "",
"first_name": "",
"fuzzy_score": 100,
"gov_designation": "",
"last_name": "",
"linkedTo": "",
"name": "Vijay Mallya",
"name_source": "Website",
"order_date": "",
"organization": "",
"pan": "AENPM6247A",
"passport_id": "",
"photo": "",
"pob": "",
"positions": "",
"primary_name": "",
"referred": "",
"remarks": "Order in the matter of routing of funds to the Indian Securities market using overseas bank accounts with UBS AG",
"source": "https://www.bseindia.com/investors/debent.aspx",
"status": "",
"sub_category": ""
}
}
]
}
}
}Response Fields
Field | Type | Description |
|---|---|---|
batchId | string | Unique identifier for the batch of requests. |
requestId | string | Unique identifier for the individual request. |
searchableString | string | Concatenated string of key data points for easier search and filtering. |
result | string | Overall result of the screening, e.g., MATCH_FOUND or NO_MATCH. |
dbsMatched | array | List of databases where matches were found. |
pepResult | string | Result of the Politically Exposed Person (PEP) check, e.g., MATCH_FOUND. |
matchDetails | object | Detailed results of the matches found, including score and record details per database. |
Generate Report -
To enable report generation functionality, the following query parameter is required:
- generate_report=true - Enables report generation with custom configurations
curl --location 'https://api-preproduction.signzy.app/api/v3/ndd/aml-screening-adv' \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{
"batchId": "e02f7189-1e3d-4871-b8e4-738b70522e4f",
"requestId": "b2070bf0-0bcb-415e-8391-dbe5f9ff633d",
"type": "individual",
"checks": {
"databaseList": [
"amlCheck",
"highRiskCountries",
"humanRightsViolations",
"indianWatchlists",
"globalWatchLists",
"sanctionsCheck",
"publicSectorEntitiesCheck",
"politicallyExposedPerson"
],
},
"individualDetails": {
"fullName": "<FullName>",
"dob": "18/04/1969",
"gender": "Male"
},
"entityDetails": {
"entityName": "",
"establishmentDate": ""
},
"generalInfo": {
"alias": [],
"comments": [],
"phoneNo": ""
},
"address": {
"addressLine": "",
"cityOrDistrict": "",
"zipCode": "",
"state": "",
"country": "INDIA"
},
"checkConfig": {
"nameMatchThreshold": 80,
"resultType": "PARTIAL",
"startDate": "",
"endDate": "",
"countryExactMatch": false,
"nameMatchScoreWeight": 0.8,
"dobMatchScoreWeight": 0.1,
"countryMatchScoreWeight": 0.1,
"idNumberMatchScoreWeight": 0.8
},
"callbackConfig": {
"url": "https://webhook.site/44face84-66dd-4258-b299-7789538207bb",
"headers": {
"x-api-key": "123rqdsf23r2sxffw"
}
}
}'Report White Labelling Configuration
The report white labelling feature allows customization of AML screening reports with your organization's branding and content. This feature is accessible through both AML Advanced and Global API endpoints.
Configuration Requirements
Request Body Configuration
Include the reportConfig object in your API request body with the following structure:
Configuration Parameters
Parameter | Type | Description | Requirements |
|---|---|---|---|
disclaimer | String | Custom disclaimer text for the report | Include [Date] placeholder for dynamic date insertion |
headerImage | String | URL to header image | Must be A4-compatible to prevent formatting issues |
footerImage | String | URL to footer image | Must be A4-compatible to prevent formatting issues |
timestampTZ | String | Timezone for report timestamps | Use standard timezone identifiers (e.g., "UTC", "EST") |
AI Summary Feature
The AI Summary feature is disabled by default but can be enabled using an additional query parameter:
API Endpoint Example
Query Parameters for AI Summary
- generate_report=true - Required for report generation
- ai_summary=true - Enables AI-powered report summary
Implementation Notes
Image Requirements
- Format Compatibility: Ensure header and footer images are optimized for A4 paper size
- Resolution: Use high-resolution images to maintain quality in PDF output
- File Formats: Supported formats include PNG, JPEG, and SVG
- Accessibility: Images should be publicly accessible via HTTPS URLs
Timezone Considerations
- Use standardized timezone identifiers
- Common options: "UTC", "EST", "PST", "GMT", etc.
- Timestamps will be displayed according to the specified timezone
Example Request
json
Contact Us for Any Assistance
If you have any questions or need assistance, please reach out to our customer support team. You can contact us via email at [email protected]. We strive to provide prompt and reliable assistance, ensuring your queries are addressed effectively.
We value your feedback and are committed to making your experience smooth and enjoyable. Our team is dedicated to assisting you with any needs you may have. Thank you for choosing our services. We look forward to helping you!