Get NFC verification results

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Overview

Use this method to retrieve NFC-based ID verification check results based on the data extracted from the applicant’s compatible identity documents.

Request example

curl -X GET \
     'https://api.sumsub.com/resources/checks/latest?applicantId=66bb9b44fc99ec3ef8y5ppph&type=NFC' \
     -H 'X-App-Token: <your-app-token>' \
     -H 'X-App-Access-Sig: <your-signature>' \
     -H 'X-App-Access-Ts: <unix-timestamp>'

Response explained

The response represents a list of checks.

Root variables

The root variables are the core check result data items. Some of them may include nested attributes and element fields.

FieldTypeDescription
answerStringOverall result of the NFC check.
  • GREEN — when the document chip was successfully read.
  • RED — only when the chip could not be read (processing error).
⚠️ The overall answer reflects only whether the chip was read, not the certificate-validation outcome. Inspect nfcCheckInfo.validCertificate separately to see whether the document certificate was valid and current — answer can be GREEN while validCertificate is RED.
checkTypeStringIndicates this is the NFC check type.
createdAtDateDate and time (UTC) of the latest NFC check result.
idStringUnique identifier of the check.
inputDocObjectDefines the document used for the check.
nfcCheckInfoObjectDetails of the NFC check results.

inputDoc attributes

FieldTypeDescription
idDocTypeStringType of document used for NFC-based ID verification.
countryStringAlpha-3 code (for example, DEU, GBR, ARG) of the country where the document was issued.

nfcCheckInfo attributes

FieldTypeDescription
validCertificateStringIndicates whether the document certificate is valid and current.
  • GREEN — the certificate is valid and current.
  • RED — the certificate is invalid or expired.
extractedDataObjectIncludes the data obtained through the NFC chip of identity documents.
processingErrorsArray of objectsEach error object contains a reason field explaining the cause of the error (for example, userCancelled, userSkipped).
validationObjectContains the results of validation checks performed during NFC verification.

extractedData attributes

FieldTypeDescription
signedDataObjectIncludes the data that has been cryptographically signed to prove its authenticity and integrity.
mrzInfoObjectContains the MRZ (Machine-Readable Zone) data extracted from the ID document.
imagesObjectIncludes the data on the images uploaded.

signedData attributes

FieldTypeDescription
issuerPrincipalStringRefers to the identity of the entity that issued the document.

mrzInfo attributes

FieldTypeDescription
fullMrzStringContains the full Machine-Readable Zone (MRZ) data from the ID document.
dateOfExpirationDateDocument expiration date. Presented as a UNIX timestamp.
documentNumberStringDocument registration number.
issuingStateStringISO 3166-1 code of the country or state that issued the document (for example, DEU, GBR, ARG).
Refer to the list of countries and document types that are available via Sumsub NFC verification.
nationalityStringApplicant's country of origin as specified in the document. Presented as an ISO 3166-1 country code (for example, DEU, GBR, ARG).
identifierStringName of the user.
dobDateApplicant's date of birth. Presented as a UNIX timestamp.
genderStringGender of the applicant (M, F, or X). This field can be omitted if not specified.

images attributes

FieldTypeDescription
faceMimeTypeStringIndicates the type and format of the image for the "face" field (for example, image/jpeg, image/png).

validation attributes

FieldTypeDescription
accessControlStatusObjectContains the results of access control checks performed during NFC verification.
activeAuthenticationObjectContains the result of active authentication performed on the document chip.
certificateChainArray of objectsContains information about certificates in the document certificate chain.
certificateMasterListCheckBooleanIndicates whether the document certificate passed validation against the certificate master list.
certificateSelfCheckBooleanIndicates whether the document certificate passed the self-check.
hashValidationObjectContains the results of hash validation for data read from the document chip.

accessControlStatus attributes

FieldTypeDescription
bacObjectContains the result of the Basic Access Control (BAC) check.
eactaObjectContains the result of the Extended Access Control Terminal Authentication (EACTA) check.
paceObjectContains the result of the Password Authenticated Connection Establishment (PACE) check.

