Documentation Index
Fetch the complete documentation index at: https://docs.quepass.com/llms.txt
Use this file to discover all available pages before exploring further.
1. Function
val sdkConfigs = SDKConfigs(
activeLivenessEnable = true/false,
passiveLivenessEnable = true/false,
kioskEnable = true/false
)
val sDKBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.setDocumentNumber("xxx-xxxx-xxxxxxxx-x")
.setEventID(selectedEventId)
.setDocumentType("uid")
.setAuthenticateForEvent(true/false)
.setTicketType("ticketType")
.setGovIntegration(true/false)
.functionType(FunctionType.ON_BOARDING)
.faceHandHandler { sdkResponse ->
// handle sdk callback
}
.build()
Launcher.launch(sDKBuilder, context)
2. Required Parameters
| Journey | Required Parameters |
|---|
| Onboarding | sdkConfigs, functionType |
| Transaction | sdkConfigs, functionType, biometricType, uid |
| Authentication | sdkConfigs, documentNumber, eventId, documentType, setAuthenticateForEvent, functionType |
| Search | sdkConfigs, functionType |
| Search Capture | base64Image, biometricType, govVerification, eventId |
| Get Events | eventId, status |
| Event Registration | sdkConfigs, eventId, ticketType, govVerification, functionType |
| Embedded View (KIOSK_MODE_CAMERA) | sdkConfigs, documentNumber, eventId, documentType, setAuthenticateForEvent, functionType |
| ExpressVerification | sdkConfigs, identifierType, nationality, identifierNumber, functionType |
| ExpressOnboarding | sdkConfigs, identifierType, nationality, identifierNumber, functionType |
3. Journey Examples
1. Onboarding
Required Parameters
- sdkConfigs (object) – Configuration settings for the SDK
- functionType (enum) – Must be set to
FunctionType.ON_BOARDING
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigs = SDKConfigs(
activeLiveness = true,
passiveLiveness = true,
kioskMode = false
)
val sdkBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.functionType(FunctionType.ON_BOARDING)
.sdkGeneralHandler { response ->
if(response.code == 200){
val uid = response.data?.jsonObject?.get("uid")
val token = response.data?.jsonObject?.get("token")
}
}.build()
Launcher.launch(sdkBuilder, context)
2. Transaction
Required Parameters
- sdkConfigs (object) – Configuration settings for the SDK
- functionType (enum) – Must be set to
FunctionType.TRANSFER
- biometricType (string) – Type of biometric data (e.g.,
"face")
- uid (string) – User identity
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigs = SDKConfigs(
activeLiveness = true,
passiveLiveness = true,
kioskMode = false
)
val sdkBuilder = SDKBuilder.builder()
.functionType(FunctionType.TRANSFER)
.setBiometricType("face")
.sdkConfigs(sdkConfigs)
.setUiD(uid)
.sdkGeneralHandler { response ->
if(response.code == 200){
// transaction verified
}
}.build()
Launcher.launch(sdkBuilder, context)
3. Authentication
Required Parameters
- sdkConfigs (object) – Configuration settings for the SDK
- documentNumber (string) – Document number
- eventId (string) – Unique identifier for the event
- documentType (string) – Type of document
- setAuthenticateForEvent (boolean) – Enable/disable event authentication
- functionType (enum) – Must be set to
FunctionType.BIOMETRIC_LOGIN
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigs = SDKConfigs(
activeLivenessEnable = sdkConfigManager.activeLiveness,
passiveLivenessEnable = sdkConfigManager.passiveLiveness,
kioskEnable = sdkConfigManager.kioskMode
)
val sdkBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.setDocumentNumber(uiState.documentNumber)
.setEventID(selectedEventId)
.setDocumentType(uiState.documentType)
.setAuthenticateForEvent(true)
.functionType(FunctionType.BIOMETRIC_LOGIN)
.faceHandHandler { sdkResponse ->
if (sdkResponse.uID != null && sdkResponse.token != null) {
navController.navigateToRegistrantDetailsScreen(
uId = sdkResponse.uID!!,
selectedEventId,
consentToken = sdkResponse.token!!
)
} else {
context.showMessage("${sdkResponse.message}")
}
}.build()
Launcher.launch(sdkBuilder, context)
4. Search
Required Parameters
- sdkConfigs (object) – Configuration settings for the SDK
- functionType (enum) – Must be set to
FunctionType.KIOSK_FACE
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigs = SDKConfigs(
activeLivenessEnable = sdkConfigManager.activeLiveness,
passiveLivenessEnable = sdkConfigManager.passiveLiveness,
kioskEnable = sdkConfigManager.kioskMode
)
val sDKBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.functionType(FunctionType.KIOSK_FACE)
.faceHandHandler { sdkResponse ->
Log.e("sdkResponse Customer Search", ": ${sdkResponse}")
when {
sdkResponse.uID != null && sdkResponse.token != null -> {
val uID = sdkResponse.uID
if (isNormal) navController.navigateToProfileDetailsScreen(uID = uID, consentToken = sdkResponse.token)
else {
// perform action here
}
}
sdkResponse.message != null -> showMessage(navController, message = sdkResponse.message)
}
}
.build()
Launcher.launch(sDKBuilder, context)
5. Search Capture
Required Parameters
- base64Image (string) – Base64 encoded image string
- biometricType (string) – Type of biometric data
- govVerification (boolean) – Government verification flag
- eventId (string) – Unique identifier for the event
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
SDK.faceCapture(base64Image = base64ImageString, biometricType = "face", govVerification = true/false, eventId = eventId) { result ->
Log.e("faceCapture", "Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when(result) {
is ApiFunctionsResult.Loading -> Log.e("faceCapture", "Loading...") // show loading
is ApiFunctionsResult.Success -> {
context.showLoader = false
result.data?.let {
// perform action
} ?: showMessage(context, result.errors.safeErrorMessage())
}
is ApiFunctionsResult.Failure -> {
context.showLoader = false
Log.e("faceCapture", "Failed: ${result.errors?.toString()}")
// show message to user if needed
}
}
}
}
6. Get Events
Required Parameters
- eventId (string) – Event identifier (can be empty string)
- status (string) – Event status (e.g.,
"Active")
Return Parameters
code (number) – HTTP status code indicating success (e.g., 200)
data (array of objects) – List of events and related statistics:
- eventDTO (object) – Event details:
- eventId (string) – Unique identifier for the event
- clientId (string) – Identifier for the client hosting the event
- clientName (string) – Name of the client
- name (string) – Event name
- location (string) – Event location
- description (string) – Event description
- eventType (string) – Type of the event
- maxEventCapacity (number) – Maximum number of participants allowed
- isPermanent (boolean) – Indicates whether the event is permanent
- activeFromDate (string) – Event start date (ISO datetime)
- activeTillDate (string) – Event end date (ISO datetime)
- durationInHours (number) – Event duration in hours
- ticketsConfigurationStandard (object) – Standard ticket configuration:
- type (string) – Ticket type
- maxTicketCapacity (number) – Maximum tickets available for this type
- price (number) – Ticket price
- accessType (string) – Access type for ticket
- isPermanent (boolean) – Indicates whether ticket is permanent
- activeFrom (string) – Ticket validity start (ISO datetime)
- activeTill (string) – Ticket validity end (ISO datetime)
- ticketsConfigurationVIP (object|null) – VIP ticket configuration or null
- contact (object) – Event contact details:
- name (string|null) – Contact person name
- email (string|null) – Contact email
- phone (string|null) – Contact phone number
- role (string|null) – Contact role
- contactPerson (object) – Additional contact person details (same fields as
contact)
- createdby (string) – User who created the event
- createdAt (string) – Event creation timestamp (ISO datetime)
- lastUpdatedAt (string) – Last update timestamp (ISO datetime)
- totalRegistrants (number) – Total number of registrants
- status (string) – Current status of the event
- stats (object) – Event statistics:
- totalRegistrants (number) – Total registrants for the event
- totalStandardRegistered (number) – Number of standard ticket registrants
- totalVIPRegistered (number) – Number of VIP ticket registrants
- totalCheckedIn (number) – Number of participants checked in
errors (array|null) – List of errors if any occurred, otherwise null
Code Example
SDK.getEvents(eventId = "", status = "Active") { result ->
Log.e("getEvents", "Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when(result) {
is ApiFunctionsResult.Loading -> Log.e("getEvents", "Loading...") // show loading
is ApiFunctionsResult.Success -> {
context.showLoader = false
result.data?.let {
// perform action
} ?: showMessage(context, result.errors.safeErrorMessage())
}
is ApiFunctionsResult.Failure -> {
context.showLoader = false
Log.e("getEvents", "Failed: ${result.errors?.toString()}")
// show message to user if needed
}
}
}
}
7. Event Registration
Required Parameters
- sdkConfigs (object) – Configuration settings
- eventId (string) – Unique identifier for the event
- ticketType (string) – Ticket type
- govVerification (boolean) – Government integration flag
- functionType (enum) – Must be set to
FunctionType.REGISTER_EVENT_BY_QR
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
- payload (object) – Encrypted QR/Event payload data
- data (string) – Encrypted payload data (Base64 encoded)
- signature (string) – Digital signature for payload verification
Code Example
val sdkConfigs = SDKConfigs(
activeLivenessEnable = sdkConfigManager.activeLiveness,
passiveLivenessEnable = sdkConfigManager.passiveLiveness,
kioskEnable = sdkConfigManager.kioskMode
)
val sDKBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.setEventID(eventId)
.setTicketType(ticketType)
.setGovIntegration(sdkConfigManager.govVerification)
.functionType(FunctionType.REGISTER_EVENT_BY_QR)
.sdkGeneralHandler { sdkResponse ->
Log.e("sdkResponse:", "$sdkResponse")
Log.e("eventQrRegistration:", "$sdkResponse")
if (sdkResponse.code == 200) {
val qrResponse = Json.decodeFromJsonElement<QrResponse>(sdkResponse.data!!)
val payloadData = qrResponse.payload?.data
val payloadSignature = qrResponse.payload?.signature
val uid = qrResponse.uid
} else {
showMessage(navController, message = sdkResponse.errors.safeErrorMessage())
}
}
.build()
Launcher.launch(sDKBuilder, context)
8. Embedded View (KioskMode/EnventBiometricCheckin
Required Parameters
- sdkConfigs (object) – Configuration settings
- documentNumber (string) – Document number
- eventId (string) – Unique identifier for the event
- documentType (string) – Type of document
- setAuthenticateForEvent (boolean) – Event check-in flag
- functionType (enum) – Must be set to
FunctionType.KIOSK_MODE_CAMERA
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sDKBuilder = SDKBuilder.builder()
.sdkConfigs(sdkConfigs)
.setDocumentNumber(documentNumberForApi)
.setEventID(selectedEventId)
.setDocumentType(uiState.documentType)
.setAuthenticateForEvent(true) // for event check-in: true, normal login: false
.functionType(FunctionType.KIOSK_MODE_CAMERA)
.faceHandHandler { sdkResponse ->
Log.e("BIOMETRIC_LOGIN_Event", "$sdkResponse")
if (sdkResponse.uID != null && sdkResponse.token != null) {
navController.navigateToRegistrantDetailsScreen(
uId = sdkResponse.uID!!,
eventId = selectedEventId,
consentToken = sdkResponse.token!!
)
} else {
val message = sdkResponse.message ?: "Unable to check-in please try again"
showMessage(navController = navController, message = message)
}
}
.build()
Launcher.launch(sDKBuilder, context)
9. ExpressVerfication
Required Parameters
- sdkConfigs (object) – Configuration settings
- identifierType (string) – Type of identifier
- nationality (string) – User nationality
- identifierNumber (string) – Identifier number
- functionType (enum) – Must be set to
FunctionType.EXPRESS_VERIFICATION
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigManager = (context as MainActivity).sdkConfigManager
val sdkConfigs = SDKConfigs(activeLivenessEnable = sdkConfigManager.activeLiveness, passiveLivenessEnable = sdkConfigManager.passiveLiveness, kioskEnable = sdkConfigManager.kioskMode)
val quepassBuilder = QuepassBuilder.builder()
.sdkConfigs(sdkConfigs)
.setManualEntryParams(identifierType=identifierType,nationality=nationality,identifierNumber=identifierNumber)
.functionType(FunctionType.EXPRESS_VERIFICATION)
.sdkGeneralHandler { sdkResponse ->
if (sdkResponse.code == 200) {
val uid = sdkResponse.data?.jsonObject?.get("uid")?.jsonPrimitive?.contentOrNull
val token = sdkResponse.data?.jsonObject?.get("token")?.jsonPrimitive?.contentOrNull
// Example: Home screen, dashboard, etc.
Log.e("uid: →", " $uid")
if (uid!=null && token!=null){
navController.navigateToUserDetailsScreen(uID = uid, consentToken = token)
}
} else {
Toast.makeText(context,"${sdkResponse.errors}", Toast.LENGTH_LONG).show()
Log.e("Failure → sdkResponse : "," ${sdkResponse.errors}")
}
} .build()
// Launch QuePass Activity
Launcher.launch(
quepassBuilder,
context
)
10. ExpressOnboarding
Required Parameters
- sdkConfigs (object) – Configuration settings
- identifierType (string) – Type of identifier
- nationality (string) – User nationality
- identifierNumber (string) – Identifier number
- functionType (enum) – Must be set to
FunctionType.EXPRESS_ONBOARDING
Return Parameters
- uid (string) – User identity
- token (string) – Authentication token
Code Example
val sdkConfigManager = (context as MainActivity).sdkConfigManager
val sdkConfigs = SDKConfigs(activeLivenessEnable = sdkConfigManager.activeLiveness, passiveLivenessEnable = sdkConfigManager.passiveLiveness, kioskEnable = sdkConfigManager.kioskMode)
val quepassBuilder = QuepassBuilder.builder()
.sdkConfigs(sdkConfigs)
.setManualEntryParams(identifierType=identifierType,nationality=nationality,identifierNumber=identifierNumber)
.functionType(FunctionType.EXPRESS_ONBOARDING)
.sdkGeneralHandler { sdkResponse ->
if (sdkResponse.code == 200) {
val uid = sdkResponse.data?.jsonObject?.get("uid")?.jsonPrimitive?.contentOrNull
val token = sdkResponse.data?.jsonObject?.get("token")?.jsonPrimitive?.contentOrNull
// Example: Home screen, dashboard, etc.
Log.e("uid: →", " $uid")
if (uid!=null && token!=null){
navController.navigateToUserDetailsScreen(uID = uid, consentToken = token)
}
} else {
Toast.makeText(context,"${sdkResponse.errors}", Toast.LENGTH_LONG).show()
Log.e("Failure → sdkResponse : "," ${sdkResponse.errors}")
}
} .build()
// Launch QuePass Activity
Launcher.launch(
quepassBuilder,
context
)