Send Qualified Envelopes

Add an identity check before the ceremony

Add the optional identity_verification step to a qualified signer's ceremony

Private beta. Qualified signatures are available on request. See Request access.

Every qualified signer’s identity is already verified. Their qualified trust service provider (QTSP) checks who they are before it issues their certificate, as part of signing. A qualified envelope needs nothing else.

If you also want an identity check before the signer can see the documents, add an identity_verification step to the recipient’s ceremony authentication. The signer completes it with an identity verification provider, then returns to the ceremony.

Add the step

Add identity_verification to the authentication array of the recipient’s ceremony, after the main method:

{
  "type": "qualified_signer",
  "key": "jane",
  "name": "Jane Doe",
  "email": "jane@example.com",
  "scheme": "eu_eidas",
  "ceremony": {
    "authentication": [
      { "type": "email_link" },
      { "type": "identity_verification", "method": "document_selfie" }
    ]
  }
}

The rest of the envelope stays as in the quickstart.

Rules

  • It’s enabled per account, separately from qualified signatures. Contact support to turn it on. Until then, a request that uses it fails validation.
  • It can’t come first. It’s a challenge that follows a main method, such as email_link or custom. The main method still decides how the signer gets the ceremony link. See ceremony authentication.
  • It appears at most once per ceremony.
  • method is required. There’s no automatic choice.
  • provider is optional. It defaults to stub, the only provider available. stub is a built-in test provider that simulates the check without contacting a real identity service.

Methods

methodThe signer…
document_selfiePhotographs an identity document and takes a selfie for a liveness and face match.
eidSigns in with a national or government-issued electronic identity scheme.
video_identCompletes a video session with an agent who checks their identity document.
reuse_credentialReuses an identity credential they already hold with the provider.

What the signer sees

When the signer opens the ceremony, a dialog covers the document until the check is done.

1

Start the check

The dialog explains the check. The signer clicks Verify my identity.

Ceremony dialog reading To show you this document, we need to verify your identity, with a Verify my identity button

The ceremony then sends them to the provider. If the browser doesn't move on by itself, they click Continue to the identity check.

Ceremony dialog reading Taking you to the identity check, with a Continue to the identity check button

2

Complete the check with the provider

The signer completes the check on the provider's page. The stub provider shows a test page that lets you approve or reject the check.

Stub provider page titled Identity verification (stub), showing the method and Approve and Reject links

3

Return to the ceremony

Back in the ceremony, the dialog shows Confirming your identity check while the result is recorded.

Ceremony dialog reading Confirming your identity check

The dialog closes and the document appears. The ceremony continues as usual, starting with the consent to sign electronically.

Ceremony showing the document with the consent dialog and its Agree and Continue button

If the check fails

If the provider doesn’t confirm the signer’s identity, the dialog says so and offers Try again, which starts a new check.

Ceremony dialog reading We could not verify your identity. You can try again, with a Try again button

After five rejected checks, the step locks. The signer can’t try again and is asked to contact the sender.

Ceremony dialog reading We could not verify your identity after several attempts. Please contact the sender of this document

Track the result

The envelope’s events record the check:

  • recipient.identity_verification_started: the signer was sent to the identity verification provider.
  • recipient.identity_verified: the provider confirmed the signer’s identity.
  • recipient.identity_rejected: the provider didn’t confirm it.

Subscribe to them with webhooks, like any other event.