A FHIR MedicationStatement is a Fast Healthcare Interoperability Resources (FHIR) resource that records a patient's self-reported or clinician-derived assertion of medication usage over a specific period. Unlike a MedicationRequest (the prescription) or a MedicationDispense (the supply event), the MedicationStatement captures the actual intake narrative—what the patient says they took, are taking, or will take. It serves as a critical building block for constructing a Best Possible Medication History (BPMH) by ingesting data from patient portals, caregiver interviews, and external health information exchanges.
Glossary
FHIR MedicationStatement

What is FHIR MedicationStatement?
A FHIR MedicationStatement is a record of a patient's reported or derived assertion of medication intake, capturing the 'what was taken' aspect of medication history independently of the formal prescription or dispensing workflow.
This resource is central to medication reconciliation automation because it represents the 'as taken' truth against which new inpatient orders are compared to identify unintentional discrepancies. An AI-driven reconciliation engine extracts MedicationStatement instances from unstructured clinical notes, mapping the free-text drug names to RxNorm codes and normalizing the dosage and frequency fields. The status element (active, completed, entered-in-error) and the effectivePeriod enable temporal reasoning to chronologically sequence a patient's medication timeline and detect gaps or overlaps in therapy.
MedicationStatement vs. Other FHIR Medication Resources
Distinguishing the FHIR MedicationStatement from related medication resources based on clinical context, source of truth, and workflow role.
| Feature | MedicationStatement | MedicationRequest | MedicationAdministration |
|---|---|---|---|
Clinical Context | Reported or derived history of what a patient is taking | An order or prescription for a medication to be dispensed | A record of a medication actually administered to a patient |
Source of Truth | Patient self-report, caregiver report, or derived from external records | Prescriber or ordering clinician | Administering clinician or automated dispensing device |
Temporal Relationship | Past and current medication use; may include future intent | Future intent; what should be dispensed or taken | Past action; what was given at a specific point in time |
Primary Use Case | Medication reconciliation and Best Possible Medication History | E-prescribing, pharmacy dispensing, and order entry | Inpatient medication administration record and immunization tracking |
Status Values | active, completed, entered-in-error, intended, stopped, on-hold, unknown | active, on-hold, cancelled, completed, entered-in-error, stopped, draft, unknown | in-progress, not-done, on-hold, completed, entered-in-error, stopped, unknown |
Supports 'Not Taken' | |||
Dosage Instruction Granularity | Coarse; often a text summary or simple dose and frequency | Fine; structured timing, dose, route, and as-needed parameters | Fine; exact dose, route, site, and timestamp of administration |
Required for MedRec |
Core Attributes of a MedicationStatement
The FHIR MedicationStatement resource records a patient's reported or derived statement of medication intake, capturing the 'what was taken' aspect of medication history rather than the 'what was prescribed' instruction.
Status & Verification
The status element records the actionability of the statement, while statusReason captures why a medication was stopped or not taken. The category field distinguishes between inpatient, outpatient, community, and patientspecified settings, providing critical context for reconciliation workflows.
- Active: Currently being taken
- Completed: Course finished
- Stopped: Discontinued before completion
- Intended: Planned but not yet started
- Entered-in-error: Recorded mistakenly
Medication[x] Reference
The medication[x] element identifies the specific drug using either a CodeableConcept or a Reference to a Medication resource. This flexibility allows systems to capture granularity from simple text descriptions to fully coded RxNorm concepts.
- CodeableConcept: Inline coding with text display
- Reference: Pointer to a standalone Medication resource
- RxNorm: Preferred coding system for interoperability
- NDC: National Drug Code for dispensed products
Dosage & Timing
The dosage backbone element captures structured dose-and-rate information, including doseQuantity, route, timing, and asNeededBoolean. This enables automated dose normalization across disparate representations.
- timing.repeat: Frequency, period, and bounds
- doseAndRate.doseQuantity: Amount with UCUM units
- route: SNOMED CT route of administration
- asNeededBoolean: PRN medications flag
Information Source
The informationSource element identifies the person or organization that provided the medication information, establishing data provenance. This is essential for MedRec to weigh source reliability when resolving discrepancies.
- Patient: Self-reported medication history
- Practitioner: Clinician-verified intake
- RelatedPerson: Family or caregiver report
- Organization: Pharmacy or external record
Effective Period & Date Asserted
The effective[x] element captures when the medication was taken using either a dateTime or Period. Combined with dateAsserted, which records when the statement was actually documented, systems can perform temporal reasoning to validate chronological consistency.
- effectivePeriod: Start and end of intake window
- dateAsserted: Timestamp of statement creation
- Temporal gaps: Detect undocumented periods
- Overlap detection: Flag duplicate therapy windows
DerivedFrom & PartOf
These reference elements establish lineage by linking the MedicationStatement to its source artifacts. derivedFrom points to underlying records like MedicationRequest or Observation, while partOf references parent events such as a MedicationAdministration or Procedure.
- derivedFrom: Source documents and requests
- partOf: Encounter or procedure context
- Audit trail: Full provenance chain
- Reconciliation source: BPMH construction
Frequently Asked Questions
Explore the core concepts of the FHIR MedicationStatement resource, a critical component for interoperable medication reconciliation and clinical workflow automation.
A FHIR MedicationStatement is a record of a patient's reported or derived statement of medication intake, capturing the 'what was taken' aspect of the medication history. It is a record of assertion, not intent. Unlike a MedicationRequest, which represents an order or prescription (the 'what should be taken'), the MedicationStatement captures the patient's actual consumption or reported usage over a period. This distinction is fundamental for Medication Reconciliation (MedRec) workflows, where the goal is to compare the patient's historical truth (MedicationStatement) against new orders (MedicationRequest) to identify Unintentional Discrepancies like omission errors or duplicate therapies.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Key concepts and profiles that interact with the MedicationStatement resource to build a complete medication reconciliation workflow.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us