Pre-registration module enables a resident to:

  • enter demographic data and upload supporting documents,

  • book an appointment for one or many users for registration by choosing a suitable registration center and a convenient time slot,

  • receive appointment notifications,

  • reschedule and cancel appointments.

Once the resident completes the above process, their data is downloaded at the respective registration centers prior to their appointment, thus, saving enrollment time. The module supports multiple languages.

MOSIP provides backend APIs for this module along with a reference implementation of pre-registration portal.

Pre-registration process

Create an application

  • User provides consent

  • User provides demographic information

  • User uploads supporting documents (Proof of Address, Birth certificate, etc.)

  • A pre-registration request ID known as AID is generated and provided to the user.

Note: The AID was formerly called PRID in the pre-registration context.

Book an appointment

  • User selects a registration center based on postal code, geo-location, etc.

  • The available slots are displayed

  • An option to cancel and re-book the appointment is made available

Receiving acknowledgement notifications

  • An acknowledgement is sent via email/SMS

  • The user can print the acknowledgement containing AID and QR code.

  • This QR code can be scanned at the in-person registration centers.

Download of pre-registration data at registration centers

  • User provides the AID/ QR code at the registration center.

  • The registration form gets pre-filled with the pre-registration data.

Pre-registration module

The relationship of the pre-registration module with other services is explained here. NOTE: The numbers do not signify sequence of operations or control flow

  1. Fetch ID Schema details with the help of Syncdata service.

  2. Fetch a new OTP for the user on the login page.

  3. Log all events.

  4. Pre-Registration interacts with Keycloak via kernel-auth-adapater. The Pre-Reg module communicates with endpoints of other MOSIP modules. However, to access these endpoints, a token is required. This token is obtained from Keycloak.

  5. Database used by pre-reg.

  6. Generate a new AID for the application.

  7. Send OTP in the email/SMS to the user.

  8. Registration Processor uses reverse sync to mark the pre-reg application as consumed.

  9. Registration clients use Datasync service to get the pre-reg application details for a given registration center, booking date and AID.

  10. Request data from MasterData service to get data for dropdowns, locations, consent forms etc..


Pre-registration module consists of the following services:

For more details, refer to Pre-registration repo.

Pre-registration portal

MOSIP provides a reference implementation of the pre-registration portal that may be customized as per country needs. The sample implementation is available at reference implementation repository. For getting started with the pre-registration, refer to the Pre-registration user guide

Build and deploy

To access the build and read through the deployment instructions, refer to Pre-registration repo.


For details related to Pre-registration configurations, refer to Pre-registration configuration.

Developer Guide

To know more about the developer setup, read Pre-registration Developers Guide.


Refer API Documentation.

Source code

Github repo.

Last updated

Copyright © 2021 MOSIP. This work is licensed under a Creative Commons Attribution (CC-BY-4.0) International License unless otherwise noted.