Skip to content

Standard Amiqus Integration Flow

This guide walks you through creating a new Amiqus check during a user’s registration on your website. The steps focus on the key Amiqus API endpoints and the recommended webhook setup.

Prerequisites

  • Webhook registration: Ensure you have configured a webhook endpoint to receive record update notifications. You can use the webhook setup guide to get started. This will allow you to track when a user has completed their Amiqus check.
  • Amiqus API credentials: You will need valid credentials to use the Amiqus API.

Cases are a beta feature and may not be available to all clients. Steps that involve cases are marked as optional (beta).

Overview of the flow

Once the user registers on your website and provides their details, you will create a client. If your team has access to Cases (beta), you may also create a case for that client (or use an existing case) and store the case ID. You will then create a record for the client and store the record ID. If using Cases, update the case items to include the record. Amiqus will email the user to complete their checks, and your webhook will notify you when the checks are done.

Step-by-step guide

1. User registration on your website

During your user’s normal sign-up process, ensure you collect at least:

  • Full name
  • Email address

These fields are required when creating a client in Amiqus.


2. Initiate the Amiqus check workflow

2.1 Create a Client

Using the Amiqus API, create a client.

Request example

json
{
  "name": {
    "title": "mr",
    "first_name": "Martin",
    "middle_name": "Seamus",
    "last_name": "McFly"
  },
  "email": "marty@example.com"
}

On success, store the client id from the response for later steps.


2.2 (Optional, beta) Create a Case

If your team has access to Cases, you can create a case for the client. You may also want to link the new record to an existing case.

Request example

json
{
  "client": 7832,
  "name": "Onboarding Case"
}

On success, store the case id for linking records to this case.


2.3 Create a Record

You have two options when creating a record:

  • Define checks manually by passing an array of steps
  • Use a predefined template by passing a template ID, which can be retrieved via the record templates endpoint

Option A: Using steps

json
{
  "client": 7832,
  "steps": [
    {
      "type": "check.photo_id",
      "preferences": {
        "report_type": "standard",
        "docs": [
          "passport",
          "driving_licence"
        ]
      }
    }
  ],
  "notification": "email"
}

Option B: Using a template

json
{
  "client": 7832,
  "template": 12,
  "notification": "email"
}

You will receive a record id in the response. Store this for webhook correlation and, if using Cases, for case association.

Tip: If you want to notify the user outside of Amiqus, set "notification": false. This prevents Amiqus from sending an email and instead gives you a perform_url you can share via your own channels.


2.4 (Optional, beta) Add the Record to the Case

If you created a case earlier or you already had a valid case against this client, update the case to include the new record using the Update Case Items endpoint.

Request example

json
[
  {
    "id": 983434,
    "type": "record"
  }
]

This associates the record with the case for grouped tracking and reporting.


3. Wait for the user to complete their checks

Amiqus will send your user an email (where notifications are enabled) containing a link to complete their checks. Once they have submitted the required details:

  • Amiqus will update the record’s status.
  • A webhook notification will be sent to the endpoint you configured, allowing you to update your system accordingly, for example marking a user as verified.

What happens next?

After receiving the record update webhook, you may want to:

  1. Confirm the checks passed, or handle any failures or requests for more information. You can do this by retrieving the latest record to get the overall status, or by listing all steps within a record to get the status for each individual check.
  2. Update your internal user profile status, for example “Verified”.
  3. Inform your user of their successful verification.