Access control check attributes

The following attributes apply to the bac, eacta, and pace objects.

FieldTypeDescription
errorCodeStringError code returned for the access control check.
statusStringStatus of the access control check. Available options: success, unknown, error.

activeAuthentication attributes

FieldTypeDescription
errorCodeStringError code returned for the active authentication check.
statusStringStatus of the active authentication check. Available options: success, unknown, error.

certificateChain element fields

FieldTypeDescription
nameStringName of the certificate in the document certificate chain.

hashValidation attributes

FieldTypeDescription
imagesBooleanIndicates whether image data read from the document chip passed hash validation.
mrzInfoBooleanIndicates whether MRZ information read from the document chip passed hash validation.

Response examples

If the request is successfully sent and processed, you will get a response like one of those below.

// The document chip has been read and the document certificate is valid.

{
    "checks": [
        {
            "answer": "GREEN",
            "checkType": "NFC",
            "createdAt": "2025-08-07 11:16:21",
            "id": "e52cb57b-0e7a-4e46-8a3b-3cc490516802",
            "inputDoc": {
                "idDocType": "ID_CARD",
                "country": "KAZ"
            },
            "nfcCheckInfo": {
                "validCertificate": "GREEN",
                "extractedData": {
                    "signedData": {
                        "issuerPrincipal": "CN=Certificate Authority Offline-1, OU=eDocuments and eID, O=Republic of Kazakhstan, C=KZ"
                    },
                    "mrzInfo": {
                        "fullMrz": "IDKAZ0533757222910000000000<<<\n9104071M0000000KAZ<<<<<<<<<<<9\nDOE<<JOHN<<<<<<<<<<<<<<<<<\n",
                        "dateOfExpiration": 1973721600000,
                        "documentNumber": "100000089",
                        "issuingState": "KAZ",
                        "nationality": "KAZ",
                        "identifier": "DOE JOHN",
                        "dob": 670982400000,
                        "gender": "M"
                    },
                    "images": {
                        "faceMimeType": "image/jpeg"
                    }
                }
            }
        }
    ]
}
// The document chip has been read but the document certificate is invalid.

{
    "checks": [
        {
            "answer": "GREEN",
            "checkType": "NFC",
            "createdAt": "2025-08-07 11:16:21",
            "id": "e52cb57b-0e7a-4e46-8a3b-3cc490500000",
            "inputDoc": {
                "idDocType": "ID_CARD",
                "country": "KAZ"
            },
            "nfcCheckInfo": {
                "validCertificate": "RED",
                "extractedData": {
                    "mrzInfo": {
                        "documentNumber": "100000000",
                        "issuingState": "KAZ",
                        "nationality": "KAZ",
                        "identifier": "DOE JOHN",
                        "dob": 670982400000,
                        "gender": "M"
                    }
                }
            }
        }
    ]
}
// The document chip could not be read (processing error).

{
    "checks": [
        {
            "answer": "RED",
            "checkType": "NFC",
            "createdAt": "2025-08-05 14:06:23",
            "id": "36c65d0e-0760-43e0-ae2c-acfc14d50efe",
            "inputDoc": {
                "idDocType": "ID_CARD",
                "country": "KAZ"
            },
            "nfcCheckInfo": {
                "processingErrors": [
                    {
                        "reason": "userCancelled"
                    }
                ]
            }
        }
    ]
}
// Empty `checks` array means the NFC check was not performed for this applicant.

{
  "checks": []
}

If the request fails, you will receive an HTTP response containing an error code along with a message explaining the error. For example:

{
    "code": 404,
    "description": "Applicant with id 682e260519dabfbd86d9b45d not found",
    "type": "de.smtdp.commons.service.exceptions.ServiceException"
}
Query Params
string
required

Unique applicant identifier in the Sumsub system.

This identifier is a random combination of 24 digits and lowercase Latin characters. It is automatically generated when the applicant is created on the Sumsub side, and can be found in the Dashboard.

If the applicantId is unknown to you, use the Get applicant data (externalUserId) method to fetch it.

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here!