Expenditure / Billing

Background/Context

In a government setting -

  1. 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.

  2. Payments made TO the government, ie. Receipt/Revenue to the government can be of two types

    1. Demand based collection

      1. First, a demand is generated by the government

        1. Ex. Demand for Property Tax, Trade license, Water tax etc

      2. 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.

      3. Third, Citizen acknowledges and pays the respective amount.

      4. Fourth, a receipt is issued against the paid amount.

    2. Non Demand based Collection

  • There is also another type where collections are made without any demand being generated.

  1. DIGIT has this demand & Billing service to accommodate payments made to governments.

    1. For payments made BY the governments

      1. Ex - Salaries, Wages, Payments to beneficiaries, Contractors, Ad hoc payments

Approach

  1. For any transaction to happen, there is a payer, payee, amount and entity details

    1. Payer and Payee can be individuals or organizations.

    2. Entity details contain other information which are important for a bill to be generated but not mandatory for payment advice

      1. Ex. Invoice ID, Invoice date, Verification details etc

  2. 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.

    1. A Bill can have single or multiple beneficiaries. It should depend on the source of verifiable information.

      1. Ex. If a muster roll has 20 beneficiaries, Bill also can have 20 beneficiaries. It is not needed to create 20 individual bills.

    2. At the same time, A single invoice should not be divided into multiple bills.

      1. 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.

  3. A Payment advice is required to be generated to enable beneficiary payments, module is to be integrated with a payment gateway

    1. Hence a payment advice will contain minimal information that is required for bank/gateway to make the payment.

    2. Limits on number of beneficiaries and amounts etc to be configurable as will needed by the integration.

Expenditure module

  1. Expenses are created by the JE and approved by ME, EE/ EO depending on amount and associated approval authority.

  2. This module should have the following components

    1. Header Details

      1. Bill ID

      2. Bill Date

      3. Party Bill ID

      4. Party Bill Date

      5. Bill Type

        1. Salary/Pension Bill

          1. Based on Payroll, leaves, PF, GPF, other allowances

        2. Advance Bill

          1. Unlike other bills which are post work/service completion and measurement, advance bill is raised prior and adjusted later.

          2. Advance bill is horizontal and be applicable on top of all other bill types

        3. Works/Contractor Bill

          1. A contractor bill is created and measured against the measurement books and contract(work order) objects for verification.

          2. 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.

        4. Muster/Labour Bill -

          1. A labour bill is created from muster roll and usually have multiple beneficiaries within the same bill.

          2. 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.

        5. Supplier/Vendor Bill

          1. 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.

          2. A vendor bill should ideally be against each individual invoice as submitted by the supplier.

          3. 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.

        6. Contingency/Expense Bill

          1. Ad Hoc expenses

        7. Supervision Bill

          1. This type of Bill is calculated as a percentage on top of other types of approved bills.

        8. Others (need more usecases)

    2. Debit Details

      1. {Account Code, Account head, Debit Amount}

        1. Treasury Payments - {Major, Sub Major, Minor, Sub Minor, Detail, Object head , Debit Amount}

        2. ULB Payments - {Fund, Functionary, Budget head, Scheme, Sub Scheme, Debit Amount}

      2. This should be configurable at the tenant level to choose what type of accounting system is followed.

      3. Debit details should ideally be captured at the time of project creation. This helps in budget checks being done.

      4. Each Project will be associated with a set of account codes and percentage amounts of the entire project, from where debit will happen.

      5. Similarly, respective amounts (lumpsum/percentage) should be chosen from these account codes for each bill that is created.

      6. 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.

  3. Deductions

  4. Amount that is deducted from gross value of the bill as these are already included in the work line items

  5. Deductions are classified into many types

    1. Internal transfer

      1. Ex. SOR line items already include cess 1%. Hence it is deducted here and transferred to labour welfare account head

      2. SOR line items also include royalty on material. That needs to be deducted from here and transferred to tahsildar

    2. Advance recoveries

      1. Amount paid earlier for mobilization advancement or material procurement etc are deducted while creating new bill

    3. Retention Money

      1. Money is withheld for payments and paid at later date after defect liability period.

  6. Deductions are always done against a beneficiary.

    1. If a bill contains multiple beneficiaries, it needs to be specified against which beneficiary the deductions are made.

  7. Credit Details

    1. A bill can have multiple beneficiaries. But the nature of payments or beneficiary types should be same for all beneficiaries in one bill.

      1. Wage seekers bill should contain only beneficiaries for wages

      2. Materials bill should contain only vendors and be verified against their invoices

  1. Once the bill of any type is created, this will go for approval and have wfstatus.

  2. Every bill will also have beneficiary payment status.

    1. In the absence of intergrations with Banks/IFMS, this status can be updated manually to mark beneficiary payments.

    2. In the presence of integration, systems should show the status of payment.

    3. 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.

  3. Incase of payment failure, Works should allow modifying the bill, marking the changes as mentioned in the error codes and resubmit.

    1. This will create a new payment advice, linking reference to earlier bill.

Bill Attributes

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

Functional Requirements

Requirement Specification

Mockup

Works Home Screen

  1. Users having access to billing management can come to the billing inbox by clicking on billing management on the home screen.

Billing Management Inbox

  1. Billing management inbox will have links to create new bill, search for existing bill and filter bills using

    1. Bill ID

    2. Contract ID

    3. Bill Status

    4. Bill created from date

    5. Bill created to date

  2. Initially inbox will be empty as no bills are created.

  3. When bills are created and assigned to other users for approval, inbox table is filled as shown.

  4. Table columns are

    1. Bill ID

    2. Bill date

    3. Bill Type

    4. Contract ID

    5. Contractor Name

    6. Status

    7. Total Amount

    8. SLA

Search Contracts to Create Bills

  1. Users click on create Bill in the billing management inbox and search for existing contracts to create Bills

  2. Search parameters to create Bills

    1. Contract Name

    2. Contract ID

    3. Organization

    4. Contract Type

    5. Contract Created from Date

    6. Contract Created to Date

  3. Search results in the table to show

    1. Contract ID

    2. Estimate ID(s)

    3. Contractor

    4. Contract Type

    5. Status

    6. Contract Amount

    7. Billed Amount

    8. Actions

Validations

  1. Show only contracts whose project closure is not done

  2. Show contracts for which billed amount is equal to contract amount. But do not give option to create a new bill in Actions

  3. Create a New Bill in actions will only be present for contracts whose bill amount is less than contract amount.

  1. Clicking on Contract ID in first tab should show contact view screen exactly as it would open from contracts flow on home screen.

  2. Primary CTA here will be same as what Actions menu shows on the previous screen.

    1. Create Bill (If Billed Amount < Contract Amount)

    2. None (Billed Amount = Contract Amount but project not closed)

Choosing Bill Type

  1. Clicking on create bill should ask the user to select a particular bill type, next screen will be displayed accordingly.

  2. Expenditure service may have many bill types like Salary/Pension Bill, Contractor Bill, Wage Bill, Vendor Bill, Supervision Bill, Advance Bill etc

  3. Works Product will only show

    1. Advance Bill

    2. Contractor Bill

    3. Vendor Bill

  4. In specific implementations such as Mukta, this can extend to

    1. Contractor Bill

    2. Vendor Bill

    3. Wage Bill

    4. Supervision Bill

Validations

Mapping of Contract Type to Bill Type

  1. WO.Work_Items

    1. Contractor Bill

  2. WO.Labour_and_Material

    1. Vendor Bill

    2. Wage Bill

    3. Supervision Bill

  3. PO

    1. Vendor Bill

  4. Mixed (ex. Mukta// Custom implementation)

    1. Wage Bill (But has validations of contractor Bill)

    2. Vendor Bill (But choose to pay to contractor or vendor depending on internal validations)

    3. Supervision Bill

  5. To create any type of bill under a contract, current billed amount shouldn’t have crossed the contract amount.

Contractor Bill

  1. Header details will capture

    1. Bill Date - Default to todays, but allow to change to previous date

    2. Agency/ Firm Bill Number

    3. Agency/Firm Bill Date - Date on which the agency has generated bill in their system. This should be before Bill Date

  2. Contractor Bill is completely based on measurement book

    1. If a contract is formed by combining multiple estimates it will have 1 Mbook for each estimate.

    2. All the readings from multiple Mbooks under this contract, that are recorded and approved, but not yet paid will show in measurement details

    3. User can select upto what date of the mbook reading payments can be made.

      1. It is not mandatory to pay for entire approved readings.

    4. Upon selection of days of readings, final calculation of gross amount payables is calculated and displayed.

  1. In the second Tab, account details to be selected

  2. Deductions

    1. Deductions will be predefined master

    2. Selecting Deduction Name in searchable dropdown will autopopulate Account head description and Amount

      1. Amount is either percentage of Bill or Lumpsum

      2. User can add comments

    3. Deductions cannot be more than gross bill amount.

Deduction Name

Account Code and head

350200207

350200207 - CGST - Revenue

350200102

350200102 -Incometax receoveries - Revenue

  1. Retention Money

    1. Retention money is the amount retained within the source as part of every bill.

    2. Retention money account heads will be defined in master.

    3. Amount should be entered from UI

    4. Retention money cannot be more than current bill amount - deductions

  2. Advance Adjustment

    1. Total Advance Paid - Sum of all the advances paid to this contractor under this contract.

    2. Total Advance pending - Advance given - Advance Paid

    3. Current Bill Deductions - Deductions that will be written off against balance amount.

    4. Current Bill deductions cannot be more than gross Bill Amount - Deductions - Retention money

  3. Net Payables

    1. Net payables is the account code from which payment has to be made.

    2. If we are capturing this at time of project creation, make this a default view only screen.

      1. Otherwise, if user is entering it first time while bill creation, make this an inputtable field from UI with selectable dropdowns.

  4. Bill will have the following statuses

    1. Created

    2. Checked

    3. Approved

    4. Rejected

    5. Re-submitted

    6. Cancelled

Completion Checklist

Only for final bills

  1. Along with bill certain checklist and attachments need to be added to it can trigger project closure.

Wage Bill

  1. Header information is same for all types of Bills

  2. Unlike a contractor Bill, Wage bill is verified against Muster rolls.

  3. 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.

    1. User can do multi select and final amount is shown as gross amount of the bill

  4. Deductions on each beneficiary

    1. Similar to Contractor Deductions, each individual also can attract deductions.

    2. User can choose to add deductions by each individual by clicking on edit icon.

    3. A popup shows asking for deduction details.

    4. User can also select to apply same deduction calculationf for all wage seekers from all musters that are selected.

    5. Gross amount is calculated accordingly

    6. Hence deductions in Account details(next tab) is view only field, a sum of all deductions by each deduction head.

  5. 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.

    1. Hence, Retention money and advance adjustment are also view only fields in next screen.

  6. Functionality of net payables is same as contractor bill.

Vendor Bill

  1. A vendor bill should be verified against Purchase order that is given to the supplier.

  2. A purchase order can contain n*m (line items *quantity) and each invoice can be a subset of these items only.

  3. Since in V1, we do not have complete Purchase Order detailed out.

    1. A vendor bill is simply an invoice submitted from the vendor for payments.

    2. It will have

      1. 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)

      2. Bill Amount

      3. File Attachment

  4. Deductions, Retention Money, Advance Adjustment and net payables are same as contractor Bill

Advance Bill

  1. Advance Bill is just an amount that is given to the vendor/contractor/individual to commence the work.

  2. Advance bill can be given at any time of the contract.

    1. Advance bill will not have to be verified against any other document

  3. Advance amount should be

    1. < contract value - Billed Amount - Advance Adjustment

  4. There should be provision to adjust Advance Amount in each bill

Supervision Bill

  1. A supervision bill is a special type of bill that will be processed as percentage on top of existing bills.

  2. 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

  3. Deductions, Retention money, Advance adjustment and net payables act same as contractor bill.

Bill Objection reasons

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

Expenditure service domain modeling

Budget Checks

  1. Input to expenditure service is when a project is created and an estimate is to be approved.

    1. Expenditure will query the program service to get the status on fund availability.

Budget Blocking

  1. In case funds are available, expenditure service can also ask program service to block respective funds (from estimation) for this project.

    1. Budget hence is blocked and won’t be available for next projects to consume.

Release Blocked Budget

  1. 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

  1. Expenditure service will also have a planning module which will give timelines of expenses and respective amounts to funding agencies.

    1. Blocking module also feeds into the planning module to block funds in a timely manner.

Billing management

  1. Bills are created under contracts (projects)

  2. A contract is issued by Payer to Payee.

    1. Contract can be materials, labor, services, supervision etc

  3. A payee inturn issues invoices against the contract on supply of material/services.

    1. After successful verification of supplies and invoices, payer add bills into the finance system

    2. A voucher is created in accounting system for auditing purpose

    3. A payment advice is sent to bank for making financial transactions

    4. Voucher and bill statues are updated once the payments are made.

  1. Validations

    1. A contract can have multiple invoices raised by the payee before the contract is deemed closed.

    2. An invoice can be a material invoice, labor invoice (Muster roll), invoice for supervision charges.

    3. PS: Not every time an invoice is required to generate a bill.

      1. Ex. Salary Bill, Advance bill, contingency bill etc doesn't need any invoices.

    4. An invoice can have multiple line items.

      1. 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.

      2. 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.

      3. An invoice can also have multiple beneficiaries and headwise breakfups for each beneficiary.

    5. 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.

      1. 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.

    6. This bill when processed will create voucher in accounting system

    7. A payment voucher however can be a combination of multiple payers and payees by line items. From above example

      1. There can be minimum of 2 payment advices one for all payables of 450 rs to each individual

      2. Other for all ESI deductions directed to ESI department.

      3. This will help payments go faster to respective departments.

    8. 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.

Last updated

​​  ​All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.