Building Plan Approval (BPA)

Introduction


Construction or renovation of buildings is regulated by Municipal Body in India. One must  get permission from ULB prior to construction . This process involves submitting the building plan to ULB along with other documents, ULB verifies the  plan with other documents and approves the construction. The document which authorizes the construction is called “Permit Order” One must have this permit order with him till the completion of construction. ULB officials  will inspect various stages of construction and make sure it is compliance to the plan . When construction completed ,after inspection Secretary provides “Completion certificate” and finally will provide “Occupancy Certificate”.  This entire process is known as “Building Plan Approval”.


Prerequisites 

BPA  is one the revenue module among the eGov ERP. This module depends on Demand, Collection, Employee information system, DCR, financial, Common masters, Portal and infrastructure modules. These are the required dependent modules for BPA.

The overall ERP product suite is divided into modules, with each module being loosely coupled with the other modules. Only modules which are required for BPA are grouped in this branch. In eGov-erp and eGov-ear modules, pom.xml used to define dependency modules.


Functionality

This section covers the high-level details of the functionalities available in the Building Plan Application system.

  • State level registration of stakeholders
  • State specific restriction for stakeholder application submission
  • Centralized login page for citizen,official and stakeholders
  • Citizen functionalities
  • Online application submission - New construction, Additional/Alteration, Demolition etc
  • Occupancy certificate request
  • Pay fee online and generate permit order online
  • Inspection of applications and online status
  • Configurable workflow
  • Schedule of appointment for document scrutiny and inspection
  • Auto fee calculation
  • Dash board and reports
  • State specific format output and reports
  • Online and off line payment collection
  • Integration with NOC system
  • Inspection pre,post and under construction stages.
  • Rejection process
  • Revocation process
  • Renewal of permit order
  • Configurable functionalities

Flow Diagram



Sequence Diagram



ER Diagram

New application

Inspection

General Instructions for Development

  • All the database scripts are structured in standard format. Each module specific scripts are arranged in sample and main folder. Sample script used for development purpose. The database script include DDL and DML scripts.

     City specific data will be saved in concerned city folder script of implementation branch.

  • All the report templates are under reports template folder

Configurations and Setup

BPA allows configuring the system for different client requirements. These changes are configurable from UI. The configuration keys are detailed here.


Key NameDescriptionData TypeDefault Value

Allowed Values

AUTO_CANCEL_UNATTENDED_DOCUMENT_SCRUTINY_OC
Flag to cancel the occupancy application for which the citizen is not attended for document scrutiny on the scheduled timeStringYESYES, NO
BPA_CITIZENACCEPTANCE_CHECKIs Citizen acceptance of application is required after stakeholder apply for a permit on behalf of citizenStringYESYES, NO
BPA_DEFAULT_FUNCTIONARY_CODEFunction code to be used for posting a voucher to the Financials systemNumber1Code from Functionary master
BPA_DEFAULT_FUND_CODEFund code to be used for posting a voucher to the Financials systemNumber1Code from Fund master
BPA_DEFAULT_FUND_SRC_CODEThe fund source code to be used for posting a voucher to the Financials systemNumber1Code from Fund Source master
BPA_DEPARTMENT_CODEDepartment code to be used for posting a voucher to the Financials systemStringREVCode from Department master
BPA_FEE_CALCULATIONPermit fee calculation types
AUTOFEECAL: Calculation by the system with defined rules
AUTOFEECAL_EDIT: Calculation by the system with defined rules but officials can override these values
MANUAL: Manually calculated by officials and entered into the system
StringAUTOFEECALAUTOFEECAL, AUTOFEECAL_EDIT, MANUAL
BPA_GENERIC_BOUNDARY_CONFIGURATION

The Boundary configuration. What are the type of boundaries application has to capture during new application creation.


Here validBoundary → "REVENUE" refers to the hierarchy type. The data Should match with eg_hierarchy_type  table, "Name" column data.

Here validBoundary → "REVENUE" → "boundary": "Zone" referes "eg_boundary_type" table data. The data Should match with the eg_boundary_type table → "Name" column.

The "hierarchy" column of "eg_boundary_type" table used to define the order of boundary to show in the UI.

All the boundary data are mandatory as per current design which are defined in the configuration.

Use "uniformBoundary" to autopopulate values on selection of boundary.

Similarly Use "crossBoundary" to autopopulate values on selection of boundary  if the boundaries are not related to each other.

Json{"validBoundary": {"REVENUE": [{"boundary": "Zone", "displayName": "Circle"}, {"boundary": "Ward", "displayName": "Revenue Ward"}]}, "crossBoundary":{}, "uniformBoundary": {"REVENUE": [{"fromBoundary": "Zone:Circle", "toBoundary": "Ward:Revenue Ward"}]}}A Defined structured JSON, one example is given in default value
BPA_ONLINE_PAYFlag to enable online paymentStringYESYES, NO
BPA_WORKFLOW_EMPLOYEE_BOUNDARY_HIERARCHYBoundary hierarchy type for the employee when the workflow runs on employee jurisdictionStringREVENUECode from Hierarchy Master
BPAPRIMARYDEPARTMENTBuilding plan primary departmentStringTown PlanningName from Department Master
BUILDING_LICENSEE_REG_FEE_REQUIREDFlag to collect registration fee or not for stakeholder registrationStringYESYES, NO
BUILDINGDETAILSVALIDATIONREQUIREDFlag to check whether building floor details validation required or notStringYESYES, NO
DCR_DOC_AUTO_POPULATE_AND_MANUAL_UPLOADFlag to populate required/available documents from eDCR in the Permit application.
If this flag is YES then application allows overriding populated documents
If this flag is NO then the application will not allow overriding populated documents
StringNOYES, NO
DCR_DOC_AUTO_POPULATE_UPLOADFlag to populate required/available documents from eDCR in the Permit application. No overrideStringNOYES, NO
DCR_DOC_MANUAL_UPLOADManually upload the all plan-related documentsStringYESYES, NO
DCR_INTEGRATION_REQUIRE_WITH_BPAFag to know whether eDCR system integration is required or not with application process systemStringYESYES, NO
DCRPDFQRCODEENABLED

