Overview of the Veriscope State Machines

Veriscope comes with three state machines that help to automate the transfer of data between peers. That data can be either:

  • Signature data

  • KYC data requests

  • Encrypted KYC/IVMS data

The state machines are described in the following pages.

The state machines were released end-of-June-2022. If you are running an older version of Veriscope, you must update your installation and implement logic to handle new states & webhook events.

Veriscope State Machines

Name Key Description

KYC Template

status

Tracks the overall state of a KYC template from START through to Accepted/Rejected. Includes VASP signature checks, is a VASP verified, is a VASP API_URL available etc.

Networking (data requests)

webhook_status

Tracks the state of signature and KYC data requests sent back and forth between peers. Does not include encypted IVMS data transfers as these can be sent out of sequence.

Encrypted IVMS

ivms_status

Tracks the state of encrypted KYC/IVMS data sent between peers. These can be sent multiple times and in any sequence. Note: If an ivms_state_code is included in the KYC template, no new KYC/IVMS webhook event is triggered. It is thus recommended to send the final version of your KYC/IVMS before accepting or rejecting a transfer.

Eash of these states is included in the KYC template as illustrated below.
/create_kyc_template response (200 OK)
{
    "attestation_hash": "0xd75dceb4faa2750202c2eaa7b3ec3b73092d4e9b9521484bc7f083f4cca46f7c",
    "status": "BE_TA_VERIFIED",
    "webhook_status": "START",
    "ivms_status": "START",
    ...
    ...
    ...
}
/get_kyc_template body
{
    "serverParams": {
        "page": 1,
        "perPage": 10
    },
    "totalRecords": 1,
    "rows": [
        {
            "id": 7,
            "attestation_hash": "0xd75dceb4faa2750202c2eaa7b3ec3b73092d4e9b9521484bc7f083f4cca46f7c",
            ...
            ...
            ...
            "status": "BE_TA_VERIFIED",
            "webhook_status": "OR_DATA_REQ_RECEIVED",
            "ivms_status": "START"
        }
    ]
}