Finance → Collections → Worklist → /collections/worklist Beta
The worklist is the officer's day. It is one ranked grid of open cases with quick-view chips over it; the case workspace is where each one is actually worked.
The worklist grid
| Column | Meaning |
|---|---|
| Lease | The indebted lease. Opens the case. |
| Property | Branch / property the lease belongs to. |
| Unit | The unit under the lease. |
| Band | Collectability band, A (most collectable) to E. |
| Score | Collectability score 0–100. |
| Net Balance | Gross due less unallocated wallet money — the figure triggers use. |
| Gross Due | Contractual debt before wallet is netted. |
| Wallet | Cash received but not yet allocated to an invoice. |
| Days Past Due | Age of the oldest overdue item. |
| Status | Case status: open, on hold, closed. |
| Treatment | Active, promise, dispute, hardship, or legal flagged. |
| Contact | Not contacted, contacted, unreachable, or right party. |
| Assigned To | The officer who owns the case. |
| Pending Action | The ladder step currently staged and waiting on a human. |
| Next Follow-up | When the officer said they would come back to it. |
| Priority | Ranking value — net balance weighted by how unlikely collection is. |
| Opened | When the case entered collections. |
Quick views
Chips above the grid apply named filters. They are combinable, clearable, and written into the URL, so a filtered queue can be bookmarked or shared.
| Chip | Shows |
|---|---|
| Follow-ups due | Cases whose follow-up date falls today or earlier, measured against the Nairobi calendar day. |
| Pending actions | Cases with a staged ladder action waiting for confirmation. |
| On hold | Cases paused by an officer, with a reason. |
Other operational queues are filters over the same grid rather than separate screens: my cases, new, broken promises, not yet contacted, unreachable, high value, pending approval, and recently paid (clearing).
The case workspace
/collections/cases/{uuid}
The case header leads on net balance, with gross due, wallet credit, oldest due date and days past due, and the next follow-up beside it. Above that sit the unit, the case status, treatment and contact state, the band with a plain-language explanation of the score, the property and lease, and the assignee.
Two actions are on the header — Record promise and Log interaction — and the rest (assign, hold or resume, override score, close case) are under More.
Tabs
| Tab | Contents |
|---|---|
| Overview | What is waiting on you — the staged ladder step with its rendered preview and Send / Skip — plus promises to pay and the case facts. |
| Debt | The debt split by service type: original amount, outstanding, oldest due date, days past due. Read-only — it is a projection of the ledger. |
| Activity | Everything that has happened, under three views: All, Interactions, and Actions. See below. |
| Documents | Demand letters and handover packs, with issue, delivery and acknowledgement state. |
| Legal | Register matters linked to this case — court cases, evictions, demand follow-ups. |
Actions vs interactions
The two words look interchangeable and are not. Everything on the case is one or the other, and the Activity tab splits on exactly that line:
| Action | Interaction | |
|---|---|---|
| Who creates it | The collections engine, from the strategy ladder | A person, by hand |
| What it is | An outbound step it intends to take — SMS reminder, email reminder, demand letter, penalty, IoT disconnect, handover flag, field-visit task | A record of contact that happened — call, SMS, WhatsApp, email, letter, visit, meeting, note |
| What you do with it | Send it or skip it (with a reason). You never author one | You author it. Nothing else can |
| What it carries | A rendered preview and a delivery status: staged, awaiting approval, sent, skipped, failed | An outcome: promises, disputes, unable to pay, no answer, wrong number, and so on |
| What it feeds | The ladder's own progress | The score, the contact state, and which step the ladder picks next |
The same channel can appear on both sides, which is where the confusion starts: an SMS the engine sent is an action; a call you made about that SMS is an interaction. The rule of thumb is authorship — if a person typed it, it is an interaction.
The Actions view lists the ladder in step order, so you can see how far down it this case has travelled. The Interactions view and the merged All view are newest-first.
Actions on a case
| Action | What happens |
|---|---|
| Send it | Executes the staged ladder step — sends the message, issues the letter, applies the fee. Shows a rendered preview before the click. |
| Skip | Skips the staged step with a mandatory reason, recorded on the timeline. |
| Assign | Hands the case to an officer. Assignment history is kept, not overwritten. |
| Hold / Resume | Pauses the ladder with a reason (for example, a payment arrangement being negotiated) and restarts it. |
| Override score | Manually sets priority with a reason. Recorded and audited; the next engine refresh proposes but never silently reverts an override. |
| Log interaction | Records a contact attempt — see below. |
| Open legal matter | Hands the case to the legal register. |
| Close case | Closes with a reason: resolved, written off, handed over, or cancelled. Write-off closure routes for approval. |
Logging an interaction
Every contact attempt is recorded so any officer can pick the case up cold.
- Channel — call, SMS, WhatsApp, email, letter, visit, meeting, or note.
- Direction — inbound or outbound.
- Contact person and the number or address actually used.
- Right party — whether you actually reached the person responsible.
- Outcome — no answer, unreachable, wrong number, delivered, read, contacted, disputes, requests statement, promises, unable to pay, requests restructure, paid, third party, or follow up.
- Follow-up date, notes, and attachments.
Outcomes drive the workflow, they are not just a log:
- promises deep-links into recording a Promise to Pay and pauses the ladder;
- disputes flips the treatment state and takes the disputed amount out of ladder triggers;
- follow up puts the case in your follow-ups due queue on that date.
Case lifecycle
open → active ⇄ on hold → clearing → closed (resolved | written off | handed over | cancelled)
- An active promise pauses ladder steps that are marked to pause on promise.
- A broken promise resumes the ladder, raises severity and stages a follow-up task.
- A payment that drops net balance below the exit threshold moves the case to clearing; it closes after a confirmation window, with hysteresis so a case does not flap open and closed on small movements.
- Reopening creates a new case linked to the previous one, rather than resurrecting the old one — so per-cycle metrics stay honest.
Approvals and audit
High-impact actions route to the approvals inbox rather than firing directly: issuing a demand letter, handover, fee waiver, hardship restructure, and closing a case with a write-off. Approval or rejection lands on the case timeline with the decider and their reason.
Every console mutation is audited. Hold, skip and score override require a reason before they will save.
Working a case: recommended sequence
Read the debt breakdown first
Know whether you are chasing rent, utilities, or a penalty — the conversation differs, and so does what the tenant will accept.
Check the wallet figure
If there is unallocated cash, the fix may be an allocation, not a collection call.
Check Related
A tenant with three leases should get one conversation, not three.
Contact, then log the interaction immediately
The outcome you pick is what schedules your next step.
Record any commitment as a promise
A promise in the notes field is invisible to the engine; a recorded promise pauses the ladder and is evaluated automatically.
Confirm or skip the staged action
Leave nothing staged and unattended — a stale staged action is the most common reason a case stalls.