French Solution Integration

Integration Guides

App Drop-in guide

This guide provides step-by-step instructions on how to integrate the French Identity Verification solution with the App Drop-in.

Before you begin, make sure you have completed the following:


Flow

Click to magnify

French solution App Drop-in flow

French solution App Drop-in flow


1. Authenticate

Create an access token to authenticate in our API:

  • You provide your Fourthline API credentials.
  • You receive an access_token.

API Reference – Create access token

Important

For security, access tokens are valid for 1 hour only.

If your token expires, create a new access token by making another Create access token request.


2. Create workflow

Create a workflow, providing your unique identifier for the client:

  • You specify the workflowName and provide your unique identifier for the client.
  • You receive a workflowId and a Fourthline clientId.

API Reference – Create workflow

Status Status: The Identity Verification case status and signature status change to new.

Fourthline checks that the status of the related Identity Verification case is one of the following:

FlowStatuses
Completed verificationcompleted with a risk score of 200 – 400 (not 500)
Pending verificationnew, pending, or completed with a risk score of 200 – 400 (not 500)

If the Identity Verification case status is valid, we perform the initial identity document check, and (if configured) the sanctions check.

Status Status: The signature status changes to one of the following:

StatusDescriptionAction
pendingThe client is eligible for a signature.Wait.
kyc_requiredThe client didn't pass one or more eligibility checks.Create a new workflow that includes IDV and QES.

- Upload identity data

If configured, upload relevant identity data:

  • You provide the verificationId and relevant data points.
  • A successful response is empty.

API Reference – Upload identity data


3. Upload documents to sign

Upload to Fourthline the document(s) you want the client to sign:

  • You provide the workflowId, information about the documents, and the files.
  • Documents can be uploaded in parallel as long as each document uses a unique document_id.
  • Requests around 26 MB may hit the default request size limit.
  • For optimal reliability and experience, we recommend keeping the number of documents per signature low (typically two or three).
  • A successful response is empty.

API Reference – Upload documents to sign

Status Status: The signature status remains pending.


4. Upload mobile number

Upload the client's mobile phone number for them to receive the passcode SMS to confirm the signature:

  • You provide the workflowId and the phone number.
  • A successful response is empty.

API Reference – Upload mobile phone number

Status Status: The signature status remains pending.


5. Create SDK session

Create the App Drop-in session:

  • You provide the workflowId.
  • You receive a validationCode to pass to the SDK in your backend.

API Reference – Create SDK session

Important

  • SDK validation codes are single-use and expire after 2 hours.
  • If the client stops partway through the workflow, create a new SDK session.
  • When the client closes the app, the validationCode is invalidated and removed from the cache.

Status Status: The case status changes to one of the following and we send the relevant webhook notification:

StatusDescriptionAction
pendingThe data is valid.Wait for the next status.
invalid_dataWe found invalid or missing data.Create a new workflow.

Status Status: The case status then changes to one of the following and we send a webhook notification:

StatusDescriptionAction
inconsistent_dataWe found inconsistent data.Create a new workflow.
completedWe have processed the case.
For our recommendation to accept or reject the client, see the risk code.
Download the CDD Report.

- Check case status

When you receive webhook notifications, we recommend also requesting the full case details:

  • You provide the verificationId (same value as the workflowId).
  • You receive all the data on the case.

API Reference – Get case status

Status Status: The signature status changes to one of the following and we send a webhook notification:

StatusDescriptionAction
signedThe signed documents are available.

- Check signature status

When you receive webhook notifications, we recommend also checking the signature status:

  • You provide the signatureId (same value as the workflowId).
  • You receive the current status and status code.

API Reference – Get signature status

Important

Prevent duplicate submissions by following the recommended handling described here.


6. Download CDD Report

When the case status is completed, download the CDD Report zipfile:

  • You provide the workflowId.
  • A successful response is empty and the report is downloaded.

API Reference – Get CDD zipfile


7. Download signed documents

When the signature status is signed, download each signed document:

  • You provide the signatureId (same value as the workflowId) and relevant documentId.
  • You receive a message in plain text and the PDF document.

API Reference – Get signed document

If you have the fallback QTSP option configured, check if an InfoCert contract was generated, which you are required to download and share with the client:

  • You provide the signatureId (same value as the workflowId).
  • You receive one of the following empty responses:
    • 200: The signature flow was directed to InfoCert and the response returns the contract to share with the client.
    • 204: The signature flow was directed to Namirial so no contract is returned.

API Reference – Get InfoCert contract