Passport configuration

How to customize the passport flow.

The passport flow starts with the end user taking a picture of the page containing an MRZ tag in their passport. This image will be analyzed by our OCR services and data gets processed to conclude the result. Optionally, the user can make small corrections when they spot a mistake in the data.

These are the passport configuration options:

  • isEditable
    boolean - default false
    Choose if the user can add corrections to the OCR result.
  • threshold
    number - default 0.8
    Minimum score to pass the verifying process in decimal format. (0.8 = 80% match)
    If there are multiple scores calculated, all scores must be greater than the threshold.
  • countryCodeBlacklist
    string array - default null
    A list of country codes that are NOT allowed to pass the verifying process. A country code consists of 3 characters and should match the country code on the passport of the blacklisted country. For the inverse option (whitelist), you can specify the country code that is expected in the initial Verification's countryCode field.
  • minimumAge
    number - default null
    Optional parameter to set a minimal age the subject of the ID should have.
  • expiryThreshold
    text - default null
    Optional parameter to set a minimal lifetime before an expiry date can be met. Example, the ID card has to be valid for at least 6 months, then the value of this field should be "P6M".
    ISO 8601 duration format reference
  • validateNFC
    boolean - default false
    Choose if the NFC validations must pass if passport support reading NFC chip.
  • validations
    string array - default null
    Optionally provide a list of validations to perform on a process. By default all validations will run. Only possible on processes with multiple different validations.
    • restrictedCountry - will validate if the passport is not mentioned in the countryCodeBlackList config value.
    • restrictedNationality - will validate if the passport is not mentioned in the countryCodeBlackList config value.
    • expired - will validate if the expiry date has been exceeded.
    • aboutToExpire - will validate the expiry date and compare to the expiryThreshold config value.
    • restrictedAge - will validate if the ID card result belongs to someone older than the minimumAge config value.
    • comparison - will compare the initial verification data with the OCR and edits results.
    • nfcNotSupported - will validate if the user submitted an NFC scan result, if validateNFC config value is set to true.
    • passiveAuthFailed - will validate if the submitted an NFC scan contains an authentic signature, if validateNFC config value is set to true.
    • activeAuthFailed - will validate if the submitted an NFC scan contains an authentic signature derived from the active authentication challenge, if validateNFC config value is set to true.

Example:

{
  "passportConfig": {
    "required": true,
    "attempts": 2,
    "isEditable": true,
    "threshHold": 0.8,
    "minimumAge": 21,
    "expiryDuration": "P6M",
    "validateNFC": true,
    "validations": [
      "aboutToExpire",
      "activeAuthFailed",
      "comparison",
      "expired",
      "nfcNotSupported",
      "passiveAuthFailed",
      "restrictedAge",
      "restrictedCountry",
      "restrictedNationality"
    ],
    "endFlowOnFailure": false
  }
}