Flag to stamp the plan scrutiny documents submitted by citizen or not

String1TRUE, FALSE
DOCUMENT_SCRUTINY_INTEGRATION_REQUIREDFlag to enable/disable document scrutiny for Permit applicationStringNOYES, NO
GAPFORSCHEDULINGThe delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for permit application.Number2Any integer number indicating no.of days
GAPFORSCHEDULINGOCThe delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for Occupancy applicationNumber0Any integer number indicating no.of days
GAPFORSCHEDULINGONEDAYPERMITAPPLICATIONS
The delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for One Day Permit applicationNumber2Any integer number indicating no.of days
HELPLINENUMBERHelpline number for Citizen in case he/she wants to re-schedule his/her appointmentNumber4952362100Valid telephone number
IS_AUTO_CANCEL_UNATTENDED_DOCUMENT_SCRUTINY_APPLICATION
Flag to cancel the permit application for which the citizen is not attended for document scrutiny on the scheduled timeStringYESYES, NO
MERGEPERMITEDCRFlag to show eDCR scrutiny report along with the permit orderString1TRUE, FALSE
NOOFDAYSFORASSIGNINGSLOTSThe number of days for which slots to be opened for document scrutiny for Permit applicationNumber1Any integer number indicating no.of days
NOOFDAYSFORASSIGNINGSLOTSFOROCThe number of days for which slots to be opened for document scrutiny for Occupancy applicationNumber3Any integer number indicating no.of days
NOOFDAYSFORASSIGNINGSLOTSFORONEDAYPERMITThe number of days for which slots to be opened for document scrutiny for One Day Permit applicationNumber1Any integer number indicating no.of days
OC_ALLOW_DEVIATIONThe percentage of violation compared to permit order while applying for Occupancy certificateNumber5Any integer number indicating deviation percentage
OC_DOCUMENT_SCRUTINY_INTEGRATION_REQUIREDFlag to enable/disable document scrutiny for Occupancy applicationStringNOYES, NO
OC_FEE_CALCULATIONOccupancy Fee calculation type
AUTOFEECAL: Calculation by the system with defined rules
AUTOFEECAL_EDIT: Calculation by the system with defined rules but officials can override these values
MANUAL: Manually calculated by officials and entered into the system
StringAUTOFEECALAUTOFEECAL, AUTOFEECAL_EDIT, MANUAL
OC_INSPECTION_SCHEDULE_INTEGRATION_REQUIREDFlag to allow inspection schedule for OC applicationStringYESYES, NO
OCAPPLICATIONFEECOLLECTIONREQUIREDFlag to generate and collect the application fee for OCStringNOYES, NO
ONE_DAY_PERMIT_APPLN_INTEGRATION_REQUIREDFlag to enable/disable application type 'one day permit'StringYESYES, NO
ONE_DAY_PERMIT_INSPECTION_SCHEDULE_INTEGRATION_REQUIRED
Flag to allow inspection schedule for One day permit applicationStringNOYES, NO
PDFHEIGHTSUBTRACTIONVALUEThe height in the page where to show/print ULB seal/stamp on eDCR scrutiny reportNumber50Any integer number indicating the height
PDFWIDTHSUBTRACTIONVALUEThe width in the page where to show/print ULB seal/stamp on eDCR scrutiny reportNumber50Any integer number indicating the height
PERMITAPPLNFEECOLLECTIONREQUIREDFlag to generate and collect the application fee for permit applicationStringYESYES, NO
RECENT_DCRRULE_AMENDMENTDATE
The latest eDCR rules amendment dateString01/01/2019A date in the format dd/MM/yyyy
DCR_SCRUTINIZED_PLAN_EXPIRY_DAYS
The No.of days that eDCR scrutinized plan is valid from the date of scrutinyNumber30Any integer number indicating no.of days
REGULAR_PERMIT_INSPECTION_SCHEDULE_INTEGRATION_REQUIRED
Flag to enable inspection appointment schedule for a permit applicationStringYESYES, NO
SENDEMAILFROOMBPAMODULE
Flag to enable Email from OBPS moduleStringYESYES, NO
SENDSMSFROOMBPAMODULEFlag to enable SMS from OBPS moduleStringYESYES, NO
SLAFORBPAAPPLICATIONService Level Agreement (SLA) days for a Permit applicationNumber15Any integer number indicating no.of days
EIS EMPLOYEE JURISDICTION HIERARCHYThe boundary hierarchy for which the employee can be mapped in the jurisdictionStringADMINISTRATIONCode from Hierarchy Master


Support Information

Features of Building plan approval system


References and Notes


Digit BPA Code Base :

https://github.com/egovernments/digit-bpa.git


Client specific implementation Code Reference :

https://github.com/egovernments/eGov-Bihar-Implementation.git