All explainers
Explainer · Portal messages in the Inbox · 7 Nov 2026

The channel decides who reads, who answers, and where.

The patient can now write in the portal, and the message lands in the staff Inbox beside WhatsApp. One rule routes everything: WhatsApp, calls, email and SMS are the desk’s; the portal is the care team’s, from the first message. Nothing is decided by what a message says, by a stage or by a date. Curitt only; Carla Nogués is unchanged.

The path a message takes
Patient writes→Channel decides the tab→Presale answers WhatsApp→Care team answers the portal→Patient reads, one email nudge

Prototype: admin-preview, Curitt tenant, Inbox → Presale | Patients; patient-preview as Sven de Wit. Brief: Amiro.Next/features/portal-messages-in-inbox/brief.md (COM-D-101 … 110).

00 · In short

Two tabs, one rule, nothing moves.

2

tabs in the Inbox: Presale holds everyone’s WhatsApp, calls, email and SMS; Patients holds everyone’s portal.

1

thing decides who may read a message: the channel it came on. Not the person, not the words, not a per-message grant.

0

conversations move between tabs. A person can be a row in both; those are two conversations with two owners, not one shown twice.

WhoSeesAnswers
Front desk (Presale)All WhatsApp, calls, email, SMS. The portal as envelopes: the lock, Message in the portal, sent, read; booking and payment notifications in full.WhatsApp, email, SMS, a call. Never the portal.
Care team (doctors, owner, manager)Both tabs: WhatsApp in full, and every portal thread in full.The portal; WhatsApp too, if they want to. Whoever answers first clears the item.
AmiroBoth channels.WhatsApp on its own, as today. On the portal it only drafts.
01 The ruleAccess and the queue follow the channel; the portal is the care team’s from the first message.
02 PresaleWhat the desk sees of Sven: his WhatsApp in full, his portal as locked envelopes, a composer without the portal.
03 Front deskSofie’s Inbox has no tabs at all: the Presale list, Reply and Comment, every portal as envelopes.
04 Before any visitThomas asks a medical question on WhatsApp; the desk books and sends him to the portal; the doctor answers there.
05 PatientsThe care team’s view: the portal exchange, letters, prescriptions, calls, and WhatsApp as context.
06 A step opensAn automatic message opens what it is about: the email as sent, the portal card, the form, the visit, the payment.
07 RolesTwo rows in Settings → Roles: Inbox · Presale and Inbox · Patients, No access / View / Act.
08 BuildBackend contract, staff Inbox, patient portal, roles; what leaves the Brain and what enters it.
Amiro · Portal messages in the Inbox · 7 Nov 2026Overview
01 · The rule

Access follows the channel. So does the queue.

ChannelWho may readWhose queue
WhatsApp, calls, email, SMSEveryone with the Inbox (Inbox · Presale).Presale. A doctor may answer too; answering is not owning.
The portalThe care team (Inbox · Patients), from the first message. Presale sees envelopes: who, kind, sent, read; never the text.The care team. A question for the desk written there becomes a task.
Automatic messagesWhoever may read the record: a visit → Calendar, a payment → Sales, a form, prescription or letter → Patient.Nobody’s; they are events. Presale sees clinical ones as envelopes.
COM-D-101 access by channelCOM-D-102 queue by channelCOM-D-103 two tabs, nothing movesCOM-D-105 notifications follow the recordCOM-D-106 mentions never widen access
Amiro · Portal messages in the Inbox · 7 Nov 20261 / 8
02 · Presale tab

The desk sees Sven’s WhatsApp in full and his portal as envelopes.

Owner, Presale tab, Sven de Wit. His new WhatsApp enquiry (a health check for him and his wife), Sofie’s answers signed “Curitt by Sofie van Dijk”, then two envelopes: the automatic “Form requested” and his message in the portal, locked. The composer offers WhatsApp.Owner, Presale tab, Sven de Wit. His new WhatsApp enquiry (a health check for him and his wife), Sofie’s answers signed “Curitt by Sofie van Dijk”, then two envelopes: the automatic “Form requested” and his message in the portal, locked. The composer offers WhatsApp.
Amiro · Portal messages in the Inbox · 7 Nov 20262 / 8
03 · Front desk

Sofie has no tabs. Her Inbox is the Presale list.

Sofie van Dijk (front desk, Utrecht). No Presale | Patients switch in the rail; the folders count her queue only. The same Sven thread, with Reply and Comment, and no way into the portal.Sofie van Dijk (front desk, Utrecht). No Presale | Patients switch in the rail; the folders count her queue only. The same Sven thread, with Reply and Comment, and no way into the portal.

A role with Inbox · Patients set to No access does not see the switch. The Inbox is simply the Presale queue.

Amiro · Portal messages in the Inbox · 7 Nov 20263 / 8
04 · Before any visit

Thomas asks a medical question on WhatsApp. It is answered in the portal.

