Remote patient monitoring has moved from a niche application to a mainstream clinical programme. The technology stack that supports billable RPM is more regulated than most digital health teams appreciate. Prescription-use monitoring devices are FDA-regulated medical devices. The wireless protocols over which they communicate may fall under FCC jurisdiction. The data they generate is PHI subject to HIPAA. And the CPT codes that generate reimbursement require specific documentation that the platform must produce automatically.
Each of these regulatory layers is independent. A platform that satisfies FDA device requirements but fails to produce HIPAA-compliant audit logs is non-compliant. A platform that produces excellent clinical documentation but uses devices without 510(k) clearance is equally non-compliant. Building a defensible RPM architecture requires understanding all four layers simultaneously.
FDA Device Classification: Which RPM Devices Need 510(k)
FDA classifies medical devices by risk. RPM devices used for prescription purposes — continuous glucose monitors, cardiac monitors, pulse oximeters marketed for clinical use, blood pressure monitors used to make treatment decisions — are Class II devices that generally require 510(k) clearance before commercial distribution. The 510(k) demonstrates substantial equivalence to a predicate device and must include performance testing, labelling, and software documentation under IEC 62304 if the device contains software.
General wellness devices — wearables that track activity, sleep, or general health without making treatment claims — may qualify for FDA enforcement discretion under the general wellness policy. The boundary is the intended use: a device marketed to help patients manage a diagnosed condition is not a general wellness device, regardless of whether it could also be used as one. RPM platform developers who source consumer wearables for clinical programmes must verify that the device's regulatory status is consistent with the intended clinical use.
FCC Requirements: Wireless Medical Device Spectrum
RPM devices that transmit data wirelessly are subject to FCC equipment authorisation requirements under 47 CFR Part 15 for unlicensed devices operating in ISM bands, or carrier-specific technical requirements for cellular-connected devices. Bluetooth, Wi-Fi, and Zigbee-connected RPM devices must carry FCC Part 15 authorisation. Cellular-connected devices require carrier certification in addition to FCC authorisation.
The FCC's Medical Device Radiocommunications Service (MedRadio), authorised under 47 CFR Part 95 Subpart I, provides a dedicated spectrum allocation for wireless medical telemetry at implanted and body-worn device frequencies. Verifying FCC authorisation status is part of device sourcing due diligence for every RPM programme.
HIPAA Architecture for RPM Data Pipelines
RPM data pipelines handle PHI from the moment a device transmits a biometric measurement. The cloud ingestion endpoint, stream processing layer, storage tier, and EHR integration layer are all in scope for HIPAA Technical Safeguard requirements and require BAAs with all Business Associates in the data path.
The FHIR layer is where RPM data becomes clinically actionable. Device observations must be mapped to FHIR R4 Observation resources using LOINC codes appropriate to the measurement type. These Observation resources must be surfaced in the EHR in a form that generates clinical alerts when values exceed threshold — and those thresholds must be configurable per patient. The EHR integration layer is where most RPM deployments fail in practice: the data reaches the EHR but does not generate the clinical workflow that prompts a care team response.
CPT Code Documentation Requirements
CMS RPM reimbursement codes require specific documentation that the platform must generate automatically. CPT 99453 requires initial setup and patient education. CPT 99454 requires supply of the device and daily transmissions for at least 16 days in a 30-day period — the platform must track transmission days per patient and surface this count in the billing interface. CPT 99457 and 99458 require interactive communication between clinical staff and the patient with specific time thresholds. CPT 99091 requires physician review and interpretation of data with a documented time threshold.
The billing documentation layer must aggregate transmission counts, communication logs, and physician review events per patient per calendar month and produce documentation that satisfies payer audit requirements. Automation of the documentation layer is not optional for RPM programmes at scale.
Designing for Multi-Payer Reimbursement
CMS RPM policies establish the baseline, but commercial payers have adopted their own RPM coverage policies that may differ in code requirements, documentation standards, and eligible patient populations. A platform designed only for Medicare RPM reimbursement will require significant modification to support commercial payer programmes. Building the reimbursement documentation layer with a payer-configuration interface — rather than hardcoding CMS requirements — allows the platform to adapt to payer-specific requirements without architectural changes.
The Algorithm Approach: Compliant RPM Architecture by Design
The Algorithm designs RPM platforms with all four regulatory layers — FDA, FCC, HIPAA, and reimbursement — treated as first-class architectural requirements. We conduct device regulatory status verification as part of technology sourcing, design FHIR Observation mapping specifications before data pipeline construction, and build billing documentation automation into the platform data model from day one. The result is an RPM architecture that generates clean claims from the first patient enrolled, rather than discovering documentation gaps during the first payer audit.
The engineering behind this article is available as a service.
We have done this work — not advised on it, not reviewed documentation about it. If the problem in this article is your problem, the first call is with a senior engineer who has solved it.