Skip to main content

QES Onboarding API - Detailed Documentation

The QES Onboarding API allows you to initiate and manage qualified electronic signature (QES) workflows via a secure and customizable interface. This includes creating signing sessions, configuring webhooks for status updates, and retrieving verification results for audit or compliance checks.

API Playground:

Endpoints Overview

  1. Create Session Link: Initiates a QES signature session and returns a unique user signing URL.
  2. Configure Webhook: Registers a webhook to receive real-time updates for the onboarding session.
  3. Get Verification: Retrieves the full verification result for a specific onboarding session.

Sequence Diagram

The term “wizard” refers to the QES signing user interface that the end user completes after identification.

How to Prepare a PDF Document for QES

To ensure successful signing:
  1. Use Adobe Acrobat (Standard or Pro) to open your PDF.
  2. Go to Tools → Prepare Form.
  3. Insert at least one Signature Field where the user will sign.
    • The field must be a digital signature field (not just a form input).
  4. Add text fields (AcroFields) that can be dynamically filled during onboarding using fillform. These fields support placeholder variables to auto-populate identity data.
  5. Save the document and host it at a publicly accessible HTTPS URL.
Supported dynamic variables: These fields must have matching fieldIds in the fillForm array passed to the API. Onboarding will then substitute them with the correct values. For example:
Only AcroForm-compatible PDFs are supported. PDFs generated with third-party editors may not be recognized.

Authentication

To access the Address Verification API, authentication is required. A Bearer Token must be included in every request.
  • Tokens are valid for 60 minutes and must be refreshed after expiration.
  • Refer to the Authentication for detailed steps on obtaining a token.
  • Include the token in the Authorization header as follows:
Authorization: Bearer YOUR_ACCESS_TOKEN

API Base URL

Production:

Sandbox:


Endpoint

POST /onboarding/createSessionLink

Description

Starts a QES signing session for a specified user. Returns a URL that redirects the user to the signing wizard. The backend will send this session link to the user for document signing.

Required Headers

Request Body Parameters

Response Structure

Example Request

Example Response

To enable successful qualified signing, the document must include AcroForm-compatible signature fields created with Adobe Acrobat. Clients are responsible for preparing their own PDF templates and hosting them at a secure public URL.

2. Configure Webhook

Endpoint

POST /onboarding/configureWebhook

Description

Registers a webhook URL to receive onboarding status updates such as completed verification, signing, or failures.

Required Headers

Request Body Parameters

Response Structure

Example Request

Example Response

Webhook Event Payload Example

When your webhook receives a status update, the payload will look like this:
The status field in the webhook payload indicates the outcome of the onboarding session. Possible values are:
  • COMPLETED: The onboarding and signing process finished successfully.
  • FAILED: The process failed due to an error or unsuccessful verification.
  • CANCELLED: The process was cancelled by the user or system.

3. Get Verification

Endpoint

GET /onboarding/getVerification/{sessionId}

Description

Retrieves identity and signature verification results for a given onboarding session ID.

Required Headers

URL Path Parameters

Response Structure

For audit and compliance, focus on these fields from the verification result:
  • signature.signedAt: timestamp of when the document was signed.
  • signature.signedResource.resourceUrl: download link to the signed document.
  • identification.status: final KYC/identification outcome.
  • identification.personData: extracted personal details.
  • identification.validationDetail: shows which fields were validated and how (e.g. OTP, document).

Example Response (Completed)

Example Response (Failed)

Example Response (Error)

Error Handling

Standardized error codes and messages are returned to indicate issues with requests or processing.

Example Error Response

Common Errors


Environment & Testing

Base URLs

⚠️ All test flows use mock data and static PDFs unless otherwise configured.