Skip to content

Integration with PEP Scoring

PEP (Politically Exposed Person) verification scoring automatically checks users against the PEP database during the verification process.

Unlike email and phone scoring, no additional data needs to be transmitted when creating a user. The PEP check is performed automatically.

After the user completes the challenge, X-Faces will score PEP, record the result, and send a callback to the partner. The partner can request user data via API:

GET /v1/user/get/<user_uuid>

{
"result": true,
"data": {
"user": {
// ... other user fields
"pep_data": {
"is_pep": true,
"id": 2005,
"created_at": "2019-05-21T00:00:00+00:00",
"full_name": "TUDOR CIUHODARU",
"birth_date": "1969-01-16",
"country": "rou",
"email": null,
"gender": "male",
"updated_at": "2025-07-21T14:20:33+00:00",
"last_checked": "2025-07-31T14:58:55.249881+00:00",
"classification": [
"International organization (past)",
"National government (unknown status)"
],
"position": [
"Chamber of Deputies (member, 2016-)",
"Chamber of Deputies (member, 2012-2016)"
],
"data": {
"id": "Q12742616",
"name": "TUDOR CIUHODARU",
"type": "TypePerson[sources]",
"gender": "male",
"schema": "Person",
"target": true,
"caption": "Tudor Ciuhodaru",
"country": "European Union",
"datasets": [
"everypolitician",
"ann_pep_positions",
"wd_categories",
"wd_peps"
],
"position": "Chamber of Deputies (member, 2012-2016)",
"last_name": "CIUHODARU",
"last_seen": "2025-07-21T14:20:33",
"referents": [
"evpo-45762c0e-a931-4ed9-a9a4-a56dc2015520",
"eu-meps-197657",
"NK-aM8KuG3FXfykDRx4U97kxN"
],
"birth_date": "1969-01-16",
"first_name": "TUDOR",
"first_seen": "2019-05-21T00:00:00",
"other_name": "CIUHODARU TUDOR",
"properties": {
"name": [
"Tudor Ciuhodaru"
],
"alias": [
"Ciuhodaru Tudor"
],
"gender": [
"male"
],
"topics": [
"role.pep"
],
"country": [
"eu",
"ro"
],
"position": [
"Chamber of Deputies (member, 2016-)",
"Chamber of Deputies (member, 2012-2016)"
],
"birthDate": [
"1969-01-16"
],
"firstName": [
"Tudor"
],
"modifiedAt": [
"2019-05-13"
],
"wikidataId": [
"Q12742616"
],
"citizenship": [
"ro"
],
"nationality": [
"ro"
],
"classification": [
"International organization (past)",
"National government (unknown status)"
]
},
"citizenship": "Romania",
"last_change": {
"first_seen": "2019-05-21",
"last_change": "2025-07-01",
"last_processed": "2025-07-02"
},
"nationality": "Romania",
"wikidata_id": "Q12742616",
"classification": "International organization (past)",
"place_of_birth": "Bacau"
}
}
},
"challenges": {
// ... challenges data
}
}
}
FieldTypeDescription
is_pepbooleanIndicates whether the person is identified as PEP
full_namestringFull name of the person
birth_datestringBirth date in format yyyy-mm-dd
countrystringCountry code (ISO 3166-1 alpha-3)
genderstringGender of the person
classificationarrayClassification categories (e.g., government official, international organization)
positionarrayPolitical positions held by the person
created_atstringDate when the record was created in the database
updated_atstringDate when the record was last updated
last_checkedstringDate when the person was last checked against the database

The data field contains detailed information from OpenSanctions database:

FieldTypeDescription
idstringUnique identifier in OpenSanctions
wikidata_idstringWikidata identifier
schemastringEntity schema type
datasetsarrayList of datasets containing information about this person
citizenshipstringCountry of citizenship
nationalitystringNationality
place_of_birthstringPlace of birth
first_seenstringDate when first recorded in the database
last_seenstringDate when last updated in source databases

If the user is not identified as a PEP, the response will be:

{
"result": true,
"data": {
"user": {
// ... other user fields
"pep_data": {
"is_pep": false
}
},
"challenges": {
// ... challenges data
}
}
}