System Overview
System Overview
Section titled “System Overview”Who this is for: everyone — new hires, PMs, sales/GTM, clinical/support staff. Read this first.
What the platform does
Section titled “What the platform does”Patients come to this platform to get help obtaining official paperwork that requires a licensed provider’s review and signature — for example a disability parking placard, a medical marijuana card, FMLA leave certification, or a tinted-window medical exemption. The patient answers questions online, pays, and (depending on the service) books a short appointment. A doctor reviews the case, signs the required government form, and the platform delivers the finished document to the patient — either as a download or a mailed physical copy.
The whole system is built to run as more than one branded product from the same codebase — see Admin, analytics & multi-brand support.
The two applications
Section titled “The two applications”1. The patient portal
Section titled “1. The patient portal”This is the public website patients use. It handles:
- Choosing a service and answering pre-qualification questions
- Creating an account (passwordless — patients log in via an emailed link, not a password)
- Paying for the service
- Booking an appointment (for services that require one)
- Filling out the official intake form
- Uploading ID and supporting documents
- Messaging the care team
- Viewing and downloading finished documents
- Leaving reviews and referring friends
2. The care portal
Section titled “2. The care portal”This is the internal back office. It is used by four kinds of staff:
- Doctors (providers) — review each case, fill in medical judgment fields, and sign the official document.
- Admin/back-office staff — manage cases across the board, configure services and pricing, manage brands, view analytics, edit message templates, handle disputes.
- Care-team / consent-coordinator staff — work case queues that need outreach (missing consent, unanswered calls, incorrect information, faxes), following up with patients until a case is unblocked.
- Print-station staff — the final fulfillment step: printing, hand-signing where required, packaging, and mailing physical documents.
How the two apps connect
Section titled “How the two apps connect”- Every purchase a patient makes becomes a case (referred to in the code as a “task”). The case record is the shared unit of work — the patient portal creates it, and the care portal’s staff process it end to end.
- The patient portal calls into the care portal’s system to look up existing patient medical/clinical records where relevant (an internal integration referred to in code as “EHR” — electronic health record lookup). This is an internal, server-to-server call, not something the patient sees directly.
- Server-to-server calls between the two apps are authenticated with pre-shared internal keys (separate keys for “public” vs “internal” call paths) rather than a patient’s personal login.
- A patient’s login session is a signed token stored in a browser cookie. When the patient portal and marketing site share the same root web domain, that cookie is deliberately scoped to the whole domain (not just one subdomain) so other sites on the same domain can ask the patient portal “is this visitor logged in?” without the patient having to log in twice. See Account access for the full sign-in flow.
- The care portal uses a separate, unrelated login system for staff — each staff member has a role (admin, provider/doctor, or an “outsider” bucket that covers care-team and print-station staff) and, for finer-grained access, a sub-role such as doctor, super admin, care-team member, consent coordinator, dispute handler, or printer. Every internal staff page checks the logged-in user’s role/sub-role before showing anything.
- A dedicated set of API endpoints exists specifically for outside systems (not either portal’s own users) to call into the care portal — see External Partner API.
Roles at a glance
Section titled “Roles at a glance”| Role | Where they work | What they do |
|---|---|---|
| Patient | Patient portal | Buys a service, completes intake, pays, uploads documents, messages staff |
| Doctor / Provider | Care portal — provider workspace | Reviews cases assigned to them, signs the official document, writes visit notes |
| Admin / Super Admin | Care portal — admin back office | Manages all cases, services, pricing, brands, staff, analytics, templates |
| Care-team / Consent coordinator | Care portal — care queues | Follows up with patients on missing consent, unanswered outreach, incorrect info, faxes |
| Dispute handler | Care portal — patient search | Looks up patient records to resolve disputes/complaints |
| Print-station staff | Care portal — print station | Prints, hand-signs where required, packages, and mails physical documents |
Open questions
Section titled “Open questions”- The exact mechanism/vendor behind the “EHR” (electronic health record) lookup used by the patient portal was not fully traced — flagged as an open question rather than guessed. See the Glossary.
Where this comes from
Section titled “Where this comes from”parkingmd-care-portal/docs/care-portal-kt-guide.mdparkingmd-patient-portal/documentation/cross-site-auth-cookie.mdparkingmd-patient-portal/documentation/routing.mdparkingmd-patient-portal/src/config.tsparkingmd-patient-portal/src/services/ehr.tsparkingmd-care-portal/src/lib/auth/index.tsparkingmd-care-portal/src/app/(main)/admin/,.../provider/[doctorId]/,.../care/,.../printer/,.../patients/(route folders confirming the roles above)