Results
API Results
setupOnboardingSession
Success callback receives an object containing the created session identifiers:
{
interviewId: "string", // the session id
token: "string" // the session token
}
startOnboarding
Success callback receives the aggregated result of the executed flow — a top-level object with a status plus the per-module result keys.
startOnboardingSection
Success callback receives a top-level object:
{
status: "success", // "success" | "userCancelled"
sectionTag: "your-tag", // the value of the sectionTag parameter you passed
// ...plus one key per module that ran
}
getUserScore
Success callback receives the full score JSON object with identity verification scores. This is passed through directly from the Incode API. Pass "fast" or "accurate" as the mode.
cordova.exec(
function (winParam) {
console.log("Score:", JSON.stringify(winParam));
},
function (err) { console.log("Error:", err); },
"Cplugin",
"getUserScore",
["fast"]
);
finishOnboarding
Success callback indicates the session was finalized successfully. No structured payload is required for normal flow control.
startFaceLogin
- Success: a face login result object containing selfie data.
- Error: a typed string from the face authentication error set.
faceMatch (non-UI)
Success callback receives the face match result.
isInitialized
Success callback receives a boolean: true if the native SDK is fully initialized, false otherwise.
cordova.exec(
function (isInitialized) { console.log("Initialized:", isInitialized); },
function (err) { console.log("Error:", err); },
"Cplugin",
"isInitialized",
[]
);
Module Results
Each module contributes a key to the startOnboardingSection / startOnboarding result object.
phoneData
From addPhone.
{ phone: "+1234567890" }
emailData
From addEmail.
{
email: "user@example.com",
status: "success" // "success" | "fail"
}
geoLocationData
From addGeolocation.
{
addressFields: {
city: "string",
colony: "string",
postalCode: "string",
street: "string",
state: "string"
}
}
userConsentData
From addUserConsent.
{ status: true } // boolean
frontIdData / backIdData
From addId.
{
status: "ok", // see status values below
image: "<base64String>", // base64-encoded image
classifiedIdType: "ID", // classified document type, e.g. "ID"
idCategory: "primary", // "primary" | "secondary"
chosenIdType: "id", // "id" | "passport"
allAttemptsExhausted: false // true when no more retries available
}
status values:
| Value | Meaning |
|---|---|
ok |
Capture succeeded |
unknown |
Unknown error |
errorClassification |
Document classification failed |
errorGlare |
Glare detected |
errorSharpness |
Image not sharp enough |
errorReadability |
Document not readable |
errorInCapture |
Capture error (iOS) |
errorUnacceptableID |
ID not acceptable (iOS) |
wrongSide |
Wrong document side shown (iOS) |
processIdData
From addId. (added automatically via processId).
{
extendedOcrData: "<jsonString>", // raw JSON string with full OCR data
data: {
address: {
city: "string",
colony: "string",
postalCode: "string",
street: "string",
state: "string"
},
fullAddress: "string",
birthDate: 0, // Unix timestamp in milliseconds
expirationDate: 0, // Unix timestamp
gender: "string",
name: "string",
issueDate: 0, // Unix timestamp
numeroEmisionCredencial: "string"
}
}
selfieData
From addSelfieScan.
{
status: "success", // "success" | error strings
image: "<base64String>", // base64-encoded selfie
spoofAttempt: false,
allAttemptsExhausted: false // added 4.4.0
}
faceMatchData
From addFaceMatch and the non-UI faceMatch.
{
status: "match", // "match" | "mismatch"
confidence: 0.99, // 0–1 match confidence
existingUser: true, // whether this is a returning user
existingInterviewId: "", // interview ID of the existing user if found
isFaceMatched: true,
isNameMatched: true,
idCategory: "primary", // "primary" | "secondary"
nfcVsIdConfidence: 0, // NFC vs ID face confidence (NFC flows only)
nfcVsSelfieConfidence: 0 // NFC vs selfie confidence (NFC flows only)
}
signatureData
From addSignature (formerly signaturePath).
{ status: "string" }
documentData
From addDocumentScan.
{
type: "addressStatement", // "addressStatement" | "medicalDoc" | "paymentProof" | "otherDocument1" | "otherDocument2" | "otherDocument3"
image: "<base64String>",
address: {
city: "string",
colony: "string",
postalCode: "string",
street: "string",
state: "string"
},
data: "<rawData>"
}
govresult
From addGovernmentValidation.
{ status: true } // boolean
approveData
From the non-UI approve module.
{
status: "approved", // "approved" | "declined" | "error"
id: "<uuid>", // session UUID
customerToken: "<token>" // customer token
}
nfcData
From addNFC. All MRZ/chip fields are extracted from the document chip.
{
birthDate: "",
compositeCheckDigit: "",
dateOfBirthCheckDigit: "",
documentCode: "",
documentNumber: "",
documentNumberCheckDigit: "",
expirationDateCheckDigit: "",
expireAt: "",
gender: "",
issuingStateOrOrganization: "",
nationality: "",
optionalData1: "",
optionalData2: "",
personalNumber: "",
personalNumberCheckDigit: "",
primaryIdentifier: "",
secondaryIdentifier: "",
status: true // boolean
}
videoSelfieData
From addVideoSelfie.
{ status: true } // boolean: true = success, false = failed
machineLearningConsentData
From addMachineLearningConsent.
{ status: true } // boolean: true = consent given successfully
antifraudData
From addAntifraud.
{ status: true } // boolean: true = antifraud check passed
eKYC
From addEKYC. Note: the result key is eKYC, not eKYCData.
{ status: true } // boolean: true = eKYC checks passed
curpData
From CURPValidation.
{
status: "success", // "success" | error message string
curp: "string", // validated CURP code
data: any // raw CURP data from the validation service
}
faceAuthenticationData
From addFaceAuthentication.
{
status: "success", // "success" | "fail"
customerUUID: "string", // UUID of the authenticated customer
selfieBase64: "string", // base64-encoded selfie image
selfieEncryptedBase64: "string", // E2EE-encrypted selfie (when E2EE is enabled)
error: null // null on success; typed string on failure
}
selfieAttemptData
Intermediate result emitted after each selfie capture attempt (before the module completes). Same shape as selfieData. Only populated when a capture attempt is made but the module hasn't finished yet.