Emulation
Emulation features are only available in Sandbox
environment.
Tip – You can also rely on webhooks
For operations that cannot be emulated in the Sandbox, webhook examples are provided.
KYC validation
Emulate the KYC validation of a single user by adding a suffix to the User's lastname
using the following request:
Suffix | kycLevel | kycReview | Description |
---|---|---|---|
.validated | 2 | 2 | The User is REGULAR / VALIDATED |
.refused | 4 | 3 | The User is REFUSED / REFUSED |
Wait a few minutes and make a /v1/users/{userId}
request for the User you've just updated.
The API returns the User with the emulated kycLevel
and kycReview
.
Information – Emulation incompatible with Parent-Children hierarchical relations
As opposed to the API behavior when requesting a KYC Review, emulating the validation of a parent user won't have any consequence on its children.
Example
Let's take an example in which we'd like to simulate a KYC refusal of a User.
bash
curl -X PUT {baseUrl}/v1/users \
--header 'Authorization: Bearer {accessToken}' \
--header 'Content-Type: application/json' \
-d '{payload}'
With a {payload}
containing the suffixed lastname
:
json
{
"lastname": "Oak.refused"
}
You need to retrieve the User a few moments after the update with the following request:
bash
curl -X GET {baseUrl}/v1/users/{userId}
--header 'Authorization: Bearer {accessToken}' \
The User object returned with the updated kycLevel
and kycReview
.
json
{
"users": [
{
"userId": 100135695,
"userTypeId": 1,
"userStatus": "VALIDATED",
"userTag": "emulationTestr36748",
"parentUserId": 0,
"parentType": "",
"controllingPersonType": 0,
"employeeType": 0,
"specifiedUSPerson": 0,
"title": "",
"firstname": "Alex",
"lastname": "Oak.refused",
"middleNames": "",
"birthday": "1982-05-31",
"email": "aOak533@example.com",
"address1": "12 rosewood lane",
"address2": "",
"postcode": "75000",
"city": "Paris",
"state": "",
"country": "FR",
"countryName": "France",
"phone": "+33121212121",
"mobile": "",
"nationality": "FR",
"nationalityOther": "",
"placeOfBirth": "Montreuil",
"birthCountry": "FR",
"occupation": "",
"incomeRange": "0-18",
"legalName": "",
"legalNameEmbossed": "",
"legalRegistrationNumber": "",
"legalTvaNumber": "",
"legalRegistrationDate": "0000-00-00",
"legalForm": "",
"legalShareCapital": 0,
"entityType": null,
"legalSector": "",
"legalAnnualTurnOver": "",
"legalNetIncomeRange": "",
"legalNumberOfEmployeeRange": "",
"effectiveBeneficiary": 0,
"kycLevel": 4,
"kycReview": 3,
"kycReviewComment": "Refused automatic simulation",
"isFreezed": 0,
"isFrozen": null,
"language": "",
"optInMailing": null,
"sepaCreditorIdentifier": "",
"taxNumber": "",
"taxResidence": "",
"position": "",
"personalAssets": "465-",
"createdDate": "2024-02-14 07:24:21",
"modifiedDate": "2024-02-14 08:25:12",
"walletCount": 0,
"payinCount": 0,
"totalRows": "1",
"activityOutsideEu": 0,
"economicSanctions": 0,
"residentCountriesSanctions": 0,
"involvedSanctions": 0,
"entitySanctionsQuestionnaire": 0,
"address3": null,
"timezone": null,
"occupationType": "",
"isOnStockExchange": 0,
"secondaryAddress1": "",
"secondaryAddress2": "",
"secondaryAddress3": "",
"secondaryPostcode": "",
"secondaryCity": "",
"secondaryState": "",
"secondaryCountry": "",
"clientId": "929252",
"sanctionsQuestionnaireDate": null,
"codeStatus": "110009",
"informationStatus": "",
"legalSectorType": "",
"sourceOfFunds": ""
}
]
}
KYC Liveness
Refused Liveness
To emulate a refused Liveness process, create a User under one name and provide documents (ID Card, driving license, etc.) under a different name during the Liveness.
Accepted Liveness
To emulate an accepted Liveness process, create a User under one name and provide documents (ID Card, driving license, etc.) in the same name during the liveness.