German Practice Management FHIR Profiles (R4)
0.90.0 - STU1
Germany
German Practice Management FHIR Profiles (R4) - Local Development build (v0.90.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
This page documents how de.cognovis.fhir.praxis concepts map to international FHIR standards. German ambulatory practice management has many domain-specific regulatory structures with no direct international equivalent. Where possible, this IG reuses standard R4 resources and patterns, making international alignment explicit.
| Domain | fhir-praxis-de Approach | International Basis | Notes |
|---|---|---|---|
| Queue Management | Encounter extensions | R5 Encounter.subjectStatus backport |
Partial mapping; queue position has no standard |
| RLV Budget | Contract resource | Loosely inspired by Da Vinci VBPR | Fundamentally different concept |
| Honorarbescheid | PaymentReconciliation + ClaimResponse | X12 835 remittance advice concept | German-specific: quarterly, KV corrections |
| GOÄ Private Billing | Claim.item.factor + ChargeItemDefinition | Native FHIR pricing | Factor range 1.0–3.5 is DE-specific |
| Digital patient invoice | gematik DiPagRechnung used directly |
FHIR R4 Invoice |
DiPag defines the German GOAE/GOAE-new/GOZ exchange contract and included-tax convention |
| PVS / Fremdabrechnung | Coverage.billing-assignment + Claim.payee | Native Claim.payee third-party biller pattern |
German-specific factoring semantics and coverage-scoped consent |
| AI Provenance | Provenance with Device agent | FHIR Provenance (R4) | Extends with EU AI Act Art. 50 specifics |
| Zeitbudget | ChargeItemDefinition extension | No international equivalent | German KBV regulatory concept |
| KV Benchmark | Basic resource extensions | No international equivalent | German KV regulatory concept |
| Accounts Receivable | Account extensions | FHIR Account (R4) | Dunning levels (Mahnstufe) are DE-specific |
| Condition Extensions | Condition extensions | FHIR Condition (R4) | Dauerdiagnose has no direct equivalent |
| Therapeutic remedy (Heilmittel) | PraxisTherapeuticRemedyDE on ServiceRequest |
FHIR ServiceRequest (R4) |
Remedy order (intent=order), distinct from referral; gevko eHLM alignment |
International basis: FHIR R5 introduces Encounter.subjectStatus with values like arrived, triaged, and receiving-care to track patient flow. This IG backports that concept to R4 via extensions.
What we add:
ArrivalTimeExt — Precise arrival timestamp (R5 has the status but not a discrete timestamp)EncounterCalledExt — Timestamp when the patient is called into the treatment roomNo international standard exists for queue position or waiting room management beyond the R5 subject status concept. Our extensions fill this gap for German practice workflows.
International basis: The Da Vinci Value-Based Performance Reporting (VBPR) IG uses similar contract-based patterns for value-based care agreements. However, the German RLV is fundamentally different: it represents a capitation cap (Mengensteuerung) imposed by the KV on individual physicians, not a quality-based reporting framework.
What we model:
No international equivalent exists for physician-level capitation budgets imposed by regional payer associations. This is a unique feature of the German KV system.
International basis: The concept maps to the US X12 835 remittance advice — a payer's explanation of payment for submitted claims. FHIR models this with PaymentReconciliation (normative in R4) and ClaimResponse.
German specifics:
International basis: FHIR natively supports fee-schedule billing through:
Claim.item.factor for multipliersChargeItemDefinition.priceComponent for base pricingClaim.item.unitPrice for calculated amountsGerman specifics:
GoaeRegelhoechstsatzFaktorExt extension on ChargeItemDefinition encodes the regulatory Regelhöchstsatz thresholdThe multiplier pattern itself maps well to Claim.item.factor in international FHIR — only the specific regulatory rules around the factor values are DE-specific.
International basis: FHIR R4 already models a third-party biller through Claim.payee. The interoperable pattern is:
Claim.payee.type = otherClaim.payee.party -> OrganizationThis is sufficient for the generic "someone else receives payment" case and aligns well with US revenue-cycle-management and billing-service workflows.
What we add for Germany:
Coverage.billing-assignment extension — The routing decision lives on the selected Coverage, not on Patient or EncounterPvsOrganizationTypeCS#pvs — Additional coding on Organization.type to mark the referenced organization as a PVS / billing serviceConsent.provision.purpose = HPAYMT, Consent.provision.data.reference -> Coverage, Consent.provision.actor.reference -> Organization(PVS)Why the extension is Coverage-scoped: A single patient can have multiple payer relationships at the same time (e.g. GKV, PKV Zusatzversicherung, Selbstzahler). Routing to a PVS is a property of the concrete coverage relationship, not a patient-wide default.
Runtime mapping: During claim generation, an adapter can inspect the selected Coverage. If billing-assignment is present, the referenced organization is mapped to Claim.payee.party and Claim.payee.type is set to other. If the extension is absent, the claim stays in the direct-pay/default flow.
International basis: AI lineage uses the official HL7 AI Transparency
Implementation Guide, pinned to hl7.fhir.uv.aitransparency#1.0.0-ballot.
The bounded local compatibility profile targets the accepted FHIR resource and
retains the official AI-Device target constraint. It uses an explicit
ai-model agent role because the deployed validator cannot classify the
ballot's required nested Reference-profile slice. It has a distinct canonical,
does not shadow the official profile, and is removed under the conditions on
the AI Provenance page. Application proposal state before acceptance remains
outside FHIR; ordinary non-AI audit events use base FHIR R4 Provenance.
No international equivalent. The KBV Prüfzeit is a German regulatory concept where each EBM billing code has an assigned time in minutes. The sum of Prüfzeiten per physician per quarter must not exceed a plausibility threshold.
Our ZeitbudgetMaxMinutenExt and ZeitbudgetAbrechnungskreiseExt model this on ChargeItemDefinition. There is no international FHIR concept for regulatory time budgets tied to billing codes.
No international equivalent. KV benchmark data provides average billing volumes, case counts, and reimbursement rates by medical specialty group (Fachgruppe) and KV region. This data is published quarterly by each KV and used for internal practice controlling.
We model this on the Basic resource since there is no natural FHIR resource for statistical benchmark data. The closest international concept would be quality measure reporting (e.g., US HEDIS), but the German KV benchmark is purely financial/volume-based, not quality-based.
International basis: The FHIR Account resource is internationally defined and covers patient accounts, billing accounts, and financial tracking.
German specifics:
The dunning workflow is not unique to Germany but the specific Mahnstufen structure and associated fees follow German commercial law (BGB/HGB) conventions.
Dauerdiagnose (permanent diagnosis): A German concept marking a diagnosis as permanently relevant across quarters. FHIR Condition.clinicalStatus = active is similar but not identical — a Dauerdiagnose is specifically an administrative marker that ensures the diagnosis appears on every Abrechnungsschein without re-entry. The clinical status may change independently.
DiagnoseSeite (laterality): The custom DiagnoseSeiteExt was removed in v0.31.0 in favour of http://fhir.de/StructureDefinition/seitenlokalisation from de.basisprofil.r4. The DiagnoseSeiteCS / DiagnoseSeiteVS vocabulary assets are retained for mapping purposes and remain mappable to SNOMED CT laterality qualifiers (7771000 left, 24028007 right, 51440002 bilateral).
International basis: FHIR R4 ServiceRequest with intent = order is the natural resource for ordering a course of care or therapy. International IGs (e.g. US Da Vinci) use ServiceRequest for referrals and orders; there is no separate "prescription" resource for non-medication therapies.
What we model:
PraxisTherapeuticRemedyDE — A remedy order for statutory therapeutic remedies (physiotherapy, occupational therapy, speech/swallowing therapy, podiatry, nutritional therapy) under German form Muster 13category discriminator so remedy orders are not confused with PraxisReferralDE (reusable incoming or outgoing referral) or laboratory/imaging ServiceRequest profilesEVO_VS_HLM_*) and KBV Heilmittel-DiagnosegruppeDistinction from referral: A referral (PraxisReferralDE) transfers care responsibility or requests another clinician's opinion. A therapeutic remedy order authorizes a defined course of remedy treatments for the patient — same ServiceRequest resource type, different clinical and regulatory semantics. Do not nest remedy orders under referral profiles.