Verification checks

To prove the identity of your customers, Mosaic performs various checks that depend on the verification flow your app implements. Once a verification process is completed, the verification result will include a recommendation on how to proceed. For example, the diagram below represents the checks performed during the document verification process.

Document check


Verifying a government-issued identity document is used to establish the real-world identity of the user. It consists of:

  1. Document scanning
  2. Document classification
  3. Document authentication

Document scanning

The process begins by scanning a government-issued identity document, such as a driver's license or passport. Using their mobile device, the user takes a picture of the front and back of the document. These images are analyzed in real-time to check for potential issues that may cause them to be rejected and the user is instructed on what to do next. For example, the user is notified if:

  • image is blurry
  • document isn't supported
  • document wasn't captured
  • image is too dark
  • info is missing or isn't visible
  • glare is detected

Document classification

Once scanned, documents are automatically classified. We support over 10,000 documents worldwide (see Full Global Coverage). If a scanned document wasn't classified, the end user has to resubmit a request.

For example, documents are classified by:

  • country
  • type (Driver License, Passport, National ID, etc.)
  • document template

Mosaic allows restricting documents that match specific criteria, for example, US membership cards. Based on your requirements, you can enable several criteria for the same application, allowing for a tailored and efficient document management process. Each criterion comes with a customizable message that is presented to the end user and instructs them on how to proceed with verification, for example, upload additional documents.

Document authentication

The authenticity of the document is validated to make sure it hasn't been altered or forged. This is done by checking:

  • security features, such as holograms and laser engravings
  • portrait photo issues or inconsistencies
  • cross-references of personal and document data throughout the document
  • mismatches between the template used and the issue date
  • correctly formatted dates (e.g., MM/DD/YYYY vs DD/MM/YYYY)
  • correct fonts, including non-generic ones that can't easily be matched
  • check digits or checksums in the machine-readable data (MRZ lines)

Selfie & liveness check


In face authentication scenarios, a selfie check is used to ensure that the user indeed interacts with the app and is who they claim they are. In the document verification flows, a selfie check acts as a second layer of verification—if the uploaded document proves to be authentic, a check will ensure that it wasn't stolen. The selfie check consists of:

  1. Face liveness
  2. Face matching

Face liveness

Before a selfie of the user is matched to the photo ID in the document or the reference image, the selfie is analyzed to validate that it's indeed a live person. For example, liveness detection is used to detect:

  • printed photos
  • video replays
  • high-end silicone masks
  • photos on screen
  • face cutouts
  • realistic mannequins

Face matching

To complete the selfie check, the user's selfie must match the photo ID in the document or the reference image. Our face comparison technology was trained on over 400,000 faces and has been proven reliable, taking into account factors like:

  • age-match accuracy
  • race
  • gender
  • black & white vs color photos

Fraud detection


Our hosted identity verification solution includes a built-in integration with our Detection and Response services to add an additional layer of detection to the verification process. In addition to the verification checks, risk and trust are continuously assessed throughout the process. For each user interaction, telemetry data is streamed to the platform. Machine learning models and heuristics are applied to this data to detect risk signals, such as bots, spoofed devices, behavioral anomalies, malicious networks, and more.