Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Attendance Management is divided into 2 parts:
Attendance Service
Muster-Roll Service
To verify the ids of the individuals, the attendance service depends on Individual Registry. It is an optional dependency. If the no individual registry is linked with the attendance service, then the ids would not be checked for validity and assumed to be correct.
Attendance Service manages the following:
Attendance-Register: It maintains a list of individuals enrolled for a given register.
Staff: Staff members manage the register. Staff can be created or deleted from a register.
Attendee: Attendees are the individuals participating in the register. Attendees can be created or deleted from the register.
Attendance-Log: The log entries of the attendance. It will have events of entry and exit.
Muster-Roll is a report built upon the attendance logs. It has computed attendance values. It will pass through an approval workflow.
DIGIT - Projects functional details
Projects are the first work entity defined by the State/Department/ULB or any executing authority. This consists of basic details like IDs, descriptions, addresses, sub-project details, project types, start and end dates etc.
Projects may not focus on just construction or civil works. A health campaign, an office decoration, a pre-contractual phase with an IT vendor for new software, new service delivery initiatives etc are examples of projects.
Users: Junior Engineer or Assistant Engineer who creates Works Projects for the ULB/Department
Description
JE creates projects with the below-mentioned attributes.
A project can have sub-projects as well depending on the way of executing the project.
When a project is divided into sub-projects, each will have the same attributes to be captured as the main project.
A project can be sent for approval depending on the need.
Usually, the administrative sanction is done on projects by EO. Post approval, detailed and abstract estimates are done.
Once the admin sanctions the project, the fund is also blocked for the respective heads of accounts.
Project status -
Created
In progress
Approved
Rejected
Cancelled
Once a project is created on the UI, the system generates a unique ID for each project/sub-project.
ID: PROJ/<ULB/Department Code>/<Year>/<month>/<Date>/<running sequence number>
The project details capture the financial details such as the funding source for the project. These details, however, are not part of the Project Service but are captured as part of the Program Service.
The table below provides the list of project attributes.
Id
NA
Y
System generated UUID
Name
Alphanumeric
Y
MinChar 2 - Max Char - NA Ex - Construction of School Building
Project Type
MDMS Data
Y
Should be pre-defined master data Ex - Building
Project Sub Type
MDMS Data
N
Should be pre-defined master data. Estimate templates are linked to a project subtype Ex - School Building
Project Group
MDMS Data
Y
Should be pre-defined master data. Contract & Assetisation terms are defined based on this value. Ex - Capital Works
Address
Y
Address of the main project.
Proposed Start date
Date
N
Proposed End date
Date
N
Parent
ID
N
Parent Project ID
Status
MDMS Data
Y
Created, Rejected, Cancelled, In-progress, Completed
Owning Department
MDMS Data
Y
Reference No
Alphanumeric
N
MinChar 2 - Max Char - NA Reference No to Offline File if any
Description
Alphanumeric
N
MinChar 2 - Max Char - NA Description of the Project
Documents
Attachments
N
Upto 5 Documents each of 5 MB Document Attachments
A project can be divided into multiple sub-projects, each with its own workflows/business requirements defined.
Create Project with no sub projects
Create Project with Sub projects
Capturing Financial details of project (Part of Program service)
Capturing Sub Project Details
Project Created Successfully
View Project
Projects Inbox
Inbox Table
Estimates are created for each project/sub-project entity.
Need and Background:
An estimate is prepared for each Works project so as to get technically sanctioned and proceed with tendering/contract.
Estimates are created for each project/sub-project entity.
There are multiple estimate types for each project prepared with different levels of abstraction.
Proposal
A single line item has the overall project cost against the project title. This requires in-principal Admin sanction. Once approved detailed estimate for the same is created.
Detailed
A detailed estimate contains engineering drawings done on AutoCAD & other drawing tools. Modern tools also abstract out many measurements and materials from drawings created by these tools.
Abstract
An abstract estimate is prepared using standard SOR & Non-SOR Items defined by PWD (mostly ULBs customise SOR and have their own copies). SOR items are created internally using item rates.
Revised
When a project's finances are increasing then to what is initially estimated, revision estimates are created and approved. revision estimates may or may not have the same SORs as initial estimates. Revised estimate line items added to initial line items will give overall project cost
Deviation
A deviation statement is a type of estimation when the scope of the project changes but the project cost is meant to remain the same. The deviation statement and revised estimate are the same as far as the estimation process is concerned. The approving authority changes only.
Spill Over
For a multi-year project, an estimate is financially broken down into pieces and budget allocation is done for each year instead of allocating the entire budget in the first year.
After creating the project (and getting approved if there is a workflow) JE will start estimating the project.
To create an estimate following details are required.
Line Items from SOR
Non-SOR line items
Overheads
There are 3 ways how estimates can be added.
Manually adding from SOR Master List
Using Estimate Template
Copying the format of existing similar projects and changing the values
To select line items for SOR, select the SOR category, search for the SOR line item by SOR code or SOR description and select the SOR.
To the SOR line item, add the quantity that is required for this project.
SOR standard amount multiplied by this quantity gives the line item-wise cost.
Measurements can be captured at the SOR line item level directly by the specified UOM or length, breadth, height, quantity can be captured and stored in an empty measurement book so as to utilise it later for m book recordings.
Multiplication of L,B,H,Q will give the required quantity of the line item for the estimate.
A non-SOR line item will not be defined in MDMS and hence will not be searchable using the SOR category or Code.
Rate, Quantity and Description have to be entered manually.
Just like SOR, instead of quantity directly, L,B,H,Q can also be captured.
All SOR and Non-SOR items in the way captured in the estimates will be created as empty records in the Measurement Book to capture readings later.
Overheads are predefined masters.
The cost of the project becomes the cost of SOR and Non-SOR items plus overheads.
Overheads are either added on top of SOR and Non-SoR separately or can be derived from SOR Sub Line items.
Overheads amount will not be going to the contractor but will be going to specific heads defined in the Master for respective overheads. (GST 12% to GST department, Cess 1% to labour dept etc). This means Contracts will selectively capture only a few overheads for contractors.
Each estimate will have a unique ID that is generated
ID: EST/<ULB/Department Code>/<Year>/<month>/<Date>/<running sequence number>
Status of an estimate
Created
In progress
Approved
Rejected
Cancelled
Schedule of Rates (SOR)
SOR is a line item that represents the rate for a single unit of work. SOR is defined by the Central PWD or state PWD and is revised based on the market needs from time to time. In general, there are about 3000+ SOR line items
Each executing authority ULB/Department may modify the rates of these SORs by applying lead charges.
Lead Masters will be varying for each project as the project site will be different for each.
For simplicity, SORs are usually kept constant under a ULB.
Each SOR Item may have multiple variants with slight changes in description and amounts.
Ex. Estimate of tiling for the ground floor and estimate of tiling for the first floor will change by 15 Rs to capture the carriage charges. These should be captured with .serial_number. (Parent.Child)
SOR Category ID
Drop down
Y
Options will be the list of Category Code from the SOR category type master
The combination of category Code and Item code is unique
Item ID
Alphanumeric
Y
System generated
Item Description
Y
Item description of the selected Item
Unit of Measurement
Y
Options will be the list from Unit of measurement master
[Array] for specific date ranges
Item Rate
Numeric
Y
Multiple entries can be specified for each Item, but there cannot be an overlap in the rates for a range of dates
Item rate Applicable From
Date
Y
To be entered in the format dd/mm/yyyy
Item rate Applicable To
Date
N
To be entered in the format dd/mm/yyyy
Analysis of Rates
Each line item of a SOR master/SOR variant will further be divided into Sub line items that come from a set of category Masters like Labour Master, Material Master, Royalty Master, Carriage Master etc.
A group of Sub line items together will form an estimate line item.
Each sub-line item will have Item detail 1, item detail 2, quantity, UOM, rate, estimated amount.
The sum of all sub-line items will become the total of the SOR line item
Item detail 1 will capture whether it is material/labour/carriage/overhead/royalty etc
Item detail 2 will capture the exact details of the item from the respective item master. rates need to be auto-populated.
With this when extracted, we should be able to produce labour analysis, material analysis and other standard reports, coming from the estimates.
Basic Rates of Materials Master
ID
NA
Na
System generated ID
Department
Dropdown
Y
Labour rates may vary by each department
Material Category
Dropdown
Y
brick and tile, stone and road, metal and iron etc
Description of Material
Alphanumeric
Y
Second Class Table Moulded Chamber Burnt Bricks 9" x 41 /2" x 3"
Quantity
Numeric
Y
Quantity for which base rate is defined. Default to 1
Unit
Dropdown
Y
Nos, Ton, etc
[Array] for specific date ranges
Item Rate
Numeric
Y
Multiple entries can be specified for each Item, but there cannot be an overlap in the rates for a range of dates
Item rate Applicable From
Date
Y
To be entered in the format dd/mm/yyyy
Item rate Applicable To
Date
N
To be entered in the format dd/mm/yyyy
Note: There are roughly about 200 materials and some of whose rates change quarterly.
Labour Rate Master
ID
NA
Na
System generated ID
Department
Dropdown
Y
Labour rates may vary by each department
Skill Category
Dropdown
Y
Highly Skilled, Semi Skilled Unskilled etc
Description of Labour
Alphanumeric
Y
Technical Assistant, Stone Polisher, Smith etc
Quantity
Numeric
Y
Quantity for which base rate is defined. Default to 1
Unit
Dropdown
Y
Day/Week/Month
[Array] for specific date ranges
Rate
Numeric
Y
Rate of Labour for specified (Quantity' units)
From Date
Date
Y
Date from which these rates are applicable
To Date
Date
Y
Date to which these rates are applicable
There are about 80 types of labour.
Lead Master
Lead Master will have the carriage and royalty details of each item that goes into the individual SOR items.
ID
NA
NA
System Generated
Item ID
Dropdown
Item for which Lead SOR is present
Item Name
Autofill/Dropdown
Y
Item for which Lead SOR is present
Name of Quarry
Dropdown
N
For Materials. Doesnt appy for labour
Unit
Dropdown
Y
Unit of Measurement
Lead (Km.)
Numeric
N
Distance from quarry
Basic Cost
Autofill
Y
Basic cost pulled from material rate master or labour rate master
Conveyance Cost
Numeric
N
Royalty
Numeric
N
Royalty on applicable material, abstracted, will go into specific head defined during estimation
Total
Calculation
Y
Total new cost of line item
When a lead master is set on a particular material in a particular ULB, all SOR line items that contain this item will take the amount from the lead master and not from the basic rate master
Non Schedule of Rates (SOR)
Non-SOR items are not defined by CPWD and based on project requirements will get added to the estimate.
They will have the same attributes as the SOR item, but will not have a defined SOR ID or SOR category.
Ex. Purchasing Fancy benches & themed dustbins at Park. The rate, in this case, is fixed by JE upon discussing with potential vendors.
Overheads
Overheads can be of two types.
In-Line Overheads - Defined within the SOR line items
Estimate Level Overheads -
These are defined on top of estimates. Each overhead will be defined within a time range with either percentage or lump sum value of the entire estimated cost
We should be able to abstract out similar overheads from multiple SOR line items and groups to form a single overall overhead for the estimate.
ID
NA
NA
ID generated for each overhead type
Name
Alphanumeric
Y
Name of the overhead
Ex. Labour Cess, GST, Royalty etc
Description
Alphanumeric
N
Description
Account head
Dropdown
Y
Account head to which overheads should be credited
[Array] for specific date ranges
From Date
Date
Y
Date from which these rates are applicable
To Date
Date
Y
Percentage/ Lumpsum
Numeric
Y
Percentage or Lumpsum amount of estimate including value
Revised Estimates
Estimate revision can happen before the final bill is submitted and the project is closed. For a revised estimate, the user can come onto the existing estimate and click actions → Revise estimate. This goes for a similar approval cycle as the main estimate.
For a revised estimate -
New line items can be added.
Existing line items can be removed
Quantities in existing estimates can be modified.
A contract that is created from this estimate also needs to be revised and sent to the contractor for approval.
Measurement books accordingly will get changed as per the new estimate.
If some part of the estimate is already measured and the bill has been created/approved, a revised estimate for that line item cannot go under that approved bill quantity for that line item.
Schedule Category
A schedule category is a grouping of SORs for easy identification and filtering. There are a total of about 3000 SOR items divided into 15-20 SOR groups
Examples - Earth Work, Masonry, Brick Work, Painting, etc
Category Code
Alphanumeric
Y
Unique Code Assigned to the Schedule Category
Category Name
Alphanumeric
Y
Name Assigned to the Schedule Category
Estimate Template
Templates are created for specific types and sub-types of work so they can be reused for future use.
Templates are groupings of SOR items that combine to complete a similar kind of work.
On the UI, the Estimates inbox will have an Estimate Template section and users can see a list of templates and create a new template from there, and modify the existing template.
Ex. Template to build 100 mt of 20 ft road, Template to build 8*10 sq ft standard room.
Template Code
Alphanumeric
Y
Define the template code
Name
Alphanumeric
Y
Name for template
Description
Alphanumeric
Y
Description of the template
Status
Dropdown
Y
Status of the template
Active
Inactive
Work Type
Dropdown
Y
Select the Type of work. All the work types defined in the system should be shown
Work Sub Type
Dropdown
Y
Select the Sub type of work. All the work sub types defined in the system should be shown here
[Array] for each line item
Schedule Category
Dropdown
Y
Options are the list of SOR categories from the SOR category master.
SOR
Alphanumeric
Y
Enter the template code and search for it
Non_SOR Code
Alphanumeric
N
Non_SOR Description
Alphanumeric
N
Non_SOR UOM
Dropdown
N
lenght--KM; Area--SQM
Non_SOR Unit Rate
Numeric
N
Create Estimate
Estimate Successfully Created
Estimates Inbox
Inbox Table
SOR Data entry screen
A user should be able to
Create an estimate using templates
Add SOR items from SOR Master
Change values as required for current work
Add/auto-populate overheads
Able to generate Material Analysis and Labour Analysis
Download PDFs of Labour analysis, material analysis, and Overall Estimate
This section gives information related to Organisation Services. An organisation can be any contractor/vendor/business unit that works with the government and helps in citizen service delivery.
A contractor/vendor is someone who does projects with the government. Every Project, after estimation approval and tendering, will have to be assigned to a contractor/vendor for it to be executed.
Works contractors bid for or are assigned works' contracts depending on the mode of entrustment for specific projects
Process of registering a contractor.
A contractor will apply for registration with any of the government departments. The contractor will be assigned a class and ID upon registration. A contractor will be issued projects that will fall into that class.
A contractor can have multiple staff that manage contractor organisation with permissions
List of things done by contractors for a project -
(Offline) Bid for contracts
(Offline)Negotiate contracts
(Offline)Accept Letter of Intent
(Offline) Issue Letter of Acceptance
(System) Accept/Reject Contract
(System) Track Work Measurements
(System) Track Attendance Measurements
(System) Create Running/Final Bills
(System) Download and upload relevant documents
Each contractor organisation is given a contractor class/grade depending on the screening/validation process.
Following are the fields required to grade contractors. This constitutes the MDMS data.
Grade
Alphanumeric
Y
Unique field
Description
Alphanumeric
Y
Description of the grade
Minimum Amount
Numeric
Y
Minimum value of work that can be assigned to the contractor of the grade
Maximum Amount
Numeric
Y
Maximum value of work that can be assigned to the contractor of the grade
A contractor organisation has a class associated with at least one department; type and subtype based on what the organisation supplies to the government, staff details so as to know who is managing the organisation and financial details so as to make payments.
Organisation Details
Vendor ID
NA
NA
System Generated unique code assigned to the contractor
Format: VO-<FY>-<6 digit running sequence number> - VO-2022-23-000001
Organisation Name
Alphanumeric
Y
Name of the Organisation
Organisation ID
Alphanumeric
N
Offline reference of Organisation ID given by govt
Formation Date
Date
N
Date of Formation of Organisation
Contractor Class
Drop down
N
Options will be list of contractor grades from the contractor grades master
Organisation Type
Multi Select Dropdown
Y
Contracts should be awarded to organisations who are of certain type. A Contractor registered as Vendor(material suppier) can only be awarded material contract
Ex - Contractor, Materials Supplier, Mixed
Organisation Sub Type
Multi Select Dropdown
N
Subset of type of organisation
Ex - Vendor - Sand, cement, concrete, paint etc Contractor - NA Mixed - NA
Status
Drop down
Y
Options will be the list of Contractor status maintained by the ULB
Active
Inactive
Black listed
Debarred
Registered by department
Drop down
N
Options will be list of the departments of the ULB defined in the department master
Public Works Department, Water Department, Education Department
Registered date
Date
N
Date of registration with the department
Valid From Date
Date
N
The date from which the specified status is applicable to the contractor
Valid To Date
Date
N
The date until which the specified status is applicable to the contractor
Documents
Attachment
N
Upto 3 files max of 2 MB each
Location Details
Address
Alphanumeric
N
Contractor address using boundary hierarchy - Locality, Ward, ULB, District etc
Billing Address
Alphanumeric
N
Contractor address using boundary hierarchy - Locality, Ward, ULB, District etc
Contact Details
Owner Name
Alphanumeric
Y
Name of the owner
Owner Mobile number
Numeric
Y
Mobile Number of the owner
Owner e-mail address
Alphanumeric with special chars
N
Email of the owner
Contact person Name
Alphanumeric
Y
Name of the contact person
Contact person mobile number
Numeric
Y
Mobile Number of the contact person
Contact person email address
Alphanumeric with special chars
N
Email of the contact person
Total Members
Numeric
N
Number of members in the organisation
Financial Details
Account Name
Alphabet
Y
Name of the Bank Account
Account Type
Drop down
N
Savings, Current, Loan, Credit
Account Number
Alphanumeric
Y
Account number of the contractor against which payments will be made
Transfer Code
Drop down
Y
MDMS Data for selection of type of unique transfer code per bank account
Ex. IFSC Code
Bank Name
Drop down
N
Options will be a list of banks specified in the banks master. Used to select the bank where contractor’s account is maintained for direct bank payment
Bank Branch
Drop down
N
Tax Identifiers
Table Select Dropdown
N
Table with multiple identifier types List
GSTIN
PAN
TIN
User to enter identfier values for each identifier type
[Array] Staff Details
Staff ID
NA
NA
System generated ID of the staff that is prepopulated because of search by phone number
Staff Name
Name of staff
Staff Role
Dropdown
Y
Role Assigned to StaffAdmin - Role that allows all actions within the organisation including adding new members to organisationManager - Role allows only functional activities like accepting contracts, creating bills etc
Staff Designation
Dropdown
N
Designaton of the staff
Owner, President, Secretary, member etc
Employement start date
Date
N
Start date of the employement
Employement end date
Date
N
End date of the employement
Employment status
Dropdown
Y
Active, Inactive status of the employee
Users with permission to Create Master records have to click on Masters on the home page to navigate to the Masters landing page.
On this page, the user has to select Vendor Organisation in the drop-down (one of the few registries that are available to edit/add from UI) and click on Search.
Users are shown records of existing vendors and the option to add new Vendor Organisation.
Clicking on Add New Organisation redirects users to Create New Organisation page.
Create Organisation page has 4 Tabs along with header details.
Attributes and explanations for each are mentioned in the attribute table above.
Vendor ID is the unique ID generated by the system with a specific format.
Organisation ID is the ID given to each vendor during offline registration.
The system checks the organisation ID to ensure that no existing record is present and avoid de-duplicating. This check can be performed by clicking on the Next button on the first screen.
Location Details have HQ address and Billing Address.
The selection of location details in the hierarchy limits the results to that selected boundary in the next hierarchy.
The check box copies the details of the HQ address to the Billing address and makes the fields non-editable.
The staff details tab is not accessible until the vendor organisation is created. The Show Info icon alongside staff states “Organisation needs to be created to add staff and staff details”
Contact Details have owner info and contact person info.
Name and Phone number of both are made mandatory.
System should check if user with this phone number is present already in user registry and if not create a new user.
Designation for Owner is auto-assigned in the staff details as the owner
The role of the owner defaults to admin and manager.
The designation and role of the contact person are kept open.
The checkbox shows the default details of the contact person same as the details of the owner and creates a single user.
Financial details of the organisation captures bank account details where payments are to be made.
Transfer code has single identifier type per bank account. List will have only IFSC code for now. User has to input IFSC code against it.
Tax identifiers are array of attributes which are financial/accounting related objects of the vendor like PAN, GSTIN, TIN etc. This list will be defined in MDMS and user can select/add any number of identifiers that are listed in the master.
As per Indian context, default the first row to GSTIN and allow user to add from second row.
Any identifier that is mandatory can be shown already with a row instead of user adding that row.
After adding financial details, user can create a vendor organisation by clicking on create vendor organisation
Vendor organisation is created successfully and ID is displayed.
The user is prompted to add staff to the created vendor organisation.
By default the first/first two rows are auto-filled with the owner and contact person details inputted while creating the organisation.
Users can add the remaining attributes of these two users like employment start and end dates.
To add new/other users - Search by Phone number to see if the user already exists in the user registry
If a user exists -
The default phone number will be displayed on the new row along with the name. Allow the user to add other details like designation, start and end dates, and status.
Staff ID is not editable and is auto-generated once the Add Staff Details button is clicked.
If the user does not exist -
Display a message stating that “No staff exists with this phone number”
Capture phone numbers on UI using auto-fill. Allow the user to enter all other details including name designation, start and end dates and employment status.
Both these flows will ensure duplicate staff entries are not created in the user registry.
Once the Staff Details are added, a success message is displayed stating that the staff has been added successfully to that organisation.
Clicking on Masters on the home page redirects users to an empty screen where he/she will have to select the master/registry they want to create/view.
Selecting that registry from the dropdown displays the relevant records with pagination on the first screen.
Users can click on any data record to view that record or click on add new organisation that appears on selecting that master.
Filters for the master
Organisation ID
Name of the Organisation
Type of the organisation
Status
Create between start and end dates
Using this filters user should be able to shortlist/pinpoint to that organisation.
Show default no results found illustration screen along with text “No results found” when filter returns empty.
View Vendor screen has the same details as Create Vendors with 1 additional attribute which is the Vendor ID
A contract document is a legal & financial obligation between any two parties entering into the contract.
After the estimates are created and approved, they are grouped or individually tendered/direct assigned to vendors to execute the work.
A works package is typically not seen in all Works Management Products. it is used only where high-complexity projects are executed where packaging is needed to form smaller or larger chunks so as to increase operational efficiency.
The current contract service includes Line items of estimates, Works packaging, Negotiation, Contract Terms, and Milestones.
The Junior Engineer/Assistant Engineer creates the contracts and the Municipal Engineer/Executing Officer approves the contract depending on its value. (Workflow configurations based on amount subject to platform capability in v1).
Story Detail
Contract Inbox
Clicking on the Contracts link on the home screen navigates users to a default contract inbox screen.
Default inbox items will be empty for a contract creator.
Users can filter and search using the following options
Contract ID
Estimate ID - Show a list of all contracts by each row when a particular estimate falls in all those contracts.
Contractor ID
Contract Type
Contract Created from date
Contract Created To date
Status
Columns in the Table
Contract ID
Estimate ID(s) - If a contract is formed with multiple estimates show an array of estimates.
Contractor
Contract Type
Status
Contract Amount
SLA
Search Estimates to Create Contract
Click on Create Contract in the contract inbox to search for approved Estimates.
Users can multi-select approved estimates to create contracts.
Search parameters
Estimate ID
Project ID
Department
Status
Estimate created from date
Estimate Created to Date
Table Columns
Estimate ID
Project ID
Department
Status (of the estimate)
Estimated Amount
Select the estimates using checkboxes - a counter shows at bottom of the page.
it should be allowed to search/re-search using the filters while the selection is frozen.
Refreshing the page might lose the selections from UI.
Clicking on create contract will add selected estimates to the respective contract UI to be further actionable(on the next page)
Create Contract - Header & Contractor Details
Contract creation UI displays the headers and multiple tabs.
Attribute details are added separately in the story
Contract Amount is a display-only field.
Value dynamically changes based on selections in the work details and the negotiation tab
Initially, the contract amount is the sum of selected estimates
But, if in the work details, certain line items are removed from the estimates, then only the remaining amount needs to be displayed in the Contract Amount
In the negotiation tab, only line items that are fixed from the work details tab are shown. These will have negotiated percentage/amount values for each line item.
Only the finalised sum of negotiated values is to be shown as the Contract Amount
Contractor ID is a display-only field. It is shown on searching and selecting a contractor from the contractor select drop-down.
Work Details
The Work Details section shows the list of estimates and estimates for the line items from the selection made before coming to the contract screen.
Estimate line items that are already selected and part of other created contracts should show up as non-selectable line items in this table UI.
Users can select line items from different estimates and the final amount of selected line items will show up in the Contract Amount under header details
Clicking on next will take the user to the Negotiation tab.
Negotiation Details
Negotiation is of two types
Percentage-tender (Lumpsum)
Item rate negotiation
In Lumpsum, the entire contract is negotiated by a certain amount/percentage.
On the UI, we will capture by percentage and calculate the final amount of the contract.
The same will be displayed on Contract Amount in the Header details
For the Item rate negotiation type, line items selected in the Work Details tab only will be shown in a table.
This table will have a column for the users to input either amount or percentage of the line item that is negotiated.
Finalised amount, the sum of all negotiated values is the contract amount.
Milestones Creation
Milestones are tagged to a certain percentage of completion of the project.
There will be milestone templates(v2) based on project type and subtype. Users will only have to fill in start and end dates then.
A contract can have any number of milestones.
The sum of % completion of all these milestones however should add up to 100%
Terms and Conditions
Terms and conditions are an array of upto 100 strings in V1.
Users can click on Contract ID in their inboxes to come to view the contract screen.
The View Contract attributes is the same as Create Contract attributes from a UI perspective. All the fields are standard view-only components.
The View Contract screen will additionally have the Contract ID displayed in the header details
Depending on the user and path selected View Contract will have the call to action options.
For users in the workflow
Approve
Reject
For final users
Approve
Reject
Search Contract
Modify Contract
Before the contract is finally approved, all fields should be editable. System-generated Contract ID is non-editable.
By the time contract becomes editable, some of the estimates/estimate line items could possibly be added to other contracts.
The system should ensure the same line items are not part of 2 different created contracts
Base Contracts once issued and accepted cannot be modified
Revised Contracts (v2)
Estimates go through revision and also need a revised contract to be issued
A revised contract can be a change in line items (scope) or a change in the amount
In a government setting -
Payments are generally made TO and BY the government. In this document, we will refer to payments made by the government as expenses and payments received by the end party as receipts.
Payments made TO the government, ie. Receipt/Revenue to the government can be of two types
Demand based collection
First, a demand is generated by the government
Ex. Demand for Property Tax, Trade license, Water tax etc
Second, An invoice is issued by the government with these demand details for what is owed to the government either as taxes/charges/levies etc.
Third, Citizen acknowledges and pays the respective amount.
Fourth, a receipt is issued against the paid amount.
Non Demand based Collection
There is also another type where collections are made without any demand being generated.
DIGIT has this demand & Billing service to accommodate payments made to governments.
For payments made BY the governments
Ex - Salaries, Wages, Payments to beneficiaries, Contractors, Ad hoc payments
For any transaction to happen, there is a payer, payee, amount and entity details
Payer and Payee can be individuals or organizations.
Entity details contain other information which are important for a bill to be generated but not mandatory for payment advice
Ex. Invoice ID, Invoice date, Verification details etc
Every transaction will ideally start with an invoice equivalent that is generated by the supplier/contractor/muster/contract/payroll etc against which a payee will generate a bill on the name of the payer.
A Bill can have single or multiple beneficiaries. It should depend on the source of verifiable information.
Ex. If a muster roll has 20 beneficiaries, Bill also can have 20 beneficiaries. It is not needed to create 20 individual bills.
At the same time, A single invoice should not be divided into multiple bills.
Ex. Even though material is supplied in tranches, a single PO can lead to multiple invoices and only after the consumption of entire material as per individual invoice and associated measurement book, Bill for that invoiced amount can be created and paid.
A Payment advice is required to be generated to enable beneficiary payments, module is to be integrated with a payment gateway
Hence a payment advice will contain minimal information that is required for bank/gateway to make the payment.
Limits on number of beneficiaries and amounts etc to be configurable as will needed by the integration.
Expenses are created by the JE and approved by ME, EE/ EO depending on amount and associated approval authority.
This module should have the following components
Header Details
Bill ID
Bill Date
Party Bill ID
Party Bill Date
Bill Type
Salary/Pension Bill
Based on Payroll, leaves, PF, GPF, other allowances
Advance Bill
Unlike other bills which are post work/service completion and measurement, advance bill is raised prior and adjusted later.
Advance bill is horizontal and be applicable on top of all other bill types
Works/Contractor Bill
A contractor bill is created and measured against the measurement books and contract(work order) objects for verification.
When a user selected to pay a contractor bill, user can select against which measurement books of the contract this bill is being raised for, and accordingly bill amount will be calculated.
Muster/Labour Bill -
A labour bill is created from muster roll and usually have multiple beneficiaries within the same bill.
When a user selects to pay a wages bill, user can select which muster rolls to process as part of this bill, and accordingly bill amount and array of beneficiaries will be processed.
Supplier/Vendor Bill
A vendor bill is similar to contractor bill where as here instead of measurement book and work order, an invoice and material receipt register or purchase order are used for verification.
A vendor bill should ideally be against each individual invoice as submitted by the supplier.
Right now, there is no material receipt register or purchase order against which invoices are verified. Hence invoice in V1, cannot be as verifiable as we are verifying wages bill against muster rolls.
Contingency/Expense Bill
Ad Hoc expenses
Supervision Bill
This type of Bill is calculated as a percentage on top of other types of approved bills.
Others (need more usecases)
Debit Details
{Account Code, Account head, Debit Amount}
Treasury Payments - {Major, Sub Major, Minor, Sub Minor, Detail, Object head , Debit Amount}
ULB Payments - {Fund, Functionary, Budget head, Scheme, Sub Scheme, Debit Amount}
This should be configurable at the tenant level to choose what type of accounting system is followed.
Debit details should ideally be captured at the time of project creation. This helps in budget checks being done.
Each Project will be associated with a set of account codes and percentage amounts of the entire project, from where debit will happen.
Similarly, respective amounts (lumpsum/percentage) should be chosen from these account codes for each bill that is created.
Service should not allow to debit more than the initial quoted amount under respective heads against the sum of all the bills created for the project.
Deductions
Amount that is deducted from gross value of the bill as these are already included in the work line items
Deductions are classified into many types
Internal transfer
Ex. SOR line items already include cess 1%. Hence it is deducted here and transferred to labour welfare account head
SOR line items also include royalty on material. That needs to be deducted from here and transferred to tahsildar
Advance recoveries
Amount paid earlier for mobilization advancement or material procurement etc are deducted while creating new bill
Retention Money
Money is withheld for payments and paid at later date after defect liability period.
Deductions are always done against a beneficiary.
If a bill contains multiple beneficiaries, it needs to be specified against which beneficiary the deductions are made.
Credit Details
A bill can have multiple beneficiaries. But the nature of payments or beneficiary types should be same for all beneficiaries in one bill.
Wage seekers bill should contain only beneficiaries for wages
Materials bill should contain only vendors and be verified against their invoices
Once the bill of any type is created, this will go for approval and have wfstatus.
Every bill will also have beneficiary payment status.
In the absence of intergrations with Banks/IFMS, this status can be updated manually to mark beneficiary payments.
In the presence of integration, systems should show the status of payment.
Once a bill is approved, a payment advice needs to be created and send to integrated system. This system will send back success/failure status along with reasons.
Incase of payment failure, Works should allow modifying the bill, marking the changes as mentioned in the error codes and resubmit.
This will create a new payment advice, linking reference to earlier bill.
Inbox
Contract Selection and Bill type Selection
Contractor Bill Creation
Wage Bill Creation
Vendor Bill Creation
Supervision bill creation
Field
Data Type
Required (Y/N)
Comments
Bill Details
1
Bill Date
Date
Y
Todays Date
2
Party Bill Date
Date
N
Date on which Invoice is given by third party
3
Party Bill Number
Alphanumeric
N
Reference number on Invoice given by third party
4
Bill Type
Dropdown
Y
Salary, Pension, Works, Advance, Others etc
Financial Details (For ULB Payments)
5
Fund
Dropdown
Y
Capital Fund, Municipal Fund, Grant Fund
6
Function
Dropdown
Y
202107 - Roads and Building Maintenance
202406 - Street Lighting Maintenance
202500 - Storm Water Drains
7
Department
Dropdown
Y
Road and highways
Streetlights
Storm water drains
8
Scheme
Dropdown
N
Scheme is tied to a fund
Muncipal Fund, funds schemes such as Housing, employment, Capital fund, funds scheme like buildings & highways
9
Sub Scheme
Dropdown
N
Sub Scheme is tied to scheme.
10
Fund Source
Dropdown
N
Loans, Own sources, Grants, etc
Financial Details (For State Department Payments)
11
Chart of Accounts
Dropdown
Y
Length varies from state to state. Punjab has 16 digits. Odisha has 27 Digit Codes.
Odisha has following format
Demand Number(2)-Major(4) –
SubMajor(2) – MinorHead(3)-
Sub(4)-Detail(5)-Object(3) –
PlanStatus(2) – ChargedVoted(1) – SectorCode(1)
Example - 11(Demand Number) –
2225 (Major Head) – 02 (Sub
Major Head) - 277 (Minor Head) –
2367 (Sub Head) – 40004 (Detail
Head) – 544 (Object Head) – 21
(Plan Status) – 1 (Charged Voted) – 1 (Sector Code)
Will be represented as
112225022772367400045442111.
Beneficiary Details (Array)
12
Beneficiary ID
Searchable dropdown
Y
Registration ID of the beneficiary in the system
13
Beneficiary Name
Y
Name of the beneficiary
14
Beneficiary Type
Contractor, Employee, Tahsildar, Wage seeker, Asha Worker, Student etc
15
Phone Number
Phone Number
16
Aadhar Number
Aadhar Number
17
Account Number
Y
Account Number
Bank Account Name
Y
Name on bank account
18
Account Type
Savings, Current, Loan etcRequired in IFMS while processing payments
19
IFSC
Y
IFSC
20
Amount
Numeric
Y
Debit Details
21
Account Code
Y
2723000 ,2101001
22
Account Head
Roads and Bridges-Roads & Bridges
Salaries, Wages and Bonus-Basic Pay
23
Debit Amount
Y
Deduction Details
24
Account Code
N
3502017,
25
Account Head
Recoveries payable-LCCS, Creditors-Contractors
26
Deduction Amount
N
Net Payables
27
Account Code
Y
3501002
28
Payable Amount
Y
Debit Amount should be equal to sum of deduction detail plus credit amount.
DDO Details
29
DDO Code
N
30
DDO Login ID
N
DDO Login id is mandatory if multiple DDO exists for the same DDO code.
Summary Details
Y
31
Gross Amount
Y
32
Net Amount
33
Number of beneficiaries
Y
34
PreviousBillReferenceNumber
N
Needed if re-submitting previously objected to the bill.
35
Payment Date
Y
36
Payment Mode
Y
Requirement Specification
Mockup
Works Home Screen
Users having access to billing management can come to the billing inbox by clicking on billing management on the home screen.
Billing Management Inbox
Billing management inbox will have links to create new bill, search for existing bill and filter bills using
Bill ID
Contract ID
Bill Status
Bill created from date
Bill created to date
Initially inbox will be empty as no bills are created.
When bills are created and assigned to other users for approval, inbox table is filled as shown.
Table columns are
Bill ID
Bill date
Bill Type
Contract ID
Contractor Name
Status
Total Amount
SLA
Search Contracts to Create Bills
Users click on create Bill in the billing management inbox and search for existing contracts to create Bills
Search parameters to create Bills
Contract Name
Contract ID
Organization
Contract Type
Contract Created from Date
Contract Created to Date
Search results in the table to show
Contract ID
Estimate ID(s)
Contractor
Contract Type
Status
Contract Amount
Billed Amount
Actions
Validations
Show only contracts whose project closure is not done
Show contracts for which billed amount is equal to contract amount. But do not give option to create a new bill in Actions
Create a New Bill in actions will only be present for contracts whose bill amount is less than contract amount.
Clicking on Contract ID in first tab should show contact view screen exactly as it would open from contracts flow on home screen.
Primary CTA here will be same as what Actions menu shows on the previous screen.
Create Bill (If Billed Amount < Contract Amount)
None (Billed Amount = Contract Amount but project not closed)
Choosing Bill Type
Clicking on create bill should ask the user to select a particular bill type, next screen will be displayed accordingly.
Expenditure service may have many bill types like Salary/Pension Bill, Contractor Bill, Wage Bill, Vendor Bill, Supervision Bill, Advance Bill etc
Works Product will only show
Advance Bill
Contractor Bill
Vendor Bill
In specific implementations such as Mukta, this can extend to
Contractor Bill
Vendor Bill
Wage Bill
Supervision Bill
Validations
Mapping of Contract Type to Bill Type
WO.Work_Items
Contractor Bill
WO.Labour_and_Material
Vendor Bill
Wage Bill
Supervision Bill
PO
Vendor Bill
Mixed (ex. Mukta// Custom implementation)
Wage Bill (But has validations of contractor Bill)
Vendor Bill (But choose to pay to contractor or vendor depending on internal validations)
Supervision Bill
To create any type of bill under a contract, current billed amount shouldn’t have crossed the contract amount.
Contractor Bill
Header details will capture
Bill Date - Default to todays, but allow to change to previous date
Agency/ Firm Bill Number
Agency/Firm Bill Date - Date on which the agency has generated bill in their system. This should be before Bill Date
Contractor Bill is completely based on measurement book
If a contract is formed by combining multiple estimates it will have 1 Mbook for each estimate.
All the readings from multiple Mbooks under this contract, that are recorded and approved, but not yet paid will show in measurement details
User can select upto what date of the mbook reading payments can be made.
It is not mandatory to pay for entire approved readings.
Upon selection of days of readings, final calculation of gross amount payables is calculated and displayed.
In the second Tab, account details to be selected
Deductions
Deductions will be predefined master
Selecting Deduction Name in searchable dropdown will autopopulate Account head description and Amount
Amount is either percentage of Bill or Lumpsum
User can add comments
Deductions cannot be more than gross bill amount.
Deduction Name
Account Code and head
350200207
350200207 - CGST - Revenue
350200102
350200102 -Incometax receoveries - Revenue
Retention Money
Retention money is the amount retained within the source as part of every bill.
Retention money account heads will be defined in master.
Amount should be entered from UI
Retention money cannot be more than current bill amount - deductions
Advance Adjustment
Total Advance Paid - Sum of all the advances paid to this contractor under this contract.
Total Advance pending - Advance given - Advance Paid
Current Bill Deductions - Deductions that will be written off against balance amount.
Current Bill deductions cannot be more than gross Bill Amount - Deductions - Retention money
Net Payables
Net payables is the account code from which payment has to be made.
If we are capturing this at time of project creation, make this a default view only screen.
Otherwise, if user is entering it first time while bill creation, make this an inputtable field from UI with selectable dropdowns.
Bill will have the following statuses
Created
Checked
Approved
Rejected
Re-submitted
Cancelled
Completion Checklist
Only for final bills
Along with bill certain checklist and attachments need to be added to it can trigger project closure.
Wage Bill
Header information is same for all types of Bills
Unlike a contractor Bill, Wage bill is verified against Muster rolls.
All Muster rolls that are created and approved under that contract are shown here for user to select which muster rolls can become part of this bill.
User can do multi select and final amount is shown as gross amount of the bill
Deductions on each beneficiary
Similar to Contractor Deductions, each individual also can attract deductions.
User can choose to add deductions by each individual by clicking on edit icon.
A popup shows asking for deduction details.
User can also select to apply same deduction calculationf for all wage seekers from all musters that are selected.
Gross amount is calculated accordingly
Hence deductions in Account details(next tab) is view only field, a sum of all deductions by each deduction head.
Similar columns should be present for Retention money and Advance Adjustment where details against each individual will be captured in a popup and choosent to be applied to all individuals if needed.
Hence, Retention money and advance adjustment are also view only fields in next screen.
Functionality of net payables is same as contractor bill.
Vendor Bill
A vendor bill should be verified against Purchase order that is given to the supplier.
A purchase order can contain n*m (line items *quantity) and each invoice can be a subset of these items only.
Since in V1, we do not have complete Purchase Order detailed out.
A vendor bill is simply an invoice submitted from the vendor for payments.
It will have
Vendor ID (Ideally comes from contract details if it is PO. Incase of Mixed, or Material and Labour contract this should be captured from UI at the time of Bill creation)
Bill Amount
File Attachment
Deductions, Retention Money, Advance Adjustment and net payables are same as contractor Bill
Advance Bill
Advance Bill is just an amount that is given to the vendor/contractor/individual to commence the work.
Advance bill can be given at any time of the contract.
Advance bill will not have to be verified against any other document
Advance amount should be
< contract value - Billed Amount - Advance Adjustment
There should be provision to adjust Advance Amount in each bill
Supervision Bill
A supervision bill is a special type of bill that will be processed as percentage on top of existing bills.
User can select bills under that contract and select percentage to be given as commission. This will be created as new bill in the system
Deductions, Retention money, Advance adjustment and net payables act same as contractor bill.
Actions to resolve : Works Specifications
#
Error Code
Description
Action
Comments
1
EX0005
Could not find the XML in the Zip File
Technical
2
EX0006
Digital Signature File Missing in the Zip File
Technical
3
EX0007
Digital Certificate found to be Revoked
Technical
4
EX0008
Digital Certificate found to be Expired
Technical
5
EX0009
Certificate Serial Mismatch
Technical
6
EX0010
Signature Verification Failed
Technical
7
EX0030
Invalid Zip File
Technical
8
EX0033
Invalid File Naming Convention
Technical
9
EX0034
Public key not available for Signature verification
Technical
10
EX0903
XSD Validation Failure
Technical
11
FV0004
Duplicate File / Message
Technical
12
FV0005
Number of Transaction mentioned in the Header mismatch with the actual transaction
Technical
13
FV0006
Amount mentioned in the net amount mismatch with the actual transaction amount
How is this possible?
14
FV0007
ePayments Subscription not done for the Initiating Party
What is ePayments Subscription?
15
FV0008
Mismatch in Department Code or Service Code
Technical / Mapping
16
FV0058
Invalid File Name
Technical
17
FV0059
File Creation Date is greater than CBD
Technical
18
PV0007
Debtor Account Closed
Modify and Resubmit the Bill
19
PV0008
Debtor Account Freezed
Modify and Resubmit the Bill
20
PV0009
Debtor Account In-Operative
Modify and Resubmit the Bill
21
PV0010
Debtor Account Dormant
Modify and Resubmit the Bill
22
PV0014
Invalid Debtor IFSC
Modify and Resubmit the Bill
23
PV0070
Debtor IFSC and Creditor IFSC should not be same
Modify and Resubmit the Bill
24
PV0072
Invalid Payment Information ID Format
25
PV0073
Duplicate Payment Information Id
26
TV0002
Invalid Currency
27
TV0003
Invalid Creditor IFSC
Modify and Resubmit the Bill
28
TV0004
Duplicate End to End ID
29
TV0121
Creditor Account Closed
Modify and Resubmit the Bill
30
TV0122
Creditor Account Freezed
Modify and Resubmit the Bill
31
TV0123
Creditor Account In-operative
Modify and Resubmit the Bill
32
TV0124
Creditor Account Dormant
Modify and Resubmit the Bill
33
TV0130
Creditor Account Invalid
Modify and Resubmit the Bill
34
TV0133
Creditor Account Type Invalid
Modify and Resubmit the Bill
35
TV0161
Invalid IIN
What is IIN?
36
TV0162
Invalid Aadhaar format
Not required
37
TV0163
Invalid User Number
Not required
38
TR0001
Previous financial year bill not allowed
Modify and Resubmit the Bill
39
TR0002
Wrong bill head of account
Modify and Resubmit the Bill
40
TR0003
Duplicate bill number
Bill Number is generated Automatically by the system. It should ensure that this doesnt happen. if so, create another bill with new bill number
41
TR0004
Wrong object breakup head of account
Modify and Resubmit the Bill
42
TR0005
Wrong by transfer head of account
Modify and Resubmit the Bill
43
TR0006
Bill objected
Why?
44
TR0007
Payment failed
Why?
45
TR9999
Internal system error
Technical
46
0
Processed successfully
Budget Checks
Input to expenditure service is when a project is created and an estimate is to be approved.
Expenditure will query the program service to get the status on fund availability.
Budget Blocking
In case funds are available, expenditure service can also ask program service to block respective funds (from estimation) for this project.
Budget hence is blocked and won’t be available for next projects to consume.
Release Blocked Budget
Expenditure module should also have provision to release the pre-blocked budget. So this can be used for other projects. Or the existing project for which the budget has been blocked is deferred.
Expense Planning
Expenditure service will also have a planning module which will give timelines of expenses and respective amounts to funding agencies.
Blocking module also feeds into the planning module to block funds in a timely manner.
Billing management
Bills are created under contracts (projects)
A contract is issued by Payer to Payee.
Contract can be materials, labor, services, supervision etc
A payee inturn issues invoices against the contract on supply of material/services.
After successful verification of supplies and invoices, payer add bills into the finance system
A voucher is created in accounting system for auditing purpose
A payment advice is sent to bank for making financial transactions
Voucher and bill statues are updated once the payments are made.
Validations
A contract can have multiple invoices raised by the payee before the contract is deemed closed.
An invoice can be a material invoice, labor invoice (Muster roll), invoice for supervision charges.
PS: Not every time an invoice is required to generate a bill.
Ex. Salary Bill, Advance bill, contingency bill etc doesn't need any invoices.
An invoice can have multiple line items.
Incase of a restaurant bill - Restaurant captures additional GST amount on net amount. All line items are paid immediately by the service seeker.They pay the taxes collected from all invoices to respective government bodies at set intervals.
Incase of a salary bill - All line items are not immediately paid to the service provider (Employee). Instead the employer deducts TDS and only pays part amount to the employee. Employer remits this amount to government body. Even the employee remits his part if the tax at regular intervals.
An invoice can also have multiple beneficiaries and headwise breakfups for each beneficiary.
An invoice when entered into the system creates a Bill. A bill entity internally will have multiple line items each by payer, beneficiary, amount and head combination.
So a muster roll with 1 payer, 3 payees, each payee having 500 rs payable and 50 rs deduction on ESI can be on 1 bill with 6 line items.
This bill when processed will create voucher in accounting system
A payment voucher however can be a combination of multiple payers and payees by line items. From above example
There can be minimum of 2 payment advices one for all payables of 450 rs to each individual
Other for all ESI deductions directed to ESI department.
This will help payments go faster to respective departments.
Once the payments are made, respective bill line items will be updated with statuses. Once all bill line items are updated, overall bill will be updated with status.
Search contract flow helps in searching any contract in the system (Currently in progress or old contracts or rejected contracts)
Users have the option on the contract Inbox to search for contracts. Clicking on that link will get users to the contract search page
Default is an empty page with a set of search options
Contract ID
Estimate ID - Searching for project ID should list all contracts that are part of that project
Contract Type
Contractor ID
Contract Created from Date
Contract Created to Date
Contract search results table -
Contract ID
Estimate ID
Contractor
Contract Type
Status
Contract Amount
Clicking on any Contract ID will take the user to the View Contract screen