# Signicat Paper


Page contents

# Supported features

Signicat Paper is Signicat's own eIDV solution. It is integrated with Assure API and provides the following features:

  • ID document check
  • Redaction of ID images (see separate page for more details)

If you need help with the technical integration with Signicat Paper, please contact us at support@signicat.com.

# Service details for Paper

This section goes into detail about some useful endpoints when integrating with Paper:

# Get process

This section describes the final result statuses for Paper in the "Get process" response. For a more general description of how the "Get process" endpoint works, see Service details > Get process and the API reference (opens new window).

# Final result status

Based on Paper's results, the Assure API returns one of the following final statuses in the "Get process" response:

Assure API's final status Description
accepted It was possible to read the document and verify the information.
inconclusive It was possible to read the document but the information could not be verified since the MRZ area was missing or unreadable. Documents without MRZ will never be accepted. They will be inconclusive if the data in the text fields are valid, or rejected if they are not valid. This means, only reading the text fields is not enough to guarantee that the data is valid.
rejected It was possible to read the document, but an error was found or at least one verification failed. List of errors is returned in the response.
failed It was not possible to read the document, since an error prevented the verification from continuing. For example, the end-user may have blocked the access to the camera on their device.
canceled The verification was cancelled by the end-user.

# accepted

This is a response example of a Paper process that was accepted:

    {
        "processId": "processId",
        "provider": "signicatpaper",
        "status": "accepted",
        "createdAt": "createdAt",
        "updatedAt": "updatedAt",
        "finalResult": {
            "firstName": "Maria Paula",
            "lastName": "Santos Mendes",
            "dateOfExpiry": "2020-10-15",
            "gender": "F",
            "nationality": "PRT",
            "documentType": "passport",
            "documentNumber": "1234567890",
            "issuingCountry": "PRT",
            "dateOfBirth": "2002-04-29"
        },
        "providerSpecific": {
            "verification": {
                "type": "MRZ_FEATURE_COMPARISON",
                "status": "true"
            },
            "features": {
                "firstName": "Maria Paula",
                "lastName": "Santos Mendes",
                "dateOfExpiry": "2020-10-15",
                "issuingAuthority": "SEF SERV ESTR E FR0NTE1RAS",
                "gender": "F",
                "documentNumber": "1234567890",
                "dateOfBirth": "2002-04-29",
                "personalNumber": "1234567890",
                "dateOfIssue": "2015-10-15"
            },
            "mrz": {
                "firstName": "Maria Paula",
                "lastName": "Santos Mendes",
                "dateOfExpiry": "2020-10-15",
                "nationality": "PRT",
                "gender": "F",
                "documentType": "passport",
                "issuingCountry": "PRT",
                "documentNumber": "1234567890",
                "dateOfBirth": "2002-04-29",
                "personalNumber": "1234567890"
            },
            "mrzChecksum": {
                "dateOfExpiry": "VALID",
                "documentNumber": "VALID",
                "dateOfBirth": "VALID",
                "personalNumber": "VALID"
            },
            "mrzVerification": {
                "dateOfExpiry": "VALID",
                "documentType": "VALID",
                "issuingCountry": "VALID",
                "dateOfBirth": "VALID"
            },
            "mrzFeatureMatching": {
                "dateOfExpiry": "FULL_MATCH",
                "lastName": "FULL_MATCH",
                "issuingAuthority": "FOUND",
                "firstName": "FULL_MATCH",
                "documentNumber": "FULL_MATCH",
                "dateOfBirth": "FULL_MATCH",
                "driving_permits": "MISSING",
                "personalNumber": "LEVENSHTEIN1",
                "dateOfIssue": "VALID"
            }
        }
    }

For field descriptions, see the provider specific elements for Paper in the API Reference (opens new window).

# rejected

