R8: Manuelles Markieren von Rechnungen und Dokumenten

gematik logo Feedback erbeten: Zu dieser Markierungs-Operation wird ausdrücklich um Feedback gebeten.

Die nachfolgende Interaktion ist relevant für den FD als Server, sowie für das DiPag FdV als Client. Anwendungsfall AF_10160 MUSS durch den FD über die spezifizierte API umgesetzt werden. Die Vorgaben aus "Tabelle 24: Use Case Manuelles Markieren von Rechnungen und Dokumenten" des Feature-Dokumentes MÜSSEN eingehalten werden durch den FD.

HTTP-Methode POST
Endpunkt /DocumentReference/[id]/$process-flag
API-Zustand HTTP-Status-Code
Erfolgsfall 200 - OK
Weitere Parameter in HTTP-Anfrage enthalten 400 - Bad Request
Syntax für Parameter ist nicht korrekt oder Kardinalitäten werden nicht eingehalten 400 - Bad Request
Verpflichtende Zusatzinformationen zu einer Markierung fehlen oder eine nur einmal zulässige Markierung wird mehrfach übergeben 400 - Bad Request
Kein valides Access-Token wird mitgesendet 401 - Unauthorized
Autorisierter Benutzer verfügt über keine ausreichende Berechtigung die Interaktion auszuführen 403 - Forbidden
Fehlende Berechtigung für den Rechnungsempfänger die Dokumentenmarkierung zu verändern 404 - Not Found
Operation wird auf nicht existierender DocumentReference-Ressource aufgerufen 404 - Not Found
Andere HTTP-Methode wird verwendet 405 - Method Not Allowed

Die Input- und Output-Parameter werden durch die OperationDefinition https://gematik.de/fhir/dipag/OperationDefinition/ProcessFlag beschrieben.

Invocations

URL: [base]/DocumentReference/[id]/$process-flag

This operation changes content

Parameters (In)

NameCardinalityTypeBindingDocumentation
markierung0..*Coding

Eine Markierung des Dokuments. Es gilt das Complete-Replacement-Prinzip; der gesamte übermittelte Markierungssatz ersetzt den bisherigen. Wird der Parameter nicht übergeben (0 Markierungen), werden alle änderbaren Markierungen entfernt (Löschen). Die Markierungen 'persönlich' und 'abgerufen durch KTR' bleiben hiervon ausgenommen.

Return Values (Out)

NameCardinalityTypeDocumentation
meta1..1Meta

Vollständiges Meta-Element des Rechnungsdokuments / des Anhangs inkl. Extension (siehe DiPagDocumentReferenceMarkierung) zur Erfassung der Zusatzinformationen der Markierung

Beispiele

HTTP POST [fachdienst-endpunkt]/DocumentReference/[id]/$process-flag
Parameters
<Parameters xmlns="http://hl7.org/fhir">
<id value="BeispielParameterProcessFlagInput" />
<name value="markierung" />
<name value="markierung" />
<system value="https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs" />
<code value="bezahlt" />
</valueCoding>
</part>
<name value="zeitpunkt" />
<valueDateTime value="2024-05-30T13:00:00.001+02:00" />
</part>
<name value="details" />
<valueString value="Bezahlt mit falschem Betreff" />
</part>
</parameter>
<name value="markierung" />
<name value="markierung" />
<system value="https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs" />
<code value="gelesen" />
</valueCoding>
</part>
</parameter>
</Parameters>
{
"resourceType": "Parameters",
"id": "BeispielParameterProcessFlagInput",
{
"name": "markierung",
"part": [
{
"name": "markierung",
"system": "https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs",
"code": "bezahlt"
}
},
{
"name": "zeitpunkt",
"valueDateTime": "2024-05-30T13:00:00.001+02:00"
},
{
"name": "details",
"valueString": "Bezahlt mit falschem Betreff"
}
]
},
{
"name": "markierung",
"part": [
{
"name": "markierung",
"system": "https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs",
"code": "gelesen"
}
}
]
}
]
}

Antwort des Fachdienstes im Erfolgsfall:

HTTP 200 OK

mit Body:

Parameters
<Parameters xmlns="http://hl7.org/fhir">
<id value="BeispielParameterProcessFlagOutput" />
<name value="meta" />
<extension url="https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung">
<extension url="markierung">
<system value="https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs" />
<code value="bezahlt" />
</valueCoding>
</extension>
<extension url="zeitpunkt">
<valueDateTime value="2024-05-30T13:00:00.123+02:00" />
</extension>
<extension url="details">
<valueString value="Bezahlt mit falschem Betreff" />
</extension>
</extension>
<extension url="https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung">
<extension url="markierung">
<system value="https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs" />
<code value="gelesen" />
</valueCoding>
</extension>
</extension>
<versionId value="2" />
<lastUpdated value="2024-05-31T13:00:00.123+02:00" />
<tag>
<system value="https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnungsstatus-cs" />
<code value="erledigt" />
</tag>
</valueMeta>
</parameter>
</Parameters>
{
"resourceType": "Parameters",
"id": "BeispielParameterProcessFlagOutput",
{
"name": "meta",
{
{
"url": "markierung",
"system": "https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs",
"code": "bezahlt"
}
},
{
"url": "zeitpunkt",
"valueDateTime": "2024-05-30T13:00:00.123+02:00"
},
{
"url": "details",
"valueString": "Bezahlt mit falschem Betreff"
}
],
"url": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung"
},
{
{
"url": "markierung",
"system": "https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnung-markierung-cs",
"code": "gelesen"
}
}
],
"url": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung"
}
],
"versionId": "2",
"lastUpdated": "2024-05-31T13:00:00.123+02:00",
"tag": [
{
"system": "https://gematik.de/fhir/dipag/CodeSystem/dipag-rechnungsstatus-cs",
"code": "erledigt"
}
]
}
}
]
}

