Skip to content

Ratepayer App — Bills Management Module Acceptance Tests

Test series: RPA-BILL-01 to RPA-BILL-08 Objective: Validate that a ratepayer can view, filter, and manage bills; select and pay a single bill or multiple bills; and pay on behalf of another ratepayer. Mirrors: ratepayer-portal/bills-management.md (RPP-BILL-01 to RPP-BILL-16). Bill Details, checkout modal, gateway initiation, and Payment Return screens should be validated against the same web criteria once those app screens are captured; this file covers the confirmed list-level and multi-bill-payment screens from the screenshots.

Execution ownership

Recommended owners: Ratepayer/Public Portal users; Customer Service observer; Payment/Integration representative

Prerequisites: A signed-in ratepayer with paid, partially paid, unpaid, and overdue bills; an eligible bill for payment; a controlled payment test method; and another ratepayer's phone number for the Pay for Others flow.

Execution control

Use approved UAT data only. Mask personal, authentication, and payment information in screenshots and attachments.

Feature overview

The Bills tab covers the ratepayer's property-rate billing journey:

  • My Bill list with search, status filter tabs (All/Unpaid/Partially Paid/Paid/etc.), and summary totals (Total, Unpaid, and further categories on scroll).
  • Bill row with reference number, overdue/status indicator, due date, region, property category, outstanding amount, and status badge.
  • Multiple Bill Pay screen with per-bill selection, a Partial/Full payment toggle, and a running selected total.
  • Pay for Other Rate Payer with phone entry, an explainer panel, and OTP verification.

Coverage summary

Test ID Feature Scenario Priority
RPA-BILL-01 Bills List List display and navigation Critical
RPA-BILL-02 Bills List Status tabs and summary totals High
RPA-BILL-03 Bills List Search High
RPA-BILL-04 Multiple Bill Pay Bill selection and Partial/Full payment Critical
RPA-BILL-05 Multiple Bill Pay Payment submission Critical
RPA-BILL-06 Pay for Other Phone verification and explainer High
RPA-BILL-07 Bill Details Details and single-bill payment (pending confirmation) Critical
RPA-BILL-08 Bills List Bill status display High

Implementation observations requiring UAT confirmation

Observation from screenshots Required validation
The bill row shows "Overdue" as a red label above the due date, separate from the status badge (e.g., "PARTIALLY PAID"), meaning a bill can display both an overdue indicator and a payment-status badge simultaneously. Confirm this dual-indicator behaviour matches the intended web parity (ratepayer-portal/bills-management.md RPP-BILL-16).
The status filter tabs visible are All, Unpaid, Partially Paid, Paid, with further tabs (partially obscured, likely Overdue/Cancelled/Adjusted/Pending) reachable by scrolling horizontally. Confirm the full list of tabs matches web's All, Overdue & Arrears, Cancelled, Adjusted, Paid, Partial, Pending.
Multiple Bill Pay shows a per-bill "Partial" button and a chevron "›" action, plus a running "0 selected / GH₵0.00" footer with a Pay Now button. Confirm what the chevron action opens (e.g., a detail/percentage picker) versus the Partial button, and whether a Full option/toggle exists alongside Partial.
Bill statistics cards, bill Download PDF/Send Email actions, and expandable row details (created date, creator, zone type) were not captured in the supplied screenshots. Confirm whether these exist in the app; supply screenshots to extend this module to full parity with ratepayer-portal/bills-management.md.
Bill Details, the payment checkout modal (percentage buttons, custom amount), gateway initiation, and Payment Return/receipt screens were not captured for a single-bill payment flow (only the Multiple Bill Pay and Download Receipts screens were shown). Confirm whether single-bill payment reuses the same checkout UI as Multiple Bill Pay or has a dedicated screen; supply screenshots to extend RPA-BILL-07 to full parity with ratepayer-portal/bills-management.md RPP-BILL-06 to RPP-BILL-12.

RPA-BILL-01 — Bills list display and navigation

Feature overview

My Bill displays the ratepayer's bills in a list with search, summary totals, status tabs, and a chevron action per row.

Preconditions

  • A signed-in ratepayer with at least one bill.
Field Value
Priority Critical
Test action Open My Bill and open a bill from the list.
Expected result Bills render with correct data and the chevron action opens bill details.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Page header 1. Tap the Bills tab. The "My Bill" heading and search bar are shown. PASS
Bill row content 1. Inspect a bill row. Bill number, reference, overdue/due-date indicator, region, property category, outstanding amount (with "out of" total), and status badge are shown. PASS
Open bill via chevron 1. Tap the chevron on a bill row. Bill details open for the correct bill. PASS
Empty state 1. Open Bills with no matching bills. An empty state message is shown. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

RPA-BILL-02 — Bills list status tabs and summary totals

Feature overview

Summary cards show Total and Unpaid (and further totals on scroll), and status tabs filter the list.

Preconditions

  • A signed-in ratepayer with bills in several statuses.
Field Value
Priority High
Test action Switch between status tabs and review the summary totals.
Expected result Each tab loads bills for its status and totals reconcile.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Total summary card 1. Inspect the Total card. It shows the sum of all billed amounts. PASS
Unpaid summary card 1. Inspect the Unpaid card. It shows the sum of unpaid amounts. PASS
Scroll to further totals 1. Scroll the summary row horizontally. Additional total categories (e.g., Partially Paid, Paid) are revealed. PASS
Tab navigation 1. Tap each status tab (All, Unpaid, Partially Paid, Paid, and any further tabs). Each tab displays bills matching the selected status. PASS Confirm full tab set — see observations.
Tab resets search 1. Enter a search term, then switch tabs. Confirm whether search/filters reset on tab switch. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

Feature overview

The search box filters bills by reference, title, or related identifiers.

Preconditions

  • A signed-in ratepayer with bills distinguishable by reference or title.
Field Value
Priority High
Test action Search for a bill by reference/title.
Expected result The list reflects the search term.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Search by reference 1. Enter a bill reference number in "Search by reference, title, …". Only the matching bill is shown. PASS
Filter icon 1. Tap the filter/sliders icon next to the search box. Additional filter options are shown. PASS Confirm what filters are offered (property, date range, etc.).
No results 1. Search for a value with no match. An empty state is shown. PASS
Clear search 1. Clear the search field. The full list is restored. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

RPA-BILL-04 — Multiple Bill Pay — selection and Partial/Full payment

Feature overview

Multiple Bill Pay lists eligible bills with a checkbox, a per-bill amount, and a Partial action; a footer shows the selected count and total.

Preconditions

  • A signed-in ratepayer with at least one payable bill.
Field Value
Priority Critical
Test action Select bills and adjust payment amounts on Multiple Bill Pay.
Expected result Selection, totals, and partial-amount entry work correctly.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Open Multiple Bill Pay 1. From Home, tap Pay Multiple Bills. The Multiple Bill Pay screen opens listing eligible bills. PASS
Select a bill 1. Tap the checkbox on a bill. The footer updates to "1 selected" and the running total. PASS
Deselect a bill 1. Untick a selected bill's checkbox. The footer count and total decrease accordingly. PASS
Partial payment 1. Tap Partial on a bill. A partial-amount entry (percentage or custom) is shown and is capped at the outstanding balance. PASS
Chevron detail 1. Tap the chevron ("›") on a bill row. Additional bill detail/payment options are shown. PASS Confirm exact behaviour.
Paid bill not selectable 1. Attempt to select a fully paid bill. The checkbox is disabled. PASS
Status tabs on this screen 1. Switch between All/Unpaid/Partially Paid/Overdue tabs on Multiple Bill Pay. The bill list filters accordingly. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

RPA-BILL-05 — Multiple Bill Pay — payment submission

Feature overview

The Pay Now button initiates payment for all selected bills at their chosen amounts.

Preconditions

  • At least one bill selected on Multiple Bill Pay with a valid amount.
Field Value
Priority Critical
Test action Submit a multi-bill payment.
Expected result The gateway opens with the correct combined amount and the payment completes/returns correctly.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Pay Now disabled with no selection 1. Inspect Pay Now with 0 bills selected. The button is disabled ("0 selected / GH₵0.00"). PASS
Pay Now enabled with selection 1. Select one or more bills. Pay Now becomes enabled and reflects the correct total. PASS
Initiate payment 1. Tap Pay Now. The payment gateway opens (in-app browser or redirect). PASS
Gateway failure 1. Trigger a gateway/network failure. A clear error is shown and payment is not initiated. PASS
Successful completion 1. Complete payment on the gateway. The user returns to the app with a success confirmation. PASS
Cancelled/interrupted payment 1. Cancel or interrupt the gateway flow. No duplicate charge occurs; status reflects pending/failed appropriately. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

RPA-BILL-06 — Pay for Other Rate Payer — phone verification and explainer

Feature overview

Pay for Others captures the other ratepayer's phone number, verifies it via OTP, and explains the flow via a "How this works" panel.

Preconditions

  • A signed-in ratepayer and the phone number of another ratepayer with payable bills.
Field Value
Priority High
Test action Enter a phone number, review the explainer, and complete OTP verification.
Expected result A verified phone loads the other ratepayer's bills; the explainer content is accurate.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Page header and input 1. Tap Pay for others. "Pay for Others" opens with a phone number field pre-set to Ghana. PASS
How this works panel 1. Inspect the "How this works" panel. 5 numbered steps describe phone entry, OTP verification, bill display, selection/payment, and receipt generation, accurately reflecting the actual flow. PASS Confirm content accuracy against the real flow.
Verify & Search Bill 1. Enter a valid phone number.
2. Tap Verify & Search Bill.
An OTP is requested and an OTP entry step is shown. PASS
Correct OTP 1. Enter the received OTP. Verification succeeds and the other ratepayer's bills load. PASS
Incorrect OTP 1. Enter a wrong OTP. An invalid-OTP error is shown. PASS
No bills found 1. Verify a phone number with no bills. A "No Bills Found" state is shown. PASS
Unknown/invalid phone 1. Enter a number not associated with any account. A clear error is shown and no OTP is requested (or OTP fails gracefully). PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.

RPA-BILL-07 — Bill Details and single-bill payment (pending confirmation)

Feature overview

Tapping a bill from My Bill is expected to open a details screen with a Pay Now action and checkout, equivalent to the web's Bill Details and checkout modal.

Preconditions

  • A signed-in ratepayer with a bill that has an outstanding amount.
Field Value
Priority Critical
Test action Open bill details and pay a single bill, then validate against ratepayer-portal/bills-management.md RPP-BILL-06 to RPP-BILL-12.
Expected result Bill details, checkout, gateway initiation, and the return/receipt screen behave as they do on web, or intentional differences are confirmed.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Bill details content 1. Open bill details. Bill summary, payer/property info, line items, and totals are shown. PASS Pending screenshot confirmation.
Pay Now / checkout 1. Tap Pay Now. A checkout screen shows the outstanding amount with percentage and custom-amount options. PASS
Validation 1. Attempt to pay GH₵0 or an amount above outstanding. The relevant validation error is shown. PASS
Gateway initiation 1. Submit a valid payment. The gateway opens and completes the payment. PASS
Payment return/receipt 1. Return from the gateway after payment. A receipt/confirmation screen is shown with the verified status. PASS
Print/export/share 1. Use Print, Export PDF, and Share actions on the bill or receipt. Each action behaves as expected. PASS See payment-history.md RPA-PAY-06 for the confirmed receipt screen.

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance. Expand this section to full parity with ratepayer-portal/bills-management.md once Bill Details and single-bill checkout screens are captured.

RPA-BILL-08 — Bill status display

Feature overview

Bills carry a status badge (e.g., Partially Paid) and, separately, an overdue indicator when past due.

Preconditions

  • A signed-in ratepayer with bills in multiple statuses, including at least one overdue.
Field Value
Priority High
Test action Review status display across the bills list.
Expected result Statuses match the underlying bill state and are visually distinct.
Execution result PASS
Evidence reference Insert link or reference
Defect reference Insert ID or None

Test scenarios

Scenario Test steps Expected result Pass/Fail Remarks
Status badge 1. Inspect a bill row. A colored badge (e.g., "PARTIALLY PAID") matches the bill's payment state. PASS
Overdue indicator 1. Inspect a bill past its due date. A red "Overdue" label is shown above the due date, in addition to the status badge. PASS
Amount reconciliation 1. Compare the outstanding amount shown with "out of" the total. Figures reconcile with the underlying bill amounts. PASS
Status consistency 1. Compare the list status with bill details (once available). Status is consistent across screens. PASS

Tester notes

Record actual result, test data identifiers, device/OS/build, and any variance.