⚙ changeable = a Settings row, not code — changeable any day, per zone, state, branch or branch ageEvery button described here exists and is clickable in the prototype. Names and figures are real cases from 18 Sep.
The story first — read this before the screens
One desk for the whole company: less to learn, no more Excel, only actions
EHFL runs on a field team that changes often. Every new joiner today inherits a folder of trackers: the DRM stuck-cases sheet, the reply tracker, the morning commitment mail, the evening status mail, WhatsApp threads per case. Learning all of that takes weeks — and we lose people before the weeks are over.
The Branch Desk makes three promises.
1 · The learning curve collapses. Every screen in the company has the same shape: your cases on top, the same three buttons in the same place, plain words instead of codes, buttons big enough for a thumb, English and Hindi. A person who joins on Monday works the desk on Monday — because there is exactly one thing to learn, and it looks the same whether you are an RM in Dindigul or the state ops desk in Pune. When attrition is high, the system, not the veteran sitting nearby, carries the knowledge.
2 · Offline maintenance work ends. Nobody fills an Excel about work anymore — the work itself is the record. When an RM taps a status, that status IS the report: the DRM sees it on the case card the same second, the regional head sees it rolled up, HO sees it in the evening compile. The stuck-cases sheet, the reply tracker, the morning and evening commitment mails — every one of them is generated by the system or made unnecessary by it (section 12 lists each one and what replaces it).
3 · The day is spent on cases, not on reporting about cases. The morning plan takes two minutes, the evening writes itself from LOS/LMS, and everything in between is one of four verbs on a real case: update, date, remind, call.
And it grows. Everything on these screens reads from tables, not code — so adding a module (tranche disbursals, customer tickets, a new language, a new role) is adding rows and one screen, not rebuilding. What you see here is the start of the company's single working surface, not its final size.
Screen 0 · the shape of every screen
Log in → your screen only → the same three buttons → the same day cycle
Who sees it: Everyone. This is the pattern; sections 2–8 are the departments.
Access is by role. Whoever logs in sees only their own desk — an RM his files, a BCM her credit queue, state legal its state — with the numbers of everything they own. Nobody navigates anywhere: the screen IS their job. (In this prototype the tabs across the top stand in for login — each tab is one person's whole world.)
The standard strip — same position on every single screen, every role
Button
What it opens
What it does
📅 Plan my day — before 9:30
One scrollable planning screen for your role
Pick today's work from pools the system lines up. One submit. After you submit it turns green — Today's plan ✓ — view — and is locked: it opens read-only for the rest of the day. At 7 pm ⚙ changeable it flips to Plan tomorrow and a fresh plan opens for the next working day.
✓ Close my day
The forced end-of-day screen
Lists every pending item — planned-but-not-done plus untouched red cases. Each one must get a next-action date and a written comment before the day will close. Those land on each case's diary as “Day close — next action <date>: <comment>”, so tomorrow starts with zero silent files. The button turns green ✓ once closed.
💬 Messages
Your inbox of the internal communication flow
Every chase waiting for YOUR reply and every case where someone tagged you. Open & reply from the list. Email and WhatsApp are only delivery pipes — the conversation lives here, on the case (section 9).
The day cycle, company-wide:
by 9:30 — everyone files their plan→by 10:30 — managers accept or put their own number→10:30 — one branch × function grid freezes and goes to HO→day — actions on cases→7:00 pm — the system reads LOS/LMS and writes said-vs-done; planning reopens for tomorrow
Every time, threshold, list and target on any screen carries the ⚙ mark — it is a Settings row an authorised person edits, never code. Nothing on any screen is static except the header and footer.
The standard strip on an RM phone — Plan · Close · Messages, then the ranked casesThe same strip on a DRM phone — only the labels change (Team plan, branch numbers)
Screen 1 · the RM's day (simple view, phone)
Hello, Sanjay — 7 cases need you before you leave today
Who sees it: Every RM, on their phone, in English or हिंदी (one tap on the language button, and the choice sticks).
The RM opens the desk and reads a sentence, not a dashboard: “Hello Sanjay — 7 cases need you before you leave today”, with a progress bar that fills as he works. Below the standard three buttons, his cases are already ranked — the system puts money closest to disbursal first, then customers who said yes, then anything late. He starts from the top. No menus, no filters, no training.
The morning plan — one screen, five numbered sections, one submit
Section
What the RM sees
The rule behind it
1 · Take your new leads
Each fresh lead as a card with two buttons: Take it / Not mine
He cannot submit until every lead has a decision — no lead sits silent. “Take it” writes Application started on the lead; “Not mine” returns it to the DRM pool. Both are logged events.
2 · Logins today
A − / + counter (norm: 1 ⚙ changeable) and his in-progress files to tick
Ticking files auto-raises the counter. At 7 pm the system counts real LOS logins — nobody types the result.
3 · Money out today
His sanctioned-and-ready cases with amount and committed date
Cases already dated today float to the top. What he picks becomes his ₹ commitment.
4 · Pending papers (ADR)
Every ADR open on his files, oldest first, with the first document named
ADR is in everyone's plan — business, credit, ops, legal, technical each see the ADRs their side owns.
5 · Collections
His overdue accounts, oldest bucket first
Sales collects too. Accounts show bucket and ₹ overdue; masked ids only.
The submit button reads back the whole commitment — “Send to my manager — 2 login · ₹19.4 lakh · 2 ADR · ₹21k collect” — one tap, plan filed, button turns green and locks. His DBM (or DRM where there is no DBM) accepts it or puts his own number by 10:30; the RM sees which happened, openly: “manager set 3 (he said 2)”.
The evening, he taps the green button and sees his own said-vs-done, line by line — logins counted from LOS, payouts from the LMS record, ADRs and collections marked from the system. Nothing is self-declared; in the prototype a “Demo: mark recorded” button stands in for the LMS entry and says so on screen.
Plan my day, section 1 — every new lead needs Take it / Not mine before anything elseSections 2–3 — logins counter with file ticks, then money-out picks with committed datesSections 4–5 — ADRs to solve and collections to make; the submit reads the whole commitment backAfter submit — locked for the day: logins counted from LOS at 7 pm, payouts, ADRs and collections line by lineClose my day — every pending item is forced to take a next-action date + a written commentThe list after a working morning — Done ✓ times, ▸ status lines and thread counts on the card faces
Screen 1b · the case card — and what every button writes
One card, one main action — and everything anyone writes shows on the face of the card
Who sees it: RM, DBM, DRM — this same card and sheet is the whole action system.
Each case is a card: customer name and amount on top, the stage in plain words (“Loan approved — ready to pay out”, never “P1/SUD”), then the truth lines: late or on time, an alert if the system spotted something (“Approval ends in 6 days”), who it is waiting on or what the customer said on WhatsApp, and — this is the part that kills the Excel — a live line showing the last thing anyone wrote on this case: ▸ Customer bringing sale deed Thursday, plus “4 updates · last by Nagesh (BCM) · 11:20 am”. The moment anybody in the company saves anything, the face of the card updates for everybody, RM to HO. One red main button carries the single best next step — the system chooses it (table below). A grey More opens everything else.
Which main button appears — the system decides, the user just taps
If the case is…
The red button says
Why
RM has exited
Move to another RM
An orphan case moves before anything else
Two dates on file (proposed vs official)
Confirm the date
The DRM settles it — conflict is surfaced, never hidden
Sanction validity running out
Renew or cancel
Money already approved is dying
Ready for payout but no real date
Give disbursal date
No in-flight case may live on a placeholder
Customer said yes / asked for a call / silent after sanction
Call customer
The masked line dials; number never shown
Waiting on another team past its time limit
Remind <that team>
One tap chase with auto-escalation
Anything else
Tell us what is happening
A status is the minimum action
The sheet behind the buttons — every tap and what it changes everywhere
Tap
What the user does
What the system writes — and where it appears
Tell us what is happening
Ticks up to 3 plain-word reasons from the stage's own list ⚙ changeable + optional note / voice note (production)
A status event. Instantly: ▸ line on the card face for everyone, thread count +1, “Done ✓ Update saved · 11:42” on the RM's card, red-case-touched counters move on the DRM strip and the regional table.
Give disbursal date
Taps a day chip (Today / Tomorrow / weekday / Another day) — no calendar typing. If a date already exists: must also pick why it is moving⚙ changeable
A date event. DRM's date is official; an RM's is a proposal the DRM confirms (one tap on “Confirm 26 Sep (Sanjay)”). Full history kept and shown — 22 Sep (sheet) → 25 Sep (Ravi, proposed) → 26 Sep (DRM). Moved twice = red on every management view. Differing dates show as a conflict line on the card until settled.
Remind …
Sees exactly who it goes to and who is copied, the message text, then one tap
A chase event → outbox → WhatsApp/email. Late by n days = the chase lands n levels up the ladder automatically, manager copied, unnamed rungs skipped. Card shows “chased 22 Sep”; the receiver's Messages button counts +1; their reply lands back on this same card. Undo for 10 seconds after sending.
Call customer
Two choices: Customer / staff. Masked line connects; then one-tap outcome (Spoke · No pickup · Busy—call back · Wrong number) + optional call-back date
A call event with duration from the telephony webhook (production). Feeds the “called ≤1 day of sanction” standard on the regional table. Customer numbers never appear on any screen.
Comment & tag
Writes a note and taps people to tag — RM, DBM, DRM, BCM, U2, state head, or a whole team
A comment event. Tagged people get a message AND the case appears in their Messages / Chased-me list marked “Tagged”. Five people can comment on one file; every voice shows in the thread with name, role and time.
See all updates
Opens the thread
Every human entry AND every system entry (stage entered, ADR raised by whom, technical/legal results, customer's WhatsApp reply, DRM-sheet commitment) in one timeline — the case diary. Nothing can be deleted; only a 10-second undo by the author.
Tap a card — one red main action, then Date · Call · Remind · Update · Comment · All updatesUpdate — tap up to 3 plain-word reasons; the words come from a Settings list per stageDate — day chips, no calendar typing; moving an existing date demands a reasonRemind — shows exactly who receives it and who is copied before you sendSent — with a 10-second Undo; the receiver's Messages counts +1 the same secondCall — masked line, then a one-tap outcome; the number is never shownComment & tag — five people can talk on one file; tagged people are toldAll updates — every human and system entry on the case, newest first, nothing deletable
Screen 2 · the DBM / DRM desk
Approve the team's plan · run the branch's day · close it with zero silent files
Who sees it: DBM (his spoke), DRM (hub + spokes — the “All branches under this DRM” tick shows the whole cluster). Simple view by default; Full view one tap away.
The DRM's simple view reads like the RM's — same greeting, same three buttons, same cards — because the design rule is one shape everywhere. His differences: the plan button says Team plan — 3/16 in, and a My team line shows RMs with no activity this month in red.
Team plan → branch plan → everyone's plan
Step
Screen
Every control on it
Approve (by 10:30)
RM plans grouped by branch, DBM-first labels where a spoke has a DBM
Per RM: Accept (his number stands) · − / + then Put my number (3) (override — both numbers stay visible: “You set 3, he said 2”) · for an RM who didn't file: Set plan (by manager) with a counter — nobody stays unplanned.
Confirm
One line: Branch plan: 9 logins · ₹86.3 lakh
One tap Confirm branch plan — it rolls up to the regional head that second and feeds the 10:30 HO grid.
Everyone's plan
After confirming, the same button opens the consolidated sheet
Every RM's line (logins · ₹ · ADR · collections · status pill), then Credit (BCM's FIFO decisions + PDs), Operations (closures) and Collections (accounts · ₹) for each of his branches — filed ones green, “not filed” in red. Read-only: each function files its own plan from its own screen; the DRM sees the whole branch here, and in the evening this same sheet shows said vs done.
Full view — the working table (one tap on “Full view”)
Element
What it shows
Micro-detail worth knowing
Before-you-log-out strip
Past-TAT actioned today meter + six tap-to-filter chips
red not touched · in-flight without a real date · customers who said yes · dates moved 2× · chases unanswered · exited-RM cases. Tapping a chip filters the table to exactly those files; tap again to clear.
Seven tabs
Do first · My team · Incoming · Leads inbox · Ongoing · In-flight · Closing
Each tab shows count + red count. Do first is machine-ranked (money nearest payout → yes-customers → late). Lane tabs carry lane-specific columns (valuation/ADR in Incoming; collateral/technical/legal in Ongoing; customer-says/validity in In-flight).
Leads inbox
Tick many leads at once
Bulk bar: Mark application started · Drop with reason (list ⚙ changeable) · Move to RM. Clearing leads takes seconds, not a Sunday.
The table row
Everything the card shows, in columns
Days/TAT cell coloured by RAG · Waiting-on cell shows the person + L2/L3 badge when escalation has climbed · Committed-date cell coloured green/amber/red by moves, with “moved 2×” and “passed” flags and the proposer's name on conflicts · Today column: ✓ Done or red Due. Click any row → the full case drawer with all six tabs, the escalation ladder (skipped rungs visible) and the complete diary.
My team
One row per RM from the LOS sales list
Files held · logged this month · sanctioned · money out; red row = zero activity. Call RM (direct — staff numbers aren't masked) and See cases.
Approve team plan — Accept, put your own number (both numbers stay visible), or set a plan for a non-filerAfter confirming — the whole branch on one sheet: every RM, credit, ops, collections; not-filed in redFull view — the before-you-log-out strip, six tap-to-filter chips and the seven tabsThe case drawer — six action tabs, the escalation ladder with skipped rungs, the full case diaryMy team — one row per RM; red row = no activity this month; Call RM dials directLeads inbox — tick many, then bulk convert / drop with reason / move to another RM
Screen 3 · Credit (BCM · regional U2)
The queue picks the files — first in, first out. You pick how many.
Who sees it: BCM logs in to their branch queue; regional credit (U2) sees the state and accepts BCM plans. Zonal (U3) and central (U4) the same pattern, one level up.
Credit's screen is its live queue: every case waiting on credit in the state, oldest first, value held, chases awaiting reply — with the same three buttons on top. The plan is where the discipline lives:
Credit — plan my day (one screen, four sections)
Section
Control
Rule
1 · U1 decisions — FIFO
A − / + counter; the oldest k files come pre-selected and cannot be unticked
First in, first out by construction: you can ADD a later file on top, you can never skip the head of the queue. Floor: 1 decision/day ⚙ changeable. Below the list: other branches in the state, oldest first — a BCM covering two branches, or U2 balancing load, picks those up in the same screen. When one branch's plan is filed, reopening the button moves to the next unfiled branch.
2 · PDs — exact cases
Every eligible file with two buttons: Video PD / Physical PD
Not a count — the specific case, and how. Floor 1 PD/day ⚙ changeable; the submit button stays grey until one is picked.
3 · Property visits
Tick the cases to visit
Credit managers do site visits too — planned like everything else.
4 · Credit ADRs
ADRs raised by credit, oldest first
Pick the ones to close today.
The submit reads: “Send to regional credit (U2) + DRM Shrishail — 3 decisions · 1 PD · 1 visit · 2 ADR” — the plan goes to the department manager (U2) for acceptance and to the DRM, the administrative manager, who sees it inside his branch plan. In the evening the same screen shows each decision, PD (with its mode), visit and ADR as done or pending — from LOS records. Chases from branches land in credit's Messages; replies (“Cleared”, “Need something from branch”, “Will clear by date”) go back onto the case card the branch is watching.
Credit's own screen — its queue, value held, chases waiting, and the same three buttonsU1 first-in-first-out — the oldest files come pre-selected and cannot be unticked; add later ones on topPDs — pick the exact case, then Video PD or Physical PD; floor 1 a dayProperty visits and credit ADRs — then one submit to U2 + the DRMCredit's evening — each decision, PD (with mode), visit and ADR done or pending
Screen 4 · Operations
Five real pools, tick today's closures, one submit
Who sees it: Branch ops per branch; state ops accepts and runs the same pattern at state level; HO ops payment authorisation shows as its own queue.
Operations logs into its queue — dockets to print and send, OTC/OPS closures, payment authorisations pending — and plans from five pools on one screen: Send file / docket (real, from the loan system) · OTC / OPS closures (real) · Handover · CERSAI · PDD (the post-disbursal ledger — stand-in rows in the prototype, clearly labelled, real shape) · Ops ADRs. Tick, submit — “Send to state ops — 4 closures today”. Evening: each item done/pending; Close my day forces a next-action date + comment on whatever is left, exactly like everyone else.
Operations — five pools on one screen: docket, OTC/OPS, handover · CERSAI · PDD, ops ADRs
Screen 5 · Collections
A new seat at the desk — the CM plans collections like sales plans logins
Who sees it: Collection managers (named from HRMS by employee code). RMs also carry a collections section in their own plan — the field collects together.
The CM's screen lists overdue accounts oldest-bucket-first, colour-striped: green 1–30, amber 31–60, red 61–90 and beyond, write-off flagged. Masked account ids only — no customer names or numbers, calls on the masked line. Plan my day pre-ticks the oldest accounts; the CM adjusts and submits number + ₹. Evening shows collected vs committed from the LMS feed (demo buttons stand in and say so). The data shape is exactly the joined loan store (od_live, emi_live, bounce_months, wo), so production wiring is a feed, not a redesign.
The CM's screen — overdue accounts oldest-bucket-first, colour-striped, masked ids onlyCM plan — oldest accounts pre-ticked; submit carries number + ₹
Screen 6 · Legal & Technical
Same desk, their queue: cases to clear + their ADRs
Who sees it: Cluster/state legal; branch→zonal technical. Each is its own login and screen.
Legal and Technical each get the full pattern: their state queue (title/valuation cases oldest first, branch and stage on every line), chases from branches in Messages with one-tap replies, and a two-section plan — cases I will clear today + ADRs raised by us — submitted to the state legal manager / zonal technical, with the DRMs informed. Their replies and clearances appear on the branch's case cards the same second, which is the whole point: the branch stops calling to ask.
Legal — cases to clear today plus legal-raised ADRs; Technical is the same screen for its queue
Screen 7 · Messages — the company's internal case-talk, on the record
Chase → deliver → reply → escalate → tag: one flow, visible to everyone on the case
Who sees it: Every role — the third button of the standard strip.
Today a chase is a WhatsApp that dies in a personal chat. On the desk, the message and the case are one thing:
Step
What happens
Where it shows
A branch chases
One tap on Remind — the system picks the right person at the right level (late by 2 days = level 2), copies the manager, skips unnamed rungs
Outbox → WhatsApp Business API / email — pipes only ⚙ changeable
If WhatsApp is not yet approved (Meta), email + in-app carry it; nothing waits
The reply
Receiver taps Open & reply: Cleared · Need something from branch · Will clear by <date> · Not ours
On the case card and thread, for everyone; “chases awaiting reply” counters fall
No reply
Next day the chase climbs one level ⚙ changeable on its own — nobody has to remember to follow up
The L2/L3 badge on the case; the escalation ladder in the drawer shows exactly who has been copied
A tag
Anyone comments and tags anyone — person or team
Tagged person's Messages and their queue show the case marked “Tagged”; their reply joins the same thread
Every arrow above is an event on the case diary — timestamped, named, undeletable. The escalation and reply machinery runs in the backend; what people see is just this one Messages list and the lines on the card.
Messages — chases waiting for your reply and cases where you were tagged; open & reply in one tap
Screen 8 · Regional & above
Four tabs: Standards · Morning plans 10:30 · Evening result 7 pm · Leaderboard
Who sees it: Regional heads (their cluster), state heads, zonal heads, business head, MD — each lands on their own span, read-only where it should be.
This is the management floor of the same building — every number on it is the sum of taps you saw in sections 2–7, minutes old, and every drill-down ends on a real case card with a real thread.
Tab
What it is
How to read it
Standards
Zone → state → DRM cluster → branch, business columns against the MD's standards
Files · past-TAT (count and %) · red actioned today · offer accepted ≤3 days · called ≤1 day of sanction · sanctioned within 10 days · RMs with no activity · say–do · owner missing. Cell colour IS the verdict: green ≥80% of files within the day limit, amber past the halfway glide mark, red below ⚙ changeable. Tap a state to open its clusters; a ↳ row is one DRM's hub+spokes; tap a branch and you are ON that branch's desk.
Morning plans · 10:30
The frozen branch × function grid that goes to HO
Business (logins · ₹ · ADR, confirmed ✓ or not) · Credit (decisions FIFO · PDs · ADR) · Operations (closures) · Collections (accounts · ₹) per branch, state desks (legal/technical) on a strip above. A red — is a desk that filed nothing: absence is visible, not silent. Nobody compiles this; the 10:30 job freezes it.
Evening result · 7 pm
Said vs done per branch, generated
Committed items · recorded done · score %, green ≥80 ⚙ changeable. Only LOS/LMS records count — the field cannot type its evening.
Leaderboard
One score per person per day, pan-India
Score = done ÷ open items (leads → files → ADR → post-disbursal papers → collections → tickets), capped 100, minimum 5 open items to rank ⚙ changeable. A heavy desk is never punished; a quiet one is never hidden. Boards per role, streak badges for green days. Scores live ONLY here — field phones see their work, never a number.
Standards — zone → state → cluster → branch against the MD's standards; cell colour is the verdictMorning plans 10:30 — the frozen branch × function grid; a red dash is a desk that filed nothingEvening result — said vs done per branch, compiled from LOS/LMS, never reportedLeaderboard — done ÷ open items, per role, pan-India; visible only at this level
Screen 9 · Settings — why nothing here is ever “in the next release”
Every ⚙ you saw is a table row an authorised person edits
Who sees it: MD office / CBO office with maker–checker; auditable.
Deadlines (9:30 / 10:30 / 7:00), every TAT, the escalation speed, the FIFO floor, the PD floor, status word-lists, drop reasons, targets by branch age (0–6 / 6–12 / 12+ months, effective-dated), score weights, leaderboard thresholds, languages. Change a value → every screen in the country shows it within a minute. That is what “dynamic business” means here: the desk bends to the business, the code never has to.
Screen 10 · What retires — and when
Each offline artefact, its replacement, its retirement trigger
Today's offline work
Replaced by
Retires
DRM stuck-cases Excel + mail
Do first tab + case cards with live status
After 2 clean parallel days
Reply tracker sheet
Messages + chases-awaiting-reply counters
Same
Morning commitment mail (VC call)
Plan my day → approve → 10:30 grid
Same
Evening status mail
7 pm compile — generated, not written
Same
Per-case WhatsApp threads
Case thread + tags (WhatsApp remains the delivery pipe)