This is a response example of a Paper process that was rejected:


    {
        "processId": "processId",
        "provider": "signicatpaper",
        "status": "rejected",
        "createdAt": "createdAt",
        "updatedAt": "updatedAt",
        "finalResult": {
            "firstName": "Maria Paula",
            "lastName": "Santos Mendes",
            "dateOfExpiry": "2016-10-20",
            "gender": "F",
            "nationality": "PRT",
            "documentType": "passport",
            "documentNumber": "XY1101P52",
            "issuingCountry": "PRT",
            "dateOfBirth": "2002-04-29"
        },
        "providerSpecific": {
            "verification": {
                "type": "MRZ_ONLY",
                "status": "false"
            },
            "mrz": {
                "firstName": "Maria Paula",
                "lastName": "Santos Mendes",
                "dateOfExpiry": "2016-10-20",
                "nationality": "PRT",
                "gender": "F",
                "documentType": "passport",
                "issuingCountry": "PRT",
                "documentNumber": "XY1101P52",
                "dateOfBirth": "2002-04-29",
                "personalNumber": "1234567890"
            },
            "mrzChecksum": {
                "dateOfExpiry": "VALID",
                "documentNumber": "VALID",
                "dateOfBirth": "VALID",
                "personalNumber": "VALID"
            },
            "mrzVerification": {
                "dateOfExpiry": "INVALID",
                "documentType": "VALID",
                "issuingCountry": "VALID",
                "dateOfBirth": "VALID"
            },
            "errors": ["Invalid date_of_expiry: NOT in the future, value 2016-10-20"]
        }
    }

For field descriptions, see the provider specific elements for Paper in the API Reference (opens new window).

# inconclusive

This is a response example of a Paper process that was inconclusive:

    {
        "processId": "processId",
        "provider": "signicatpaper",
        "status": "inconclusive",
        "createdAt": "createdAt",
        "updatedAt": "updatedAt",
        "providerSpecific": {
            "verification": {
                "type": "FEATURES_ONLY",
                "status": "true"
            },
            "features": {
                "firstName": "Maria Paula",
                "lastName": "Santos Mendes",
                "issuingAuthority": "SEF SERV ESTR E FR0NTE1RAS",
                "gender": "UNEXPECTED_VALUE",
                "documentNumber": "47 00 006492 4",
                "dateOfBirth": "2002-04-29",
                "personalNumber": "1234567890",
                "dateOfIssue": "2000-08-23"
            },
            "featuresVerification": {
                "dateOfExpiry": "MISSING",
                "lastName": "FOUND",
                "issuingAuthority": "FOUND",
                "firstName": "FOUND",
                "documentNumber": "FOUND",
                "dateOfBirth": "VALID",
                "drivingPermits": "FOUND",
                "personalNumber": "FOUND",
                "dateOfIssue": "VALID"
            }
        }
    }

In this case, it was inconclusive because it was a document without MRZ ("FEATURES_ONLY").

For field descriptions, see the provider specific elements for Paper in the API Reference (opens new window).

# failed

A process gets the failed status if an error prevented the verification from completing. An example could be that the end-user has blocked access to the camera on the device.

This is a response example of a Paper process that failed:

{
  "status": "failed",
    "processId": "b16e9c37-dac5-4897-b6ba-055d5a1dadc3",
    "provider": "signicatpaper",
    "redactionRequested": false,
    "providerSpecific": {},
    "createdAt": "2021-04-29T11:57:02Z",
    "updatedAt": "2021-04-29T11:57:02Z",
    "failReason": {
        "type": "MicrophoneOrCameraPermissionDenied",
        "message": "No access to microphone/camera"
  }
}

In this case, you can find more information about why it failed in the failReason field. For more information, see the API Reference (opens new window).

# canceled

This is a response example of a Paper process that was cancelled by the end-user:

{
    "status": "canceled",
    "processId": "9ae09849-6c4d-429f-92e5-607ce8913ac1",
    "provider": "signicatpaper",
    "redactionRequested": false,
    "createdAt": "2022-03-14T14:34:19Z",
    "updatedAt": "2022-03-14T14:34:19Z"
}

# Download full result

In the Get process response, you get the results for Paper in the provider-specific area. For full information as obtained from the provider, use the Download full result service. This service returns a zip file containing data and media files about the verification.

# Data file

# analysis_result.json

This "raw" file contains all information about:

  • The text fields that were obtained from the document.
  • The data that was retrieved from MRZ reading the document.
  • The data for the verification of the fields and MRZ elements.

# Media files

Type File name/format Comment
front front.jpeg/png
back back.jpeg/png Only retrieved if the ID document has a backside.
selfie - The provider does not use selfies.
portrait portrait.jpeg/png
video - The provider does not capture videos.
Last updated: 02/05/2024 09:04 UTC