Skip to main content

Philsys QR Check API

The following document outlines the details of the Philsys QR Check API.

API Description

Objective

The Philsys QR Check API processes raw QR code text from various types of QR codes, such as Digital ID, the Philippine Identification System ID (Philsys ID Card), ePhil ID, and National ID Signed and provides structured responses containing relevant details.

InputOutput
Raw QR Code ValueThe user's personal information, QR code type, and identity verification data. The complete list of output fields is available in the Success Response Details section
info
The Philsys QR Check API can process multiple types of Philippine ID QR codes, including Digital ID, Philsys Card, ePhil ID, and National ID Signed formats.

API URL

https://ind-thomas.hyperverge.co/v1/PhilsysQRCheck

API Endpoint

PhilsysQRCheck

Overview

The API is RESTful and uses standard HTTP verbs and status codes. The responses are in JSON format and you should send all data in JSON format through a POST request.

Authentication

You need a unique pair of application ID ( appId ) and application key (appKey) from HyperVerge to verify your identity for accessing the API.

API Request Details

Method - POST

Headers

ParameterMandatory or OptionalDescriptionValid Values
content-type Mandatory This parameter defines the media type for the request payload.application/json
appIdMandatoryThe application ID shared by HyperVergeNot Applicable - this is a unique value
appKeyMandatoryThe application key shared by HyperVergeNot Applicable - this is a unique value
transactionIdMandatoryThe unique ID for the customer journey.Not Applicable - this is a unique value related to a transaction in your application

Input

The following table provides the details of the parameter required for the API's request body:

ParameterMandatory or OptionalDescriptionAllowed ValuesDefault Value
valueMandatoryThe raw QR code valueValid QR code stringNot Applicable

Request

The following code snippet demonstrates a standard curl request for the API:

curl --location --request POST 'https://ind-thomas.hyperverge.co/v1/PhilsysQRCheck' \
--header 'Content-Type: multipart/form-data' \
--header 'appId: <Enter_the_HyperVerge_appId>' \
--header 'appKey: <Enter_the_HyperVerge_appKey>' \
--header 'transactionId: <Enter_the_HyperVerge_transactionID>' \
--form 'value="<raw_qr_code_value>"'

Success Response

The following code snippets demonstrate success responses from the API for different QR code types:

{
"status": "success",
"statusCode": 200,
"result": {
"data": {
"digitalId": "<digital_id>"
},
"meta": {
"qrType": "Digital ID"
}
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}

Success Response Details

The following table outlines the details of the success response from the API:

ParameterTypeDescription
dataobjectContains the detailed information extracted from the QR code
issuerstringThe issuing authority
versionstringThe version of the QR code standard used
digitalIdstringUnique identifier for the user in the digital ID system
pcnstringPersonal Control Number associated with the user
firstNamestringThe first name of the user
lastNamestringThe last name of the user
birthDatestringThe date of birth of the user
issuedAtstringThe date and time when the ID was issued
middleNamestringThe middle name of the user
suffixstringAny suffix associated with the user's name
sexstringThe gender of the user
bloodTypestringThe blood type of the user
maritalStatusstringThe marital status of the user
placeOfBirthstringThe birthplace of the user
bestFingerCapturedarrayList of best-captured finger(s) data for biometrics
photostringBase64-encoded image or URL of the user's photo
metaobjectAdditional metadata about the QR code
qrTypestringType of the QR code scanned

Error Responses

{
"status": "failure",
"statusCode": 400,
"error": {
"message": "The value field is required"
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}

Error Response Details

A failure or error response from the module contains a failure status, with a relevant status code and error message.
The following table lists all error responses:


Status CodeError MessageError Description
400The value field is requiredThis error occurs when we pass empty value as an input
401Invalid authorization credentialsThe request is either missing the mandatory appId and appKey combination or has invalid values
403Invalid credentialsContact HyperVerge for investigation
422Invalid QR code formatThis error occurs when we pass invalid qr code value
500Internal Server ErrorPlease check the request headers or contact the HyperVerge team for resolution
503External source downtimePlease contact the HyperVerge team for resolution
Was this helpful?
Ask AIBeta
Hi! How can I help?
Ask me anything about HyperVerge products, APIs, and SDKs.
Try asking: