DIGIT mGramSeva
PlatformDomainsAcademyDesign SystemFeedback
v1.2
v1.2
  • Introducing mGramSeva
    • Platform
      • Release Notes
        • Web Caching
        • Service Build Updates
        • MDMS Configuration & Migration Updates
        • Test Cases
        • Release Checklist
        • Implementation Checklist
      • Technology
      • Architecture
      • Demo video
      • Configure mGramSeva
        • Vendor Registry Service
        • User Events Service
        • eChallans Service
        • Water Calculator Service
        • Property Services
        • Billing Service
        • Apportion Service
      • Technical User Docs
        • Application Structure
        • Firebase Analytics Integration
        • Integration Testing
        • Integration Testing With Github Actions
        • Backend Services
          • mGramSeva - Water Services
          • mGramSeva - Water Service Calculator
          • mGramSeva e-Challan Service
          • mGramSeva - User Service
          • mGramSeva - Billing Service
          • mGramSeva - User OTP
          • iFix Adapter Integration Service
          • mGramSeva - Rollout Dashboard
          • mGramSeva Scheduler
          • mGramSeva- Services Re-Indexing
          • mGramSeva Dashboard
          • Events Push To IFIX Adapter
        • Tech User Manual
          • Language Selection
          • Login
          • Change Password
          • Edit Profile
          • Home Page
          • Forgot Password
          • Update Password FTL
          • Generate Bill
          • Search Connection
          • Consumer Details
            • Create Consumer
            • Update Consumer
          • Expenses
            • Add Expenses
            • Search Expense Bills
            • Modify Expenses
          • Dashboards
            • Monthly Dashboard
            • Collections Dashboard
            • Expenditure Dashboard
          • Collect Payment
          • Consumer Feedback
          • Household Register
          • Bluetooth Thermal Printer Integration
        • Application Permissions & Dependencies
        • mGramSeva UI
          • UI Mockups
          • mGramSeva UI
            • mGramSeva - Advance Changes
            • mGramSeva Penalty Changes
      • Installation
      • Configuration
    • Enablement toolkits
      • AWS Installation
        • Setup AWS Account
        • Certificate Purchase
        • Setup Git Repository
        • Domain Name Configuration
        • Create Git Account In The Client Name
      • Setting up Services
        • Getting Started With DIGIT
        • Creating Users
        • Loading Employees For mGramSeva
        • Loading Consumers For mGramSeva
        • Localisation Module
        • Updating Master Rate for Mgramseva
        • Create Consumer API
        • Create User API
        • SMS Template
        • mGramSeva MDMS
        • Create New Tenant
        • Workflow
    • Product Docs
      • Functional Docs
        • Login & Forgot Password
        • User Roles & Home Screen
        • Create Consumer
        • Search Consumer
        • Edit Consumer
        • View Consumer
        • Billing - Bulk Demand Generation
        • Billing - Metered Connection
        • Revenue Collection - Offline
        • Expenditure - Add Expense
        • Expenditure - Modify Expense
        • User Onboarding - Bulk Upload
        • User Onboarding/Walkthrough
        • Feedback - Post Payment
        • SMS Notifications
        • Home Page Notifications
        • Edit User Profile
        • Bill and Receipt PDF
        • Update Expense Search
        • Bulk Demand Generation For Non-Metered Connection
        • Demand/Bill Generation For Metered Connection
        • Household Register
        • Tabular Dashboard - Expense
        • Tabular Dashboard - Collection
        • Download Bills & Receipt
        • App Force Update
        • HRMS
        • Advance Changes
      • User Docs
        • User Manual
  • 🚻Community
    • Roadmap
    • Source Code
    • Discussion
    • Events
    • Training & Certification
Powered by GitBook
On this page
  • Overview
  • User Interaction On Screen
  • Logic Implemented For Advance
  • Logic Implemented For Time Penalty
  • Logic Implemented For First Demand Penalty
  • Logic Implemented For Arrears Breakup
  • Files Path
  • Field Validations
  • API Details
  1. Introducing mGramSeva
  2. Platform
  3. Technical User Docs
  4. Tech User Manual

Collect Payment

PreviousExpenditure DashboardNextConsumer Feedback

Last updated 2 years ago

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

Overview

The Revenue Collector uses the Collect Payment screen to collect payment against the demand generated for metered and non-metered connections or any arrears.

Collect Payment card is available on the home screen to the user role having the COLLECTION_OPERATOR permission.

Link → {base url}/mgramseva/household/details/collectPayment

User Interaction On Screen

  • Users can pay the total due amount that is set by default.

  • Or, users can also pay an advance amount or partial amount by changing the value in the payment amount field to a higher or lower value. If a partial amount is to be paid, then users need to provide a lower amount than the total due amount. If the advance amount is to be paid, users need to provide a higher amount than the total due amount.

  • Clicking on Collect Payment opens a confirmation popup to confirm if the amount entered is correct.

  • Clicking on Confirm navigates the user to the Payment Success screen. The user can download the receipt or share the receipt for the collected amount.

  • Users can also print mini receipts with the help of Bluetooth thermal printers by selecting the option.

Logic Implemented For Advance

billing-service/demand/_search API is used to calculate the advance amount for the current bill. The advance amount is fetched from the logic - if taxHeadMasterCode is 'WS_ADVANCE_CARRYFORWARD'. This has two properties - collection amount and tax amount. The tax amount is the advance amount that is added to the system and the collection amount is the amount utilised from the total advance amount. We can get the current advance from the taxAmount - collectionAmount.

Logic Implemented For Time Penalty

ws-calculator/waterCalculator/_getPenaltyDetails API is used to calculate the Time Penalty amount. The time penalty amount is fetched from the logic - if taxHeadMasterCode is'WS_TIME_PENALTY'. The time penalty amount is retrieved from the tax amount property of the latest demand.

The due date is calculated by adding the billexpirtyDate days to the demand generation date.

If the due date is crossed, billing-service/demand/_search API gives the Time Penalty applied.

Logic Implemented For First Demand Penalty

billing-service/demand/_search API gives the Normal Penalty. The Penalty placeholder in the bill details is visible if it is the first demand and has the taxHeadMasterCode as 10201.

Logic Implemented For Arrears Breakup

The arrears are broken into 'BL_(TaxHeadCode)' fetched from Bill Details-->Bill Account Details --> Tax Head Code. The amount of particular arrears is similar to the Bill Details--> Amount from the Fetch Bill API.

(For instance, if there are two bills with tax head codes is 10101 and 10102, then arrears break up is represented as BL_10101(Water Charges) with the corresponding amount and BL_10102(Water Charges-Arrears) with the corresponding amount).

Note:

  • The “Penalty” details displayed under “Bill Details“ section is displayed only if the config flag “Penalty enabled” is set as true. If it is set as false, then the penalty details is not displayed.

  • The “Advance” details displayed under “Bill Details“ section is displayed only if the config flag “Advance enabled” is set as true. If it is set as false, then the advance details is not displayed.

Files Path

Field Validations

Fields
Validations

Partial Amount (If Partial Amount is selected)

r'^[0-9]+$' , Can not be 0

Payment Method

Defaulted to Cash

API Details

API EndPoint

Input Params (Modules)

Description

egov-mdms-service/v1/_search

[{"moduleName":"BillingService","masterDetails":[{"name":"BusinessService","filter":"[?(@.code=='WS')]"}]}]

To get the billGeneiURL, Calculation of Water services and collectionModesNotAllowed

billing-service/bill/v2/_fetchbill

consumerCode : {}

businessService : WS

tenantId : {}

To fetch the bills of the connection/Consumer

billing-service/demand/_search

consumerCode, businessService, tenantId

To Fetch Demand Details

ws-calculator/waterCalculator/_getPenaltyDetails

{ "tenantId": "", "consumerCodes": "", "isGetPenaltyEstimate": "true"},

{

"GetBillCriteria":

{"tenantId": "", "isGetPenaltyEstimate": true, "consumerCodes": [""] }

}

To get the Time Penalty Amount

Stack

1 → Home Screen. + Search Connection Screen + Household Results + Household Details Screen + Collect Payment Screen

Pop → Household Details Screen

Widgets utilised from Library

Widgets

File Path

Description

BuildTextField

Text Field

BottomButtonBar

Button

RadioButtonField

Radio Buttons for options

ConfirmationPopUp

Dialog box to confirm and proceed to next step

CustomDetailsCard

Secondary theme color Card to display Details Eg. Penalty Card

Primary Files:

https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/screeens/common/collect_payment.dart
https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/widgets/TextFieldBuilder.dart
https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/widgets/BottonButtonBar.dart
https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/widgets/RadioButtonFieldBuilder.dart
https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/widgets/ConfirmationPopUp.dart
https://github.com/misdwss/punjab-mgramseva/blob/master/frontend/mgramseva/lib/widgets/CustomDetails.dart
Print mini receipt