Verarbeitungsschritte im FD

  • Die Operation folgt dem Complete-Replacement-Prinzip: Der übermittelte Markierungssatz ersetzt den bisherigen Markierungssatz des Dokuments vollständig. Markierungen, die nicht im Request enthalten sind, werden entfernt. Der Request MUSS daher stets alle weiterhin gültigen Markierungen inklusive ihrer jeweiligen Zusatzinformationen vollständig enthalten.

  • Wird kein markierung-Parameter übergeben (leerer Markierungssatz), MUSS der FD alle änderbaren Markierungen des Dokuments entfernen. Da $process-flag der einzige Endpunkt zur Pflege der Markierungen ist, wird hierüber auch das vollständige Löschen der Markierungen unterstützt.

  • Die Markierungen persönlich und abgerufen durch KTR können über diese Operation weder gesetzt noch entfernt werden; übermittelte Werte dieser Markierungen werden ignoriert und bleiben von der Ersetzung bzw. Löschung unberührt.

  • Der FD MUSS anhand der übergebenen Parameter die Extension DiPagDocumentReferenceMarkierung im Meta-Element der DocumentReference entsprechend erstellen, aktualisieren und entfernen.

  • Der FD MUSS strikt validieren, dass zu jeder übermittelten Markierung die verpflichtenden Zusatzinformationen vollständig vorhanden sind (z. B. der Zusatz artDerArchivierung bei der Markierung archiviert sowie die Kostenträger-Referenz bei der Markierung abgerufen). Fehlen erforderliche Informationen, MUSS der FD den Request mit 400 - Bad Request ablehnen; es werden keine Default-Werte angenommen. Diese Prüfung geht über die im Profil hinterlegten Invarianten hinaus, die lediglich die umgekehrte Richtung (Zulässigkeit eines Zusatzes in Abhängigkeit vom Markierungstyp) einschränken.

  • Enthält ein Request mehrere Markierungen eines Typs, der auf einer Rechnung nur einmal gesetzt werden kann (z. B. gelesen oder die Art der Archivierung), MUSS der FD den Request mit 400 - Bad Request ablehnen.

Die folgende Tabelle zeigt je Markierungstyp, ob eine Mehrfach-Markierung zulässig ist, wann und durch wen die Markierung verwendet wird sowie welche ergänzenden Informationen verpflichtend bzw. optional sind:

Typ der Markierung Mehrfach-Markierung? Verwendung (wann und durch wen) ergänzende Informationen
Eingereicht (per Frontend) ja, eine pro Kostenträger Bei Einreichung durch Versicherten - Zeitpunkt
- optional: Details
- optional: Referenz auf den Kostenträger (im MVP: nur Freitext)
Eingereicht (per Post) ja, eine pro Kostenträger Bei Postversand durch Versicherten - Zeitpunkt
- optional: Details
- optional: Referenz auf den Kostenträger (im MVP: nur Freitext)
Geteilt ja, eine pro Kostenträger Bei Teilen durch den Versicherten - Zeitpunkt
- optional: Details
- optional: Referenz auf den Kostenträger (im MVP: nur Freitext)
Abgerufen durch Kostenträger ja, eine pro Kostenträger Bei Abruf eines Dokuments/einer Rechnung durch den Kostenträger, durch den Fachdienst - Zeitpunkt
- Referenz auf den Kostenträger, der abgerufen hat. (im MVP: nur Freitext)
Gelesen nein Beim Einsehen von Rechnungen oder Dokumenten durch den Versicherten im DiPag FdV. Ist die Markierung vorhanden, gilt die Rechnung oder das Dokument als gelesen. Ist die Markierung nicht vorhanden, gilt das Dokument oder die Rechnung als ungelesen.
Bezahlt nein Bei Zahlung durch den Versicherten - Zeitpunkt
- optional: Details
Archiviert nein Bei Archivierung durch den Versicherten - Art der Archivierung: ePA oder persönliche Ablage
- optional: Zeitpunkt
- optional: Details
Persönlich nein Durch den Rechnungsersteller bei Versenden von Dokumenten, die ausschließlich nur persönlich an den Versicherten gerichtet sind. - optional: Details