The App Registration Object
Overviewβ
The App Registration object represents user registration processes within your Verifik projects. This object contains all the information needed to track and manage user registration requests and their associated validation processes.
Attributesβ
clientβ
Type: ObjectId
Required: Yes
The client associated with this registration.
projectβ
Type: ObjectId
Required: Yes
The project this registration belongs to.
projectFlowβ
Type: ObjectId
Required: Yes
The specific flow configuration for this registration.
smartLinkβ
Type: ObjectId
Required: No
A single-use link for this registration.
statusβ
Type: String
Required: Yes
The current status of the registration process. Can be:
STARTED- Registration request created but not yet processedONGOING- Registration is in progressCOMPLETED- Registration completed successfullyCOMPLETED_WITHOUT_KYC- Registration completed without KYC verificationFAILED- Registration failedNEEDS_MANUAL_VERIFICATION- Registration requires manual reviewEXPIRED- Registration session has expired
emailβ
Type: String
Required: No
The email address for the user to be registered. Either email or phone is required.
phoneβ
Type: String
Required: No
The phone number for the user to be registered. Either email or phone is required.
countryCodeβ
Type: String
Required: No
The country code associated with the phone number. Required if phone is provided. Format: +123
fullNameβ
Type: String
Required: No
The full name of the person being registered. Can also use firstName and lastName instead.
firstNameβ
Type: String
Required: No
The first name of the person being registered.
lastNameβ
Type: String
Required: No
The last name of the person being registered.
languageβ
Type: String
Required: No
The preferred language for communication during the registration process. Default: "en"
currentStepβ
Type: String
Required: Yes
The current step in the registration process.
informationValidationβ
Type: ObjectId
Required: No
Reference to the Information Validation object if basic information was collected.
emailValidationβ
Type: ObjectId
Required: No
Reference to the Email Validation object if email validation was performed.
phoneValidationβ
Type: ObjectId
Required: No
Reference to the Phone Validation object if phone validation was performed.
biometricValidationβ
Type: ObjectId
Required: No
Reference to the Biometric Validation object if biometric validation was performed.
documentValidationβ
Type: ObjectId
Required: No
Reference to the Document Validation object if document validation was performed.
personβ
Type: ObjectId
Required: No
Reference to the Person object created during biometric validation.
assignedCollectionβ
Type: ObjectId
Required: No
Reference to the Collection assigned for storing biometric data.
createdAtβ
Type: Date
Required: Yes
Timestamp when the app registration was created.
updatedAtβ
Type: Date
Required: Yes
Timestamp when the app registration was last updated.
Example Objectβ
{
"_id": "app_registration_123456789",
"client": "client_123456789",
"project": "project_123456789",
"projectFlow": "flow_123456789",
"smartLink": "smart_link_123456789",
"status": "completed",
"email": "user@example.com",
"phone": "1234567890",
"countryCode": "+1",
"fullName": "John Doe",
"language": "en",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"emailValidation": "email_validation_123456789",
"phoneValidation": "phone_validation_123456789",
"biometricValidation": "biometric_validation_123456789",
"documentValidation": "document_validation_123456789",
"ipAddress": "192.168.1.1",
"userAgent": "Mozilla/5.0...",
"expiresAt": "2024-01-15T11:30:00Z",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:32:00Z",
"completedAt": "2024-01-15T10:32:00Z"
}