Understanding entity profile KYC results

The results of a verification check (or a call to the endpoint GET /entity/{entityId}/checks) when an entity has a configured profile will still return all of the structures of the existing check results. There is however, an additional section/object named entityProfileResult. An example response would look something like the following:

Below is a brief summary of the properties contained in the entityProfileResult

Raw ResultCommentaryType
entityProfileResultThis is the object response returned after making a call to this endpoint.Object
actionRecommendedThis is the same actionRecommended as found in the original checkSummary. It contains the result one of:

PASS
PASS_MANUAL
REFER
FAIL
FAIL_MANUAL
UNCHECKED

It is recommended you decide how to interpret these results.
String
addressResultsEach address gets its own resultsObject
checkResultsFor each checkType that was applied in this profile - did it PASS, FAIL or was NA (not applicable).Array of Objects
checkTypeThe list of checkTypes applied as part of this profile.String
documentResultsLike the addresses, we supply the results of each document that was checked.Object
entityIdThis is the entity Identifier.
It is recommended you store this value
String
issueListThis is the comma-separated list of issues
Issue codes are:

404: No match
500: Service error
PTL: Partial match only
PEP: PEP match
S: Sanctions match
WL: AML Watchlist match
M: Adverse Media match
FRAUD: Fraud list or check match
DUP: Duplicate
BL: Blacklist
ATT: No IDV data
ATT-IDV: ID Validation failed
ATT-PHT: Photo comparison failed
ATT-OCR: OCR scanned document was modified
ATT-NCMP: Biometrics Not Completed
FRAUD: Fraud list match
DEVICE: There was a device-fraud related issue
SUPPORT-DOCS: Supporting Documents
String
kycResultsWe break down each ID element that is used to verify an entity.Array of Objects
latestCheckDateThis describes when the check was last run.String
manualInterventionWas manual intervention required?Boolean
profileNameSpecify if profile name was applied.String
riskLevelFinal risk level.String
riskPolicyRisk policy applied, based on the risk rules engine.String

This new format gives a more detailed and clearer picture than having to dig through the original check results and checkSummary key/value pairs. But all of that raw data is still available if you request a full check result. 

A summary result will return the checkRisk, checkSummary and entityProfileResult properties.

A simple result will just return the entityProfileResult property - although this only works for entity’s with a profile.

Example

"entityProfileResult": {
        "actionRecommended": "PASS_MANUAL",
        "addressResults": {
           "a63d471b-9417-4474-0ee0-aa7310055e38": {
                "checked": true,
                "matchCount": 1,
                "matchSources" : [
                    "au-ntd"
                ],
                "matchType": "curr_addr",
                "verified": true
            }
        },
        "checkResults": [
            {
                "checkType": "two_plus",
                "result": "PASS"
            },
            {
                "checkType": "id",
                "result": "PASS"
            },
            {
                "checkType": "pep_media",
                "result": "PASS"
            },
            {
                "checkType": "idvalidate",
                "code": "MISSING_PREREQUISITE",
                "message": "Attestation check succeeded. The attestation documents are not present, but 
                           are not required",
                "result": "NA"
            }
        ],
        "checkType": "two_plus, id, pep_media, idvalidate",
        "documentResults": {
            "4a38bc35-f2de-77e0-cbbe-b3b27f644ce8": {
                "checked": true,
                "matchCount": 1,
                "matchSources" : [
                    "au-govid-dl"
                ],
                "matchType": "gov_id",
                "verified": true
            },
            "9e658277-9bbc-11cc-1f83-593abf54ed6c": {
                "checked": true
            }
        },
        "entityId": "b90d22ab-9571-48c9-6c66-1e7924501b9b",
        "kycResults": [
            {
                "matchCount": 3,
                "matchSources" : [
                    "au-ntd",
                    "au-elec-roll",
                    "au-phone-pub"
                ],
                "matchCountRequired": 2,
                "matchTypes": {
                    "name": {
                        "checked": true,
                        "matchCount": 3,
                        "verified": true
                    }
                },
                "verified": true

            },
            {
                "matchCount": 4,
                "matchSources" : [
                    "au-ntd",
                    "au-elec-roll",
                    "au-phone-pub",
                    "au-asic"
                ],
                "matchCountRequired": 2,
                "matchTypes": {
                    "address": {
                        "checked": true,
                        "matchCount": 1,
                        "verified": true
                    },
                    "dob": {
                        "checked": true,
                        "matchCount": 3,
                        "verified": true
                    }
                },
                "verified": true
            },
            {
                "matchCount": 1,
                "matchSources" : [
                    "au-govid1-dl"
                ],
                "matchCountRequired": 1,
                "matchTypes": {
                    "gov_id": {
                        "checked": true,
                        "matchCount": 1,
                        "verified": true
                    }
                },
                "verified": true
            }
        ],
        "latestCheckDate": "2020-08-09T14:04:35.624Z",
        "manualIntervention": true,
        "profileName": "default",
        "riskLevel": "MEDIUM",
        "riskPolicy": "CDD"
    },
  }

Example with a Partial Fail