Presale tab, Thomas Bakker. His GLP-1 question on WhatsApp, Amiro’s answer that it is for the doctor, Sofie booking the intake and pointing him to the portal. Then two envelopes: his message in the portal and Dr Jansen’s reply, read. The composer offers WhatsApp (template only: the 24-hour window is closed).Presale tab, Thomas Bakker. His GLP-1 question on WhatsApp, Amiro’s answer that it is for the doctor, Sofie booking the intake and pointing him to the portal. Then two envelopes: his message in the portal and Dr Jansen’s reply, read. The composer offers WhatsApp (template only: the 24-hour window is closed).
Patients tab, the same person. The portal in full: his medication question and Dr Jansen’s answer; the WhatsApp lines above as context. The composer is set to Portal. No lead tools, no stage.Patients tab, the same person. The portal in full: his medication question and Dr Jansen’s answer; the WhatsApp lines above as context. The composer is set to Portal. No lead tools, no stage.

The rule needs no state on the person. Thomas has not been to a visit; his portal is the care team’s all the same, because it is the portal.

Amiro · Portal messages in the Inbox · 7 Nov 20264 / 8
05 · Patients tab

The care team reads the portal, and sees WhatsApp as context.

Owner, Patients tab, Sven de Wit. The same WhatsApp lines, readable, then the automatic form request and Sven’s question in the portal. The composer is set to Portal.Owner, Patients tab, Sven de Wit. The same WhatsApp lines, readable, then the automatic form request and Sven’s question in the portal. The composer is set to Portal.
Earlier in the same thread: a prescription, its cancellation, and Sarah’s letter “A change to your treatment plan” from the EMR letter templates, under her own name.Earlier in the same thread: a prescription, its cancellation, and Sarah’s letter “A change to your treatment plan” from the EMR letter templates, under her own name.
Further back: a payment cancelled, two calls from Sofie (voicemail, then reached, recorded), the visit booked, and the check-in from Curitt Assistant.Further back: a payment cancelled, two calls from Sofie (voicemail, then reached, recorded), the visit booked, and the check-in from Curitt Assistant.
Amiro · Portal messages in the Inbox · 7 Nov 20265 / 8
06 · A step opens

An automatic message opens what it is about, in the house widget.

Form requested → Email tab: the email as it went out, from the “New form request” template, buttons drawn but not clickable. Activity below, newest first, only what happened.Form requested → Email tab: the email as it went out, from the “New form request” template, buttons drawn but not clickable. Activity below, newest first, only what happened.
The same message, Portal tab: the card as the portal shows it, title, body, Complete form.The same message, Portal tab: the card as the portal shows it, title, body, Complete form.
Confirm visit → the Calendar visit drawer: date, time, clinic, provider, the join link, the payment with its lines and Booked.Confirm visit → the Calendar visit drawer: date, time, clinic, provider, the join link, the payment with its lines and Booked.
StepOpens
Complete formThe EMR form page (PatientFormSubmissionSheet) with the real template, the Annual health review.
Confirm visit, View visitThe Calendar visit drawer, with its Payment and Activity sections.
Pay, View refundThe Sales panel of the sale.
Download prescription, Prescription cancelledThe record’s prescription row, with Reprint.
View documents (a letter)The letter and its attachments.
Confirm visit (the patient’s side)The visit page /v/:token, as the patient sees it.
Amiro · Portal messages in the Inbox · 7 Nov 20266 / 8
07 · Roles

Two rows in Settings → Roles. Only one of them differs.

Settings → Team → Roles, the Inbox rows. Columns: Owner, Manager, Provider, Front desk, Operator. Inbox · Presale is Act for everyone; Inbox · Patients is Act for Owner, Manager and Provider, and No access for Front desk and Operator.Settings → Team → Roles, the Inbox rows. Columns: Owner, Manager, Provider, Front desk, Operator. Inbox · Presale is Act for everyone; Inbox · Patients is Act for Owner, Manager and Provider, and No access for Front desk and Operator.
RoleInbox · PresaleInbox · Patients
Owner, ManagerActAct
ProviderActAct
Front deskActNo access
OperatorActNo access
Amiro · Portal messages in the Inbox · 7 Nov 20267 / 8
08 · Build

Three tasks for Artur, and the Brain catches up.

01 · BackendThe contractArtur, AMI-1851. PORTAL channel, patient POST on the one thread, PATIENT author, stream events, staff send, edit and delete while unread, the hourly email nudge, provider notes into the thread.
02 · Staff Inboxadmin-frontendArtur, AMI-1851 and AMI-1853. Presale | Patients, one thread per person with the lead line, the envelope, the sender line, the automatic message with its drawer, the composer channels per tab, mentions limited to readers.
03 · Patient portalpatient-frontendArtur, AMI-1851. A composer on the chat, edited, read as seen; letters and notifications as the prototype draws them.
04 · Rolescontrol-planeArtur, AMI-1852. The two rows and the access rule, first of the three.
BrainChange
COM-R-030“A patient cannot write” withdrawn.
COM-R-016“A sent note is final” narrowed to the record’s documents; chat messages may be edited or deleted while unread.
CRM-D-094One list with the stage on the row holds for organizations without a Patients Inbox; with one, COM-D-103 applies.
CRM-DQ-032Who answers which stage: closed by COM-D-101 and 102.
Amiro · Portal messages in the Inbox · 7 Nov 20268 / 8