Skip to content

Bill Management

Overview

The Bill Management module provides a tabbed bill list with 7 status categories, detailed bill views, multi-bill selection and payment, and a Pay for Others flow for cross-user bill payment.

Navigate to: Sidebar → Bill or /bill


Bill List

Bill List

Element Description
Search bar Search by bill number, property, or reference
Filter tabs 7 tabs: All (N), Overdue (N), Cancelled (N), Adjusted (N), Paid (N), Partial (N), Pending (N) — each shows a live count
Bill cards List of bills matching the active filter

Bill Card

Field Description
Bill Number Unique identifier, e.g. #2026000000000022
Property Property ID or name
Amount Outstanding amount in GH₵
Total Bill Full bill amount
Due Date Payment deadline
Status badge Paid, Unpaid, Partial, Overdue, Cancelled, Adjusted, Pending
Overdue flag Red indicator with clock icon when past due date

Multi-Bill Selection

Checkboxes on bill cards allow selecting multiple bills for batch payment. A sticky bar at the bottom tracks:

Element Description
Selected count Number of bills selected
Total amount Sum of selected bills' outstanding amounts
Pay Now button Proceeds to payment for all selected bills

!!! tip "Things to check" - Filter tab counts match the actual number of bills in each category - Overdue flag only appears when the due date has actually passed - Search correctly matches by bill number, property, or reference - Selecting/deselecting a bill updates the count and total immediately - Pay Now is disabled when no bills are selected - Bills with status Paid or Cancelled cannot be selected for payment


Bill Details

Opened by tapping a bill card.

Bill Details

Bill Information

Field Description
Bill No Unique bill identifier
Ratepayer Name of the rate payer
Property Property ID
Year Billing year
Issue Date Date the bill was issued
Due Date Payment deadline
Status e.g. UNPAID (red), PAID (green)

Bill Breakdown

Field Description
Property Rate for property#... Base rate amount
Penalties Late payment penalties
Discounts / Waivers Applied discounts or waivers
Other Fees Additional fees
Total Bill Sum of rate + penalties + fees, less discounts
Paid Amount already paid to date
Outstanding Amount Total Bill − Paid

Actions

Action Description
Pay Now Opens the payment modal for this bill
View / Print Bill Opens or downloads the bill document

!!! tip "Things to check" - Total Bill = Property Rate + Penalties + Other Fees − Discounts/Waivers - Outstanding Amount = Total Bill − Paid — confirm the math holds - Status badge color matches the bill state - Pay Now is disabled for bills with status Paid or Cancelled - View / Print Bill produces the correct bill for the correct property


Payment Modal

Opened via Pay Now from the bill details or from multi-bill selection.

Payment Modal

Element Description
Amount to Pay Editable amount field, starts at GH₵0.00
Outstanding Read-only reference of the remaining balance
Quick-select buttons 25%, 50%, 75%, 100% — auto-fill Amount to Pay as a percentage of Outstanding
Enter custom amount Manual input, overrides the quick-select buttons
Pay GH₵[amount] button Submits the payment — label updates live as the amount changes
Contact support link Help link for payment issues

A note confirms payments are secured and encrypted.

!!! tip "Things to check" - Quick-select percentage buttons calculate correctly against Outstanding, not the full Total Bill - The Pay button label updates live as the amount changes, and is disabled at GH₵0.00 - Overpaying (amount greater than Outstanding) is either blocked or handled sensibly - Paying via each available method completes successfully - After payment, the bill status updates correctly in the bill list


Multi-Bill Payment

When multiple bills are selected from the bill list, Pay Now opens a consolidated payment summary before the actual payment.

Multi-Bill Payment Summary

Field Description
Bills Selected Count of selected bills
Total Outstanding Sum of outstanding amounts across all selected bills
Paying Now Sum of amounts actually being paid (may be less if any are partial)

Each selected bill is listed individually with its own Outstanding and Paying Now amounts.

!!! tip "Things to check" - Paying Now at the top equals the sum of every bill's individual Paying Now amount - Each bill's amount is itemized correctly and none get dropped or duplicated - The final Pay button amount matches Paying Now, not Total Outstanding - Partial payment amounts persist correctly when deselecting and re-selecting bills


Payment Success

Shown immediately after a successful payment.

Payment Success

Field Description
Amount paid Total amount paid in this transaction
Bill Number Bill identifier(s)
Reference No Unique transaction reference
Ratepayer Rate payer name
Payment Method e.g. card
Paid On Timestamp
Description e.g. Property Rate for property#...

Actions: View / Print Receipt, Share Link, Browser (opens the receipt in-browser).

The receipt includes a QR code for verification and can be accessed publicly via /receipt/:id.

!!! tip "Things to check" - The paid amount, bill, and outstanding balance update correctly in the bill list after payment - Reference No is unique per transaction, never reused - Share Link produces a link that opens the receipt without requiring login - View / Print Receipt produces a formal, printable receipt with QR code


Pay for Others

Navigate to: /bill/payother

Lets a rate payer pay a bill on behalf of another rate payer, by looking up that person's bills via their phone number and an OTP verification step.

Pay for Others

Step 1: Enter Phone Number

Field Required Description
Rate Payer's Phone Number Yes Country code selector (defaults +233 Ghana) + number

Verify & Search Bill button starts OTP verification.

The flow is documented on-screen:

  1. Enter the registered phone number of the rate payer.
  2. iDARMS securely verifies ownership using an OTP sent to that number.
  3. All outstanding property bills linked to this number are displayed.
  4. Select one or multiple bills and pay fully or partially.
  5. A payment receipt is generated instantly after success.

!!! tip "Things to check" - A phone number not registered in the system shows a clear error - The payer cannot pay for their own number here — or if they can, confirm that's intentional

Step 2: Verify OTP

Pay for Others - OTP

Element Description
OTP Sent Successfully notice Confirms the OTP was sent to the rate payer's registered email and mobile
6-digit code input One digit per box
Countdown timer e.g. Valid for 04:45
Cancel / Verify Verify stays disabled until all 6 digits are entered

!!! info "Whose OTP is this?" The OTP goes to the rate payer being paid for, not the person paying. This only works if the payer can access the rate payer's phone or email.

Step 3: Bill Search Results

Once verified, matching bills for that phone number are displayed. Each result card shows the same fields as a bill card on the main bill list.

A Search Another button appears to look up a different number.

Step 4: Bill Details & Payment

Tapping a result opens a Bill Details sheet with full information and a Pay Now button. The flow then matches the standard payment flow.

!!! tip "Things to check" - If the rate payer has no outstanding bills, this is stated clearly - Search Another clears the previous result and returns to phone number entry - The receipt's Ratepayer field shows the bill owner, not the person paying - After payment, the bill status updates for both the payer and the actual rate payer - This payment appears in the payer's Payment History, attributed to the correct property