Talk to us about your patient portal project.
Tell us your EHR environment, the workflows patients most need, and where your current portal is failing. We will scope the right build and give you a fixed cost.
Your EMR's built-in patient portal is technically compliant but so difficult to use that patients abandon it after the first visit?
Patients calling the front desk for appointment bookings and test results because the portal experience is too clunky to trust?
Custom patient portal software for health systems, specialty practices, and digital health companies who need more than what their EMR's built-in portal provides.
We build portals that patients actually use -- appointment booking, test results, secure messaging, care plans, and billing, integrated with your EHR for real-time data.
Appointment self-scheduling with provider availability, appointment types, and reminders
Test result delivery with reference ranges, provider notes, and visit summaries
HIPAA-compliant secure messaging between patients and care team
iOS and Android mobile portal app with biometric authentication and push notifications
RaftLabs builds custom patient portals for health systems, specialty practices, and digital health companies that need more than their EMR's default portal provides. We develop appointment scheduling, test result delivery, secure provider messaging, care plan access, medication management, billing and payment, and patient consent management -- with EHR integration for real-time data and HIPAA-aware architecture throughout. Most patient portal development projects deliver in 12-14 weeks at a fixed cost.
Most EMR-bundled patient portals exist to satisfy Meaningful Use requirements. They were not designed for patient adoption. The result is portals that are technically available but functionally unused -- patients call the front desk because the portal is harder than a phone call.
We build patient portals around the patient's task: book an appointment, see a test result, message a provider, pay a bill. Each task should take fewer than three steps. EHR integration pulls real data so the portal reflects what is actually in the patient's record. HIPAA-aware architecture handles PHI correctly throughout. The goal is a portal that reduces front desk call volume, not one that adds a compliance checkbox.
Self-service appointment scheduling using FHIR R4 Slot and Appointment resources to query real-time provider availability directly from your scheduling system. Patients select appointment type, provider, location, and preferred time without calling the front desk. The FHIR Appointment resource creates the booking record in your EHR at the point of patient confirmation, so the scheduling system and the portal stay in sync without a separate data synchronisation job. The booking flow adapts to appointment type requirements: new patient intake forms, referral number capture, insurance verification prompts, and pre-visit questionnaires are presented at the correct step in the booking sequence based on the appointment type definition.
SMART on FHIR launch context enables single-sign-on from within your EHR patient-facing applications, so patients who access the portal from within an integrated health system don't re-authenticate. Automated confirmation messages deliver immediately after booking; reminder messages fire at configurable intervals before the appointment via SMS, email, or push notification. Rescheduling and cancellation are available directly in the portal with cancelled slots triggering waitlist offers where the waitlist feature is configured. No-show tracking feeds back into patient engagement analytics.
Lab results delivered through the portal using LOINC-coded panels from the FHIR R4 DiagnosticReport and Observation resources. LOINC coding enables the portal to display results with accurate reference ranges, flagged values (low/high/critical), and structured contextual information that makes them interpretable to the patient rather than a raw lab printout. Imaging reports, visit summaries, medication history, and immunisation records are accessible in a single health record view. The FHIR R4 Patient/$everything operation retrieves the complete longitudinal patient record, enabling a full timeline view of care history.
Blue Button 2.0 API integration allows Medicare beneficiaries to pull their Part A, B, and D claims data directly into the portal, providing a consolidated view of care received across providers. ONC 21st Century Cures Act patient access requirements are met through the FHIR-based data access layer -- patients can request their complete health information and receive it in a machine-readable format. Result release follows your clinical rules: automatic release on a defined timer (configurable by result type), hold for provider review before the patient sees the result, or provider-initiated release with an attached interpretation message. Patients receive a push notification or email when new results are available, which drives portal return visits without requiring a phone call from the practice.
HIPAA-compliant asynchronous messaging between patients and the care team, with message content encrypted in transit via TLS 1.2+ and at rest using AES-256 in a HIPAA-compliant message store. PHI in message bodies is never stored in plain text in a relational database row -- it is encrypted at the field level with key management handled through AWS KMS or an equivalent HSM-backed service. Business Associate Agreements with every infrastructure provider processing message content are included in the compliance documentation package.
Messages route to the correct team member or pool based on message type and clinical team configuration: clinical questions go to the nurse inbox, appointment requests route to scheduling, billing inquiries route to the billing team. Response time SLAs are configurable per message type so clinical questions receive a different priority routing than administrative requests. Read receipts confirm patient-side delivery. Message threads carry full audit logging -- every access, read, and reply is logged with timestamp, user identity, and access context -- for HIPAA compliance review and eDiscovery. Multi-factor authentication (TOTP via apps like Google Authenticator, or SMS-based OTP) is required before accessing message content containing PHI, with session timeout controls configurable per compliance policy.
Care plan task tracking for patients managing chronic conditions or post-procedure recovery, built on FHIR R4 CarePlan and Goal resources so the care plan displayed in the portal reflects what the clinical team has documented in the EHR. Tasks, milestones, and check-in prompts are presented in a clear timeline with completion status visible to both the patient and the care team. Patient-reported outcome (PRO) measures -- including validated PROMIS (Patient-Reported Outcomes Measurement Information System) instruments for pain, physical function, fatigue, and mental health -- are collected through structured forms within the portal and written back to the EHR as FHIR Observation resources.
Medication list is populated from the FHIR R4 MedicationRequest resource with RxNorm-coded medications so the display includes structured drug names, strengths, dosing instructions, and refill history rather than free-text strings. Medication reminder notifications fire on the patient's configured schedule for complex multi-drug regimens. Prescription refill request submission directly from the medication list includes routing to the prescribing provider with status tracking through approval and pharmacy processing steps. Immunisation records pulled from FHIR Immunization resources and preventive care reminders tied to care gaps identified in the EHR are presented to the patient with clear next steps.
Invoice access and online payment for outstanding balances with support for partial payments, payment plan setup, and saved payment method for recurring instalments. Insurance information management allows patients to update coverage details, insurance ID numbers, and group plan information ahead of appointments to reduce check-in delays. Explanation of Benefits (EOB) documents are accessible in the portal alongside the corresponding invoice so patients can understand what their insurer covered and what their patient responsibility represents.
Payment processing integrates with your existing billing system via its API for real-time balance data and immediate payment posting -- so when a patient pays at 10pm, the balance is cleared in the billing system that night, not batched the next business day. Payment confirmation and receipt by email is sent immediately on transaction completion. Patients who can see their balance and pay online pay faster and with fewer staff touchpoints than patients who receive paper statements and a phone number to call. WCAG 2.1 AA accessibility compliance is built into the billing UI so the payment workflow is usable by patients with visual, motor, and cognitive disabilities -- this is also an ONC patient access requirement for portals used with federally funded programmes.
iOS and Android native or React Native cross-platform mobile app with the full portal feature set -- FHIR-powered appointment booking, lab results with LOINC reference ranges, HIPAA-compliant secure messaging, care plan task tracking with PROMIS outcome collection, medication list with RxNorm codes, and billing and payment. Biometric authentication (Face ID, Touch ID on iOS; fingerprint on Android) enables fast, secure sign-in without password entry on each session, using the device's secure enclave to store the credential -- no biometric data is transmitted to the server.
Multi-factor authentication (TOTP via authenticator app, or SMS OTP) is enforced before accessing PHI for the first time on a new device, with configurable session re-authentication intervals per your compliance policy. Push notifications via APNs (iOS) and FCM (Android) deliver new test result alerts, provider message notifications, appointment reminders, and care plan check-in prompts in real time. WCAG 2.1 AA accessibility compliance covers screen reader support (VoiceOver on iOS, TalkBack on Android), sufficient colour contrast ratios, and touch target sizing appropriate for users with motor impairments. The mobile app is the primary access point for most patients under 50 -- building web-only first and adding mobile later creates a two-phase adoption problem. We build both from the start under the same data architecture and FHIR integration layer.
Frequently asked questions
EMR-bundled portals meet Meaningful Use and ONC 21st Century Cures Act patient access requirements but are rarely designed for patient adoption. They are built to the lowest common denominator across all practice types, which means they do not reflect your specific scheduling rules, your care team structure, or your patient population's needs and expectations. A portal designed for a large health system's appointment rules does not map cleanly onto a specialty practice with complex provider availability logic, procedure pre-authorisation steps, or multi-location booking.
Custom portals built on FHIR R4 pull real-time data from your EHR using standard SMART on FHIR and Patient/$everything endpoints, so the custom portal reflects live data rather than a stale copy. The experience is designed around the patient's actual tasks -- book appointment, see result, message provider, pay bill -- with each task completing in the fewest possible steps. The result is measurably lower front-desk call volume for tasks the portal handles well. EMR-bundled portals tend to reduce some inbound calls; purpose-built portals designed for adoption tend to reduce substantially more. We can scope against your current call volume data to model the expected impact.
HIPAA compliance for a patient portal requires technical safeguards across the full stack. Encryption of PHI in transit uses TLS 1.2 or higher on all connections. Encryption at rest applies AES-256 at the database field level for PHI fields, with encryption key management through AWS KMS or a comparable HSM-backed service rather than application-managed keys. Patient identity verification before PHI access requires multi-factor authentication -- TOTP via authenticator app or SMS OTP -- on initial registration and on each new device, not just at account creation.
Audit logging captures every PHI access event with timestamp, authenticated user identity, resource accessed, and access context. These logs are immutable and retained per your policy for HIPAA compliance review and eDiscovery requirements. Role-based access controls for clinical staff restrict which PHI each role can access: a billing user sees billing records but not clinical notes; a nurse can read and respond to messages but cannot modify lab result display settings. Business Associate Agreements are in place with every infrastructure provider processing PHI -- AWS, Twilio for SMS, email service provider, and any analytics tool that could process PHI. Every project includes a HIPAA compliance documentation package covering data flows, access control matrices, BAA coverage, and the audit logging configuration.
Yes. We integrate with EHRs that expose FHIR R4 APIs. Epic's FHIR R4 API is the most comprehensive -- it supports Patient, Appointment, Slot, DiagnosticReport, Observation, MedicationRequest, CarePlan, and the Patient/$everything operation with broad data coverage. Cerner (Oracle Health) and Athenahealth expose FHIR R4 APIs with good coverage for the core portal use cases. Most modern EHR platforms launched in the last five years expose at least a FHIR R4 conformance statement with Appointment and Observation resources, which covers the scheduling and results delivery workflows.
SMART on FHIR enables authorised launch from within EHR-embedded patient-facing workflows so patients can move between the EHR's native UI and the custom portal without re-authenticating. For EHRs with limited FHIR coverage, HL7 v2 message ingestion (ADT, ORU, SIU message types) is available as an integration path for demographics, results, and scheduling data, processed via an integration engine layer. Integration depth for your specific EHR version and configuration is confirmed during discovery -- we document the API capabilities against your required portal features before committing to a delivery scope.
A focused patient portal -- FHIR R4 appointment booking using Slot and Appointment resources, LOINC-coded lab result delivery with reference ranges, HIPAA-compliant secure messaging with field-level encryption, MFA with TOTP/SMS, and WCAG 2.1 AA accessibility -- typically runs $50,000--$90,000 and delivers in 12-14 weeks. This covers the core workflows that drive the most front-desk call volume.
A full portal adding PROMIS patient-reported outcomes collection, RxNorm medication list with refill requests, Blue Button 2.0 Medicare claims integration, billing and online payment, care plan tracking via FHIR CarePlan resources, native iOS and Android apps, bidirectional EHR write-back, and ONC 21st Century Cures Act patient access documentation typically runs $90,000--$180,000. Cost is primarily driven by EHR integration complexity (Epic's API is more complete but requires an App Orchard review process; other EHRs vary), the number of appointment types and scheduling rule configurations, and whether a mobile app is included from the start. We scope and price every project before starting and hold to the fixed cost through delivery.
What clients say
Three-year average engagement. Founders and operators describing the work in their own words. No marketing varnish.

All of the sprints were completed on schedule and on budget. We highly recommend RaftLabs!
01 / 02
Tell us your EHR environment, the workflows patients most need, and where your current portal is failing. We will scope the right build and give you a fixed cost.