Questions and Answers

Overview

The Questions and Answers (Q&A) feature provides you with an easy way to retrieve compliance questions from Solaris (e.g., for Customer Due Diligence), collect answers from the customer in your solution, and then pass the answers back to Solaris.

For the Customer Due Diligence use case, Solaris will generally create question sets in case a customer ends up with a "yellow" status during screening.

This guide explains the flow behind the Q&A API and how to implement it in your solution.

Partner flow: Q&A

Diagram: Q&A API partner flow

The Q&A process works as follows:

  1. Solaris creates a set of due diligence questions for one of your customers based on an internal event (e.g., findings as part of the Customer Due Diligence process). These are stored as an array of question resources within a single question_set resource.
  2. Solaris will send a notification on the QUESTIONS_REQUIRE_RESPONSE webhook event. The payload will contain the following:

    • The recipient of the question set. This can be one of the following:

      • CUSTOMER: You must prompt your customer in your frontend to answer the questions by the deadline.
      • PARTNER: Your support department must answer the questions. In this case, do not show the questions to the customer.
    • The set of questions to be answered.
    • The deadline by which the recipient must answer the questions in the set.
  3. Derive the questions from the webhook payload (or by calling GET Retrieve questions in a question set and prompt your customer to answer them in your frontend.
  4. For each question in the set, call PATCH Create answer for a question.

  5. Solaris will review the answers. If more follow-up questions become necessary, then Solaris will create a new question_set resource and the process will restart from step 1.
important
  • Solaris will not review the answers to the questions until you create an answer for each question in the set and mark each one as ready_for_review.
  • If a customer fails to answer all questions before the deadline, then Solaris will initiate a regular account closure shortly thereafter. Contact your Partner Manager for more information about this process.
  • Solaris will not send any reminders about the deadline; this responsibility falls on the partners.
  • If the recipient of a question set is PARTNER, then your support department must answer the questions. Do not show these questions to the customer.

Q&A API endpoints

PATCH Create an answer for a question

This endpoint creates an answer for a single question in a question set.

Note that Solaris will not review answers until you set the value of ready_to_review to true for each question in the question set.

Request URL:

PATCH /v1/question_set/{question_set_id}/questions/{question_id}/answer

Request example:

Copy
Copied
{
  "response": "Here is my answer to the question",
  "partner_notes": "Optional notes",
  "attachments": [
    "4c9464a1a29cbb5cf6090463ef7f49b9cdoc",
    "876464a1a29cbb5cf6090463ef7f49a6cdoc"
  ],
  "ready_for_review": true
}

Response example:

Copy
Copied
{
  "id": "1f0130f81d84ed3c75b32c428d5d7d93cqst",
  "question": "Provide your annual KYC report.",
  "answer_type": "TEXT_AND_FILES",
  "deadline": "2022-09-15T11:20:16.840208Z",
  "allowed_document_types": [
    "KYC_REPORT"
  ],
  "created_at": "2022-09-15T11:20:16.920885Z",
  "updated_at": "2022-09-15T11:20:16.920914Z",
  "answer": {
    "response": "Here is my annual KYC report",
    "partner_notes": "Optional partner notes",
    "attachments": [
      "4c9464a1a29cbb5cf6090463ef7f49b9cdoc"
    ],
    "ready_for_review": true
  }
}

Click here to view the full documentation.

GET Retrieve questions in a question set

This endpoint returns an array containing each question in a question set.

Request URL:

GET /v1/questions/{question_set_id}

Response example:

Copy
Copied
{
  "id": "b4897de4ad4142faa0a7822b84edf597cqset",
  "entity_id": "1fa130f81d84ed3c75b32c428d5d7d93cper",
  "context_id": "1fa130f81d84ed3c75b32c428d5d7d93ccnt",
  "description": "some description",
  "deadline": "2023-12-07T00:00:00Z",
  "recipient": {
    "recipient_id": "1fa130f81d84ed3c75b32c428d5d7d93cper",
    "recipient_type": "CUSTOMER"
  },
  "questions": [
    {
      "id": "1f0130f81d84ed3c75b32c428d5d7d93cqst",
      "question\"": "Provide your current address.",
      "answer_type\"": "TEXT_AND_FILES",
      "deadline\"": "2022-09-15T11:20:16.840208Z",
      "allowed_document_types\"": "KYC_REPORT"
    }
  ]
}

Click here to view the full documentation.

Testing

To test this feature, implement the following steps on one or more of the testing environments:

  1. Create a person.
  2. Complete customer KYC for the person.
  3. Create a suspicious device activity using the suspicious test ID in the linked guide.

Solaris will auto-generate a question set for the customer, and you will receive a webhook notification as described above.