{
	"entityProfileResult": {
		"actionRecommended": "FAIL",
		"addressResults": {
			"de2854e6-25cf-74b8-13ea-2df34b07b56c": {
				"checked": true,
				"nonmatchSources": [
					"Equifax Public Credit Data Header",
					"Equifax Proprietary Phone Directory",
					"Australian Electoral Roll",
					"Australian National Tenancy Database",
					"Australian Public Phone Directory"
				]
			}
		},
		"checkId": "28058802-2637-fbd9-c007-b4a91c5b881f",
		"checkResults": [
			{
				"checkClass": "fraud",
				"checkType": "blacklist",
				"name": "Blacklist",
				"result": "PASS"
			},
			{
				"checkClass": "kyc",
				"checkType": "two_plus",
				"code": "PARTIAL_MATCH",
				"message": "Partial Match",
				"name": "2+2",
				"result": "FAIL"
			}
		],
		"checkType": "blacklist,two_plus",
		"creditHeaderFailures": [
			"Equifax"
		],
		"entityId": "2de4a393-e868-c21d-8808-8ef8807693fc",
		"issueList": [
			"PTL"
		],
		"kycResults": [
			{
				"matchCount": 3,
				"matchCountRequired": 2,
				"matchTypes": {
					"name": {
						"checked": true,
						"matchCount": 3,
						"matchSources": [
							"Australian Electoral Roll",
							"Equifax Proprietary Phone Directory",
							"Equifax Public Credit Data Header"
						],
						"nonmatchSources": [
							"Australian Public Phone Directory",
							"Equifax Commercial Credit Data Header",
							"Equifax Public Credit Data Header",
							"IDMatrix"
						],
						"verified": true
					}
				},
				"verified": true
			},
			{
				"matchCountRequired": 2,
				"matchTypes": {
					"address": {
						"checked": true,
						"nonmatchSources": [
							"Australian Electoral Roll",
							"Australian National Tenancy Database",
							"Australian Public Phone Directory",
							"Equifax Proprietary Phone Directory",
							"Equifax Public Credit Data Header"
						]
					},
					"dob": {
						"checked": true,
						"nonmatchSources": [
							"Australian Electoral Roll",
							"IDMatrix"
						]
					}
				}
			}
		],
		"latestCheckDate": "2022-05-09T08:01:30.039Z",
		"policyName": "default",
		"profileName": "safe_harbour",
		"riskLevel": "LOW",
		"riskPolicy": "CDD"
	}
}

Example with a No Match

{
	"entityProfileResult": {
		"actionRecommended": "FAIL",
		"checkId": "a4fa419c-31ac-2595-826a-3c4d5a1deabf",
		"checkResults": [
			{
				"checkClass": "fraud",
				"checkType": "blacklist",
				"name": "Blacklist",
				"result": "PASS"
			},
			{
				"checkClass": "kyc",
				"checkType": "id",
				"code": "NO_MATCH",
				"message": "No Match",
				"name": "Gov ID",
				"result": "FAIL"
			},
			{
				"checkClass": "kyc",
				"checkType": "two_plus",
				"code": "NO_MATCH",
				"message": "No Match",
				"name": "2+2",
				"result": "FAIL"
			},
			{
				"checkClass": "none",
				"checkType": "idvalidate",
				"code": "BLOCKED_BY_OTHER_FAIL",
				"message": "Gov ID check failed, therefore not running IDV check",
				"name": "IDV",
				"result": "UNCHECKED"
			},
			{
				"checkClass": "aml",
				"checkType": "pep",
				"code": "BLOCKED_BY_OTHER_FAIL",
				"message": "Gov ID check failed, therefore not running PEP/Sanctions check",
				"name": "PEP/Sanctions",
				"result": "UNCHECKED"
			}
		],
		"checkType": "blacklist,id,two_plus,idvalidate,pep",
		"creditHeaderFailures": [
			"Equifax"
		],
		"documentResults": {
			"9e7c3ca2-a199-3390-1254-6d524094e711": {
				"checked": true,
				"nonmatchSources": [
					"Australian Gov ID - Drivers Licence"
				]
			}
		},
		"entityId": "9b42d630-d5f8-8a57-1088-a84478e6f50d",
		"issueList": [
			"404"
		],
		"kycResults": [
			{
				"matchCountRequired": 1,
				"matchTypes": {
					"gov_id": {
						"checked": true,
						"nonmatchSources": [
							"Australian Gov ID - Drivers Licence"
						]
					}
				}
			},
			{
				"matchCountRequired": 2,
				"matchTypes": {
					"name": {
						"checked": true,
						"nonmatchSources": [
							"Equifax Commercial Credit Data Header",
							"Equifax Consumer Credit Data Header",
							"Equifax Public Credit Data Header",
							"IDMatrix"
						]
					}
				}
			},
			{
				"matchCountRequired": 2,
				"matchTypes": {
					"address": {},
					"dob": {
						"checked": true,
						"nonmatchSources": [
							"IDMatrix"
						]
					}
				}
			}
		],
		"latestCheckDate": "2023-08-14T05:48:29.000Z",
		"policyName": "default",
		"profileName": "safe_harbour_id",
		"riskLevel": "MEDIUM",
		"riskPolicy": "CDD"
	}
}