Skip to content

Disputes

Overview

The Disputes module lets rate pavers file disputes against bills, properties, or payments, track dispute status through to resolution, and communicate with agents/admins via a conversation thread.

Navigate to: Sidebar → Disputes or /disputes


Dispute List

Dispute List

Element Description
Search bar Search by dispute ID, title, or category
Filter tabs All, and category-specific tabs (e.g. Properties, Billing, Payments)
+ Add Dispute button Opens the Create Dispute form
Empty state Gavel icon, "No disputes found," with a prompt to create a dispute

Dispute Card

Field Description
Dispute ID e.g. #DSP-2026-100000002
Status badge Pending, In Review, Resolved, Closed
Title e.g. "Incorrect Bill Amount"
Category e.g. "Billing Dispute"
Filed by Ratepayer name
Related Type e.g. "Payment", "Property", "Bill"
Date filed Timestamp of dispute creation

Tapping a dispute card opens Dispute Details.

!!! tip "Things to check" - Filter tabs correctly narrow the list to disputes of that category - Empty state only shows when there are genuinely zero disputes matching the current filter - Tapping a dispute card opens the correct dispute details - Status badge colors are consistent (Pending = yellow, In Review = blue, Resolved = green) - List is sorted by most recent dispute first


Create Dispute

Navigate to: /disputes/create

Create Dispute

Field Required Notes
Dispute Category Yes Dropdown (e.g. Billing, Property, Payment)
Dispute Title Yes Free text
Related Types Yes Dropdown, e.g. Others, Bill, Property
Priority Yes Dropdown, defaults to Medium
Description of Issue Yes Free text, detailed explanation of the dispute
Upload Supporting Documents No Attach via Gallery, Camera, or File — max 5 items
Preferred Contact Method No Dropdown (e.g. Email, Phone)
Contact detail No Shown when Preferred Contact Method is selected — email field or phone field

Submit Dispute / Cancel at the bottom.

Document Upload

Element Description
Gallery Select images from device gallery
Camera Capture a new photo
File Attach a document file
Max items 5 supporting documents
Remove Each attached file has a remove button

!!! tip "Things to check" - Dispute Category and Related Types options make sense together (e.g. Billing category restricts Related Types to billing-relevant options) - Attaching more than 5 files is blocked with a clear message - Preferred Contact Method correctly swaps the input below it depending on the method chosen - Leaving all required fields blank and tapping Submit shows validation errors - After submission, the new dispute appears immediately in the Dispute List with status Pending - Cancel discards all entered data and returns to the dispute list


Dispute Details

Dispute Details

Field Description
Dispute ID Unique identifier
Title Dispute title
Category Dispute category
Status Current status (Pending, In Review, Resolved, Closed)
Priority Low, Medium, High
Request From e.g. RatePayer
Related Type Type of entity the dispute is related to
Dispute At Timestamp when the dispute was filed
Reason The description entered when filing
Attachments (N) Files attached — shows "No attachments found" when none, with a refresh icon
Replies & Updates Thread of responses — shows "No replies yet" until an agent/admin responds

Conversation Thread

The Replies & Updates section displays a chronological conversation thread between the rate payer and agents/admins.

Element Description
Message bubble Each message shows the sender, timestamp, and content
Reply input Text input at the bottom for adding a follow-up message
Send button Posts the reply to the thread

!!! tip "Things to check" - Status updates (e.g. PendingIn ReviewResolved) reflect promptly once an agent/admin acts on the dispute - Sending a reply actually posts to Replies & Updates and is visible without leaving and re-opening the screen - Attachments uploaded at filing time show up correctly, with working preview/download - Reply input clears after successful submission - Thread maintains correct chronological order - Long threads scroll correctly without layout issues - New messages from agents/admins appear in real time or after a refresh


!!! tip "Things to check" - Dispute lifecycle (create → review → resolve/close) works end to end - All dispute data persists correctly across sessions - Dispute list updates in real time when a new dispute is created or status changes - Conversation thread handles long messages and multiple replies without UI issues