FealDeal
Sanjeevan Health Network
A FHIR-native booking and teleconsult platform linked to ABDM, with consent enforced at the repository layer and a video call engineered to degrade to audio rather than drop.
0%
No-show rate, down from 22%
0/mo
Teleconsults per month on a line previously written off
0%
Of visits now produce an ABHA-linked clinical record
0s
P95 time from tapping join to the doctor being audible
01
Sanjeevan Health Network runs six multi-speciality clinics across Delhi NCR and had just started offering teleconsultation. Booking was a phone number. Doctor availability lived in a paper diary at each front desk. Prescriptions were handwritten and photographed.
A meaningful share of their teleconsult patients connect from outside the metro on a 3G-grade link. Their first vendor had built the video call to demand 720p or fail. On a weak connection it failed. Patients who could not get a doctor on video simply stopped booking, and the teleconsult line was declared "not working in India". It worked fine — in an office, on fibre.
The bar we set with the clinical team was blunt: a degraded consult must always beat a dropped consult. A doctor who can hear a patient can still practise medicine.
02
The clinical record is stored as FHIR R4 resources natively. We considered a bespoke relational schema with a FHIR exporter bolted on, and rejected it. ABDM's HIP and HIU contracts are FHIR bundles. If your internal model is something else, you own a lossy, permanently-drifting translation layer forever, and every network spec revision becomes a migration. Modelling in FHIR from day one meant responding to a record request was serialisation, not transformation.
Every read of a clinical record passes through a repository that requires a valid, unexpired consent artefact for that purpose and that requester. There is no code path to the clinical store that bypasses it — not because we asked developers to remember, but because there is no method that takes a patient ID without also taking a consent context. Controller-level permission checks fail eventually; someone adds an endpoint in a hurry and forgets one. Make the unsafe thing unwritable and it stops happening.
Access is written to an append-only, hash-chained audit log. If a row were altered or removed, the chain breaks and the nightly verifier says so.
Building and operating a selective forwarding unit is a full product in its own right, and a bad one is worse than no video at all. We used a managed WebRTC provider and spent our engineering budget on the thing that actually differentiated: graceful degradation. The client measures available bitrate continuously. Below ~150 kbps it drops video and holds audio, tells both parties plainly what happened, and keeps the consult alive. Doctors get a one-tap "switch to audio" control they use often and without ceremony.
Availability is materialised into concrete slot rows rather than computed from rules at request time. Booking takes an optimistic lock; concurrent attempts on the same slot fail loudly and immediately rather than both appearing to succeed. A short-lived Redis hold covers the gap between "patient selected a slot" and "patient completed payment", so a slot is never lost to an abandoned booking flow.
A two-stage reminder — WhatsApp Business API at T-24h and T-2h, with SMS fallback when the WhatsApp message is undelivered — plus a one-tap reschedule link in the reminder itself. Most no-shows were never people refusing to come; they were people who could not come and had no frictionless way to say so. Give them a button and they will use it, and the slot goes back into inventory while it can still be resold.
03
Rolled out clinic by clinic over ten weeks, front desks running the new system alongside the paper diary for the first fortnight at each site. The diaries were not taken away; they were simply stopped being opened.
Every clinical read in the system's history has an audit row, and every audit row is chained to the one before it. Zero unconsented reads is not a policy statement here — it is a property of the code, and the nightly verifier would tell us if that stopped being true.
Double-bookings have not recurred. Not "have reduced". The slot lock makes them structurally impossible, and the front-desk staff, who had lived with them weekly for years, noticed that before they noticed anything else we built.
Under the hood
Technology
Services used
Our previous build insisted on HD video and then failed on a weak line. PRS asked our doctors one question — can you practise on audio alone? — and rebuilt the whole call around the answer.