The Client
ClinicKare is a fast-growing multi-specialty outpatient clinic chain operating across 8 branches in Gujarat, India. With departments ranging from General Medicine and Paediatrics to Dermatology and Orthopaedics, their clinical operations serve over 12,000 registered patients with 1,200+ consultations scheduled every single day.
Despite strong clinical talent and rapid growth, their operational backbone was alarmingly fragile - relying entirely on spreadsheets, handwritten ledgers, and an unmanaged group of WhatsApp threads to coordinate appointments, billing, and patient records.
The Challenge
When ClinicKare approached DivyamStack, they described a crisis that was quietly costing them patients, revenue, and staff morale.
Operational Chaos at Scale
Receptionists at each branch maintained their own appointment registers independently, with no cross-branch visibility. A patient booked through the Ahmedabad branch could walk into the Surat branch without any record of their history. A doctor arriving at 10 AM had no idea how many patients were in queue, how many had cancelled, or if the pharmacy had dispensed the right medication.
The No-Show Problem
With no automated reminders - only the occasional, manually-sent WhatsApp message - appointment no-show rates hovered at 30%. Empty slots meant idle doctors, wasted overhead, and real revenue loss, with no mechanism to intelligently fill cancellations.
Billing & Revenue Leakage
Invoices were typed into Excel and printed. Consultation fees, procedure charges, and pharmacy items were often added manually and inconsistently. Partial payments were tracked loosely. Monthly revenue reconciliation took three full working days for the accounts team and still produced discrepancies.
Zero Analytical Visibility
The clinic’s owners and medical directors had no real-time data. They could not answer basic questions: Which branch is underperforming? Which speciality has the longest wait time? What is the average revenue per consultation this week? Decision-making was entirely gut-driven.
The DivyamStack Solution
We spent two weeks embedded with the ClinicKare team before writing a single line of code. We shadowed receptionists, interviewed doctors, watched billing workflows, and documented every pain point. The result was a precise product specification - and a shared confidence that we were solving the right problems.
Architecture: Multi-Tenant, Cloud-Native SaaS
We built ClinicKare as a multi-tenant SaaS platform on AWS, where each clinic branch operates as an isolated tenant with its own data namespace, while a central admin layer provides cross-branch visibility. The stack:
- Frontend: Blazor WebAssembly (.NET 10) with a role-based UI - Receptionist, Doctor, Pharmacist, and Admin portals are all distinct, rich interactive experiences served from a single compiled .NET application running natively in the browser.
- Backend: ASP.NET Core 10 Minimal API with a clean RESTful layer. All business logic - scheduling rules, billing calculations, prescription validation, and AI inference calls - lives in strongly-typed C# service classes.
- Database: Microsoft SQL Server on AWS RDS, with a carefully designed multi-tenant schema using schema-per-tenant isolation. Row-level security and Always Encrypted protect sensitive patient data at rest.
- AI Engine: Azure OpenAI Service (GPT-4o) integrated via the .NET Semantic Kernel SDK for AI-assisted triage, clinical note summarisation, and smart scheduling recommendations.
- Infrastructure: Containerised with Docker and deployed to AWS ECS (Fargate), with RDS SQL Server for the database and S3 for document and prescription PDF storage. Auto-scaling handles peak morning booking surges without manual intervention.
Feature 1: Intelligent Appointment Scheduling
The scheduling engine was the centrepiece of the platform. We built a calendar system that is simultaneously simple for receptionists and powerful under the hood.
Key decisions:
- Doctor-level slot configuration: Each doctor sets their consultation duration, break windows, and daily patient caps. The scheduler enforces these rules automatically.
- Token queue management: Walk-in patients receive a digital token. A live queue display in the waiting area (a simple tablet on a wall mount) shows the current token being served, eliminating the need for staff to constantly announce names.
- Intelligent gap filling: When a patient cancels within 2 hours of their appointment, the system automatically triggers an SMS to the next patient on the waitlist, offering them the earlier slot. This single feature was responsible for nearly halving the effective no-show rate.
- AI-powered slot recommendations: The .NET 10 AI engine analyses historical attendance patterns using ML.NET to recommend optimal appointment times for each patient, increasing the likelihood of attendance based on day-of-week, time-of-day, and doctor preference data.
Feature 2: Automated Patient Communication via Twilio
We integrated Twilio for SMS and WhatsApp notifications, building a communication rules engine that handles the full patient journey automatically:
| Trigger | Message Type | Content |
|---|---|---|
| Booking confirmed | SMS + WhatsApp | Appointment date, time, doctor, branch address |
| 24 hours before appointment | Reminder with rescheduling link | |
| 2 hours before appointment | SMS | Final reminder with token estimate |
| Appointment completed | SMS | Feedback request with 1–5 star rating |
| Prescription ready | PDF of digital prescription | |
| Follow-up due | Automated re-booking prompt |
This eliminated 100% of manual reminder calls by receptionists, saving an estimated 3 hours of staff time per branch per day.
Feature 3: Digital Prescriptions & Medical Records
Doctors were given a clean, fast prescriptions interface built in Blazor - designed specifically to work on a tablet during a consultation with zero page-reload latency. The interface features:
- Drug autocomplete: Searches against a curated database of 18,000+ drugs with dosage and frequency suggestions, powered by a SQL Server full-text search index for sub-100ms results.
- Allergy alerts: If a prescribed drug conflicts with a recorded patient allergy, the ASP.NET Core 10 validation service flags it before the prescription is saved - no client-side workaround needed.
- AI clinical note assistant: Doctors can dictate or type brief consultation notes; the AI engine (GPT-4o via Semantic Kernel) summarises these into a structured SOAP note format automatically, saving 4–5 minutes per consultation.
- Prescription PDF generation: On save, the system generates a professionally formatted PDF using a .NET 10 reporting pipeline, stamps it with the clinic’s branding and the doctor’s digital signature, and dispatches it to the patient via WhatsApp - all within seconds.
All prescriptions, lab results, and AI-generated clinical summaries are linked to a unified Patient Health Record stored in SQL Server, accessible to any authorised doctor across any branch.
Feature 4: Billing & Payment Management
We built a billing module that eliminated manual invoicing entirely:
- Consultation fees, procedure charges, and pharmacy items are added via a point-of-sale style interface.
- The system generates GST-compliant invoices automatically, with instant PDF export.
- Partial payment tracking, balance dues, and receipt generation are all first-class features.
- All financial data flows into the analytics dashboard in real time.
Feature 5: Real-Time Analytics Dashboard
The executive dashboard was built for the clinic owners and medical directors. At a glance, they can see:
- Live appointment status across all 8 branches (confirmed, in-queue, completed, no-show)
- Daily, weekly, and monthly revenue broken down by branch, speciality, and doctor
- No-show rate trends and waitlist conversion rates
- Average wait time per doctor, helping manage patient experience
- Top-performing branches and underperforming specialities, enabling data-driven staffing decisions
The dashboard renders in real time using Blazor SignalR, ensuring the data is never stale. An embedded AI insights panel surfaces anomalies automatically - such as a sudden spike in no-shows at a specific branch - and suggests corrective actions without requiring the director to manually query reports.
The Impact
ClinicKare went live on all 8 branches simultaneously after a phased internal testing period of 6 weeks. The results were measurable within the first month.
Quantitative Results
| Metric | Before ClinicKare | After ClinicKare |
|---|---|---|
| Appointment No-Show Rate | 30% | 8% |
| Billing Errors per Month | ~120 incidents | 0 |
| Revenue Reconciliation Time | 3 full days | < 2 hours |
| Staff Time on Manual Reminders | 3 hrs/branch/day | 0 |
| Avg. Revenue per Clinic (monthly) | Baseline | +22% |
| Prescription Dispatch Time | Same-day paper | < 30 seconds (digital) |
Qualitative Outcomes
- Doctors reported higher satisfaction - entering a consultation with a full patient history on screen, no paper files needed.
- Receptionists reduced cognitive load - the system enforces rules, so staff no longer need to juggle complex schedules in their heads.
- Patients responded positively - feedback ratings collected via automated SMS averaged 4.6 / 5 within the first month. The WhatsApp prescription delivery became one of the most-cited features in reviews.
- Owners gained real control - for the first time, the managing director could review clinic-level performance from their phone at 9 PM.
The Process
We followed DivyamStack’s structured delivery model throughout:
- Discovery (2 weeks): On-site shadowing, stakeholder interviews, workflow mapping.
- Design Sprint (1 week): Wireframes, user flows, and a clickable prototype validated with actual receptionists and doctors.
- Development (14 weeks): Agile sprints with a dedicated team of 5 (1 tech lead, 2 backend engineers, 1 frontend engineer, 1 QA).
- Beta & UAT (4 weeks): Deployed to one pilot branch. Real staff used the system with live patients. Collected 80+ pieces of structured feedback.
- Phased Rollout (2 weeks): All 8 branches onboarded with parallel operations during the transition. Zero forced cutover.
- Post-Launch Support (Ongoing): Dedicated support channel, monthly feature releases, and a roadmap being planned for AI-assisted triage and insurance claim automation.
Technologies Used
- Frontend: Blazor WebAssembly (.NET 10), MudBlazor UI library, Blazor SignalR (real-time)
- Backend: ASP.NET Core 10 Minimal API, C# 14, Entity Framework Core 10
- Database: Microsoft SQL Server (AWS RDS), Full-Text Search, Always Encrypted, temporal tables for audit history
- AI & ML: Azure OpenAI Service (GPT-4o), .NET Semantic Kernel SDK, ML.NET (attendance prediction model)
- Communications: Twilio (SMS + WhatsApp Business API)
- Infrastructure: AWS ECS (Fargate), AWS RDS (SQL Server), S3, CloudFront, CloudWatch, SES
- DevOps: Docker, GitHub Actions CI/CD, Terraform for infrastructure-as-code
- Security: ASP.NET Core Identity with RBAC, JWT Bearer tokens, end-to-end HTTPS, SQL Server Always Encrypted, HIPAA-aligned data handling practices