Online Water Billing System

Developed and maintained an online water billing system for LGUs, enabling customer management, billing, and payment processing.

Back to Portfolio Live Preview

System Screenshots

Water Billing System Dashboard Screenshot
Figure: Water Billing System Dashboard (Overview)
Create New Bill Screenshot
Figure: Create New Bill Modal
Process Bill Payment Screenshot
Figure: Process Bill Payment Modal
User Management Screenshot
Figure: User Management Page

description Water Billing System โ€“ Project Documentation

info 1. Project Overview

The Water Billing System is a web application designed for Local Government Units (LGUs) to manage the complete billing cycle of water utility services.

  • Customer Management
  • Bill Generation from meter readings
  • Payment Processing and Credit Handling
  • User Role Administration

Built entirely on Google Workspace, it utilizes Google Sheets for storage and Google Apps Script for logic.

developer_mode 2. Technology Stack

๐Ÿ”ง Backend
  • Google Apps Script (JavaScript-based)
  • Runs on Google Cloud (serverless)
๐ŸŽจ Frontend
  • HTML5, CSS3, JavaScript (ES6+)
  • Chart.js, Material Icons, Google Fonts
๐Ÿ“Š Database
  • Google Sheets with structured tabs (Customers, Users, Bills, etc.)
๐Ÿ”„ Communication
  • google.script.run for async frontend/backend calls

architecture 3. System Architecture

  • Client: SPA using HTML, CSS, JavaScript
  • Server: Google Apps Script (Code.js)
  • Data Storage: Google Sheets with SpreadsheetApp

Execution Flow:

  1. User opens the web app
  2. doGet() loads the UI
  3. Login checked via validateLogin()
  4. Frontend makes all future calls via google.script.run

star 4. Key Features

๐Ÿ‘ฅ 4.1 User & Session Management
  • Secure Login & Role-Based Access Control
  • Full user CRUD + system lock and fullscreen support
๐Ÿ‘ค 4.2 Customer Management
  • Manage customer data in Customers sheet
  • Add, update, delete, search and filter customers
๐Ÿงพ 4.3 Billing Management
  • Create bills based on meter readings
  • Auto-fetch previous reading
  • Real-time calculations using customer-specific tiered rates
  • Duplicate bill prevention
๐Ÿ’ต 4.4 Payment Processing
  • Multi-bill payments and surcharge logic
  • Auto-apply credits and handle overpayments
  • All payments logged in the Payments sheet
๐Ÿ“ˆ 4.5 Reports & Analytics (UI Disabled)
  • Available backend functions to generate reports
  • Includes revenue tracking, overdue analysis, trends

table_chart 5. Database Schema

Sheet Key Fields
Users UserID, Name, Password, Role, Status, Last Login
Customers CustomerID, Name, Type, Barangay, Discount
Bills CustomerID, BillID, Reading, Consumption, Amount
Payments PaymentID, Bill Details, Discounts, Total, Paid By
CustomerCredits CustomerID, CreditBalance, Notes
Rates Tiered rates for different customer types