Context
A clinic serving patients the system often couldn't find.
Medstation, in Florida, serves mostly Latin American immigrants, many of them Brazilian or Spanish-speaking, some undocumented or carrying non-US ID. That shapes everything about data, privacy and trust.
A front desk of three handled phone, email and WhatsApp at once, across three separate platforms: a CRM, a scheduling tool and a medical records system. None of them talked to each other.
The brief
The brief arrived with the solution already in it.
Our WhatsApp is out of control. Patients message us at 2am and expect an instant response. By morning, we have 40 unread messages. We can't keep up.
Medstation, the brief
The plan was a chatbot that answered first contact and queued patients for the morning. It rested on one assumption: that volume was the problem. Nobody had looked at what happened to a patient's information after that first message. Before building on that assumption, I asked for a research phase. Medstation agreed to eight weeks.
Research
They weren't drowning in messages. They were drowning in a broken system.
I spent two weeks with the front desk: individual interviews, daily responsibilities, workflows. There was no routine. Every day was reactive, juggling WhatsApp, calls, email and walk-ins across three platforms for every single patient.
Records were unreliable too. A typo in a name returned no results, so staff created a new record. Some patients had two, three, even four profiles, each with part of their history. I mapped every handoff and breakdown in BPMN. A chatbot wouldn't touch any of it. It would only add a fourth channel.

Patient research
Eight interviews. One unanimous finding.
Eight patients across ages, backgrounds and time in the US. Wait time was the main pain, but WhatsApp wasn't the cause. Every contact meant giving full personal details again, the front desk often failing to find them, and care going ahead without their history. Patients felt invisible.
I've been coming here for two years. Every time I call, I have to spell my name three times.
Patient interview
One nuance shaped every decision after: many patients were afraid. Several were wary of giving data to any digital system, fearing it could reach government authorities. Trust had to be earned, not assumed.
The real problem
The real opportunity was giving patients control of their own data.
Crossing staff and patient findings pointed to the true bottleneck: patient intake. Manual lookups in an unreliable database, three disconnected systems and a process that depended on error-free typing. A chatbot would have automated the first touchpoint and made everything behind it worse.
In a workshop, I took the team through the findings and an effort and impact matrix across business impact, operational impact, scalability and technical complexity. The result was unanimous: priority one was patient self-management.

A benchmark of US, Brazilian and global health products confirmed it. Every successful player let patients handle their own registration, scheduling and records.
Solution
Seven design decisions that defined the product.
01Identity without government ID
How do you identify a patient who may not have standard ID? We used email, password, name and date of birth as a composite key. Anyone with a smartphone has them, they aren't tied to immigration status, and they're consistent enough to stop duplicate records. The privacy policy came first, in plain language, in the patient's chosen language.
02Language as a first-class feature
Language selection is the first screen, not a buried setting. The whole app follows that choice from the first launch.

Onboarding built for patients without government-issued ID: language selection, privacy terms and registration. Screen recording, no sound. 03Dependent accounts
I don't use medical booking apps. I have three kids. On another clinic's app I had to create four different accounts, one for me and one for each child, and I could never remember all the passwords. It was easier to just call and book over the phone.
Patient interview, mother of threeMany patients managed care for children, parents or a partner. One account holder can now book, track records and manage prescriptions for every dependent, without each person needing a phone or an email address.

Account structure with an account holder and linked dependents Family account flow sketch 04The appointment flow
I don't know the doctors. I call, say what I need, and the receptionist just gives me the closest date and time. Later I get the doctor's name on WhatsApp. It would be good to know my options. I don't like seeing a male gynecologist, I feel more comfortable with a female doctor.
Patient interviewBooking follows four choices: who it's for, which clinic (nearest by GPS or chosen), which doctor (preferred or earliest available) and when, from real-time availability. Payment sits inside the flow with stored cards, the real price, insurance discounts and a full summary. Patients can cancel or reschedule within policy, with refunds handled in the app.

Appointment booking in four steps: who, clinic, doctor and time 
Payment inside the booking flow with stored cards and a booking summary Booking flow sketch 05Medical records in the patient's hands
Exams with prep instructions, fasting rules and results uploaded by the clinic, ongoing treatments and the full consultation history. What used to take a staff member two platforms is now in the patient's pocket at any time.

Medical records: exams list, exam results and consultation history Exam results pipeline 06One app over three systems
The app reads from and writes to the CRM, the scheduling platform and the records system. It became the single layer that ties them together.

Integration diagram: CRM, scheduling and medical records feeding the mobile app 07Cleaning the database first
Before launch, we led a full cleanup: finding duplicates, merging them without losing history and moving every record to the new key. For the first time, Medstation trusted its own patient data.

Database cleanup: strategy for merging duplicate patient records Data validation and deduplication strategy
Impact
The front desk wasn't replaced. It was promoted.
Operations
Scheduling moved from the front desk to patients in the app. Three platforms became one system, duplicate records were eliminated, and staff moved from data entry to oversight and in-person care.
Team
The front desk grew from 3 to 5 people with the clinic. The two original staff members who had handled the chaos were promoted to leadership roles within a year of launch.
Patients
Book, reschedule, cancel, pay and see records in their own language, on their own time, with no government ID required.
How the work was built
Methods, in order.
| Phase | Method |
|---|---|
| Discovery | Individual interviews with the front desk team |
| Discovery | Workflow mapping and BPMN analysis with friction annotation |
| Discovery | Patient interviews, n=8, diverse profiles |
| Validation | Effort and impact prioritization workshop |
| Validation | Competitive benchmark: US, Brazil and global health products |
| Design | Multilingual, role-based information architecture with dependents |
| Design | Interaction design at all fidelities for iOS and Android |
| Design | Integration across 3 existing platforms |
| Delivery | Database cleanup and composite key migration |

