User Compliance Transition

Manages all webhooks related to user compliance

When to use it? When running compliance for a user, it will transition through different statuses. This webhook will allow you to update Toqios Users accordingly when running compliance outside of our platform.

Available Statuses

  • PENDING_USER_INFO: User Entity compliance data is not submitted yet. Only available for previousStatus field
  • PENDING_KYC_RESULTS: User Entity compliance data is submitted and waiting for results. Important: The previous compliance status must be PENDING_USER_INFO to be able to move to this status.
  • REFERRED_KYC: User Entity has been previously DECLINED or in PENDING_KYC_RESULT status for some reason and we're reopening users compliance process to submit new data.
  • COMPLETED: User entity has been accepted, meaning all compliance checks have passed positively for this user. Important: The compliance process must have started and be in PENDING_KYC_RESULTS or REFERRED_KYC, to be able to complete it. A user with a not started compliance process can't complete compliance.
  • DECLINED: The user entity is not compliant with the requirements. Important: The compliance process must have started and be in PENDING_KYC_RESULTS, to be able to decline it. A user with a not started compliance process can't decline.

Note: Ids must follow UUIv7 format and should be unique per request. Identical requests will be ignored.

Note: The merchantId expected is the Toqio Merchant id.

Note: The userId expected is the Toqio User id.

Note: previousStatus field will keep track of what previousStatuses are expected to be but the final check will be done in Toqios DB with the current status of the merchant.

webhookType: USER_COMPLIANCE_TRANSITION

Model

{  
    "id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$",
      "notEmpty": true
    },
    "provider": {
      "type": "string",
      "notEmpty": true
    },
    "merchantId": {
      "type": "string",
      "notEmpty": true
    },
		"userId": {
      "type": "string",
      "notEmpty": true
    },
    "status": {
      "type": "string",
      "notEmpty": true
    },
    "previousStatus": {
      "type": "string",
      "notEmpty": false
    },
    "declinedReason": {
      "type": "string",
      "notEmpty": false
    }
}

Example

{
  "id": "018a3c96-4f9f-7b9b-9333-2e97b94e27af",
  "provider": "MY_COMPLIANCE_PROVIDER",
  "merchantId": "67a24300c4r9af70f863fb12",
	"userId": "67a24300c4r9af70f863fb11",
  "status": "REFERRED_KYC",
	"previousStatus": "DECLINED",
	"declinedReason": null
}