R2: Rechnung validieren/einreichen (Bulk)
Die nachfolgende Interaktion ist relevant für den FD als Server, sowie für das RE-PS als Client. Anwendungsfall AF_10136 MUSS durch den FD über die spezifizierte API umgesetzt werden. Die Vorgaben aus "Tabelle 15: Use Case Rechnung mit Dokumenten validieren und versenden" des Feature-Dokumentes MÜSSEN eingehalten werden durch den FD.
| HTTP-Methode | POST |
| Endpunkt | / (Root-Endpunkt) |
Für die Ausführung der Operation gelten die gleichen Vorgaben wie aus R1: Rechnung mit Dokumenten validieren und versenden. Die Operation $invoice-submit kann für innerhalb eines Batch-Bundles mehrfach, auch für unterschiedliche Dokumente aufgerufen werden. Es gelten die entsprechenden Vorgaben aus der FHIR-Kernspezifikation.
Asynchrone Verarbeitung
Diese Interaktion ist aufgrund potenziell großer Datenmengen asynchron vom FD auszuführen.
Dies MUSS der Client mittels eines Prefer: respond-async-Headers nach RFC7240 dem FD signalisieren.
| API-Zustand | HTTP-Status-Code |
|---|---|
| Erfolgsfall | 202 - Accepted |
| Eine DocumentReferenz mit dem selben Identifier extistiert bereits | 200 - OK In diesem Fall wird der ursprüngliche Response mit Rechnungs-Token erneut zurück gegeben |
| 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 |
| Kein valides Access-Token wird mitgesendet | 401 - Unauthorized |
| Autorisierter Benutzer verfügt über keine ausreichende Berechtigung die Interaktion auszuführen | 403 - Forbidden |
| Andere HTTP-Methode wird verwendet | 405 - Method Not Allowed |
In einem Location-Header MUSS der FD dem RE-PS eine absolute URL mitteilen unter welcher das RE-PS per Polling prüfen kann, ob die Interaktion abgeschlossen wurde und entsprechende Rückgabewerte seitens der $retrieve-Operation vorliegen. Der Aufbau der Location-URL MUSS aus kryptografisch zufälligen Teilen bestehen, sodass der Aufbau nicht deterministisch ermittelt oder erraten werden kann. Der Server SOLLTE RE-PS-Clients mit einem HTTP-Status-Code 429 Too Many Requests abweisen, falls nach dem Ermessen des FDs die Location-URL zu häufig geprüft wird. Der FD SOLLTE einen Retry-After-Header entsprechend den Vorgaben aus der FHIR-Kernspezifikation verwenden.
Nach der Verarbeitung des batch-Bundles MUSS der FD das batch-response-Bundle unter der Location-URL bereitstellen, welches die Ergebnisse entsprechnd der Verarbeitung der einzelnen Dokumente nach AF_10271 enthält. Es ist zu beachten, dass der FD die Autorisierung für jedes Dokument gemäß den Vorgaben zu AF_10271 individuell prüfen MUSS. Der FD MUSS sicherstellen, dass das batch-response-Bundle nur einem validen Access-Token abgerufen werden kann.
Sollte die Location-URL unvorhergesehen nicht durch den RE-PS abfragbar sein (Systemausfall oder andere Fehler), kann das batch-Bundles erneut versendet werden. Bereits beim ersten Versand erfolgreich verarbeitete Daten werden in dem Fall mit 200 - OK bestätigt und die ursprüngliche Response wird zurückgegeben. Es kommt folglich nicht zu Dubletten. Der Abgleich erfolgt auf Basis des DocumentReference.identifier, welcher nur einmalig im FD vorkommen darf. Es wird ein Rate-Limit für die Bulk Schnittstelle geben.
Beispiel
HTTP POST [fachdienst-endpunkt]/
| Bundle |
| id : BulkSubmitExample |
| type : batch |
| entry |
| resource |
| id : BeispielParameterSubmitInput3-LE |
| parameter |
| name : rechnung |
| resource |
| id : BeispielDocumentReferenceRechnung3-LE |
| extension |
| url : http://example.org/StructureDefinition/signatur |
| value |
| type |
| system : urn:iso-astm:E1762-95:2013 |
| code : 1.2.840.10065.1.12.1.1 |
| display : Author's Signature |
| when : 2015-02-07T13:28:17.239+02:00 |
| who |
| display : Arzt |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : AM010106 |
| display : Rechnung ambulante/stationäre Behandlung |
| subject |
| identifier |
| system : http://fhir.de/sid/gkv/kvid-10 |
| value : A000000000 |
| description : Rechnung Reiseimpfung vom 10.01.2024 |
| content |
| attachment |
| contentType : application/pdf |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESPDF00 |
| content |
| attachment |
| contentType : application/xml |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESXML00 |
| format |
| code : xrechnung |
| content |
| attachment |
| contentType : application/fhir+xml |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESXML00 |
| format |
| code : gematik-dipag |
| parameter |
| name : anhang |
| resource |
| id : BeispielDocumentReferenceSonstigesDokument3-LE |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : PT130102 |
| display : Molekularpathologiebefund |
| subject |
| reference : Patient/BeispielPatient3-FD |
| description : Molekularpathologiebefund vom 31.12.21 |
| content |
| attachment |
| contentType : application/pdf |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESPDF00 |
| request |
| method : POST |
| url : /Patient/BeispielPatient3-FD/$invoice-submit |
| entry |
| resource |
| id : BeispielParameterSubmitInput3.1-LE |
| parameter |
| name : rechnung |
| resource |
| id : BeispielDocumentReferenceRechnung3.1-LE |
| extension |
| url : http://example.org/StructureDefinition/signatur |
| value |
| type |
| system : urn:iso-astm:E1762-95:2013 |
| code : 1.2.840.10065.1.12.1.1 |
| display : Author's Signature |
| when : 2015-02-07T13:29:17.239+02:00 |
| who |
| display : Arzt |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : AM010106 |
| display : Rechnung ambulante/stationäre Behandlung |
| subject |
| identifier |
| system : http://fhir.de/sid/gkv/kvid-10 |
| value : A000000000 |
| description : Rechnung Reiseimpfung vom 10.01.2024 |
| content |
| attachment |
| contentType : application/pdf |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESPDF00 |
| content |
| attachment |
| contentType : application/xml |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESXML00 |
| format |
| code : xrechnung |
| content |
| attachment |
| contentType : application/fhir+xml |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESXML00 |
| format |
| code : gematik-dipag |
| parameter |
| name : anhang |
| resource |
| id : BeispielDocumentReferenceSonstigesDokument3.1-LE |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : PT130102 |
| display : Molekularpathologiebefund |
| subject |
| reference : Patient/BeispielPatient3-FD |
| description : Molekularpathologiebefund vom 30.12.21 |
| content |
| attachment |
| contentType : application/pdf |
| data : DIESISTNUREINBEISPIELDIESISTKEINVALIDESPDF00 |
| request |
| method : POST |
| url : /Patient/BeispielPatient3-FD/$invoice-submit |
Antwort des Fachdienstes nach der Verarbeitung des batch-Bundles:
HTTP 200 OK
mit Body:
| Bundle |
| id : BulkSubmitExampleOutput |
| type : batch-response |
| entry |
| fullUrl : [FD-endpunkt]/Parameters/BeispielParameterSubmitOutput3-FD |
| resource |
| id : BeispielParameterSubmitOutput3-FD |
| parameter |
| name : rechnung |
| resource |
| id : BeispielDocumentReferenceRechnung3-FD |
| identifier |
| system : https://gematik.de/fhir/sid/dipag-token |
| value : 123-456-789 |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : AM010106 |
| display : Rechnung ambulante/stationäre Behandlung |
| subject |
| identifier |
| system : http://fhir.de/sid/gkv/kvid-10 |
| value : A000000000 |
| relatesTo |
| code : transforms |
| target |
| reference : DocumentReference/BeispielDocumentReferenceRechnung3-LE |
| description : Rechnung Reiseimpfung vom 10.01.2024 |
| content |
| attachment |
| contentType : application/pdf |
| url : [FD-endpunkt]/Binary/pdf-mit-token-barcode |
| content |
| attachment |
| contentType : application/xml |
| url : [FD-endpunkt]/Binary/xrechnung |
| format |
| code : xrechnung |
| content |
| attachment |
| contentType : application/fhir+xml |
| url : [FD-endpunkt]/Binary/invoice |
| format |
| code : dipag |
| parameter |
| name : anhang |
| resource |
| id : BeispielDocumentReferenceSonstigesDokument3-FD |
| identifier |
| system : https://gematik.de/fhir/sid/dipag-token |
| value : 987-654-321 |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : PT130102 |
| display : Molekularpathologiebefund |
| subject |
| reference : Patient/BeispielPatient3-FD |
| relatesTo |
| code : transforms |
| target |
| reference : DocumentReference/BeispielDocumentReferenceSonstigesDokument3-LE |
| description : Molekularpathologiebefund vom 31.12.21 |
| content |
| attachment |
| contentType : application/pdf |
| url : [FD-endpunkt]/Binary/patho-mit-token-barcode |
| entry |
| fullUrl : [FD-endpunkt]/Parameters/BeispielParameterSubmitOutput3.1-FD |
| resource |
| id : BeispielParameterSubmitOutput3.1-FD |
| parameter |
| name : rechnung |
| resource |
| id : BeispielDocumentReferenceRechnung3.1-FD |
| identifier |
| system : https://gematik.de/fhir/sid/dipag-token |
| value : 123-456-987 |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : AM010106 |
| display : Rechnung ambulante/stationäre Behandlung |
| subject |
| identifier |
| system : http://fhir.de/sid/gkv/kvid-10 |
| value : A000000000 |
| relatesTo |
| code : transforms |
| target |
| reference : DocumentReference/BeispielDocumentReferenceRechnung3-LE |
| description : Rechnung Reiseimpfung vom 10.01.2024 |
| content |
| attachment |
| contentType : application/pdf |
| url : [FD-endpunkt]/Binary/pdf-mit-token-barcode |
| content |
| attachment |
| contentType : application/xml |
| url : [FD-endpunkt]/Binary/xrechnung |
| format |
| code : xrechnung |
| content |
| attachment |
| contentType : application/fhir+xml |
| url : [FD-endpunkt]/Binary/invoice |
| format |
| code : gematik-dipag |
| parameter |
| name : anhang |
| resource |
| id : BeispielDocumentReferenceSonstigesDokument3.1-FD |
| identifier |
| system : https://gematik.de/fhir/sid/dipag-token |
| value : 987-654-321 |
| status : current |
| type |
| coding |
| system : http://dvmd.de/fhir/CodeSystem/kdl |
| code : PT130102 |
| display : Molekularpathologiebefund |
| subject |
| reference : Patient/BeispielPatient3-FD |
| relatesTo |
| code : transforms |
| target |
| reference : DocumentReference/BeispielDocumentReferenceSonstigesDokument3-LE |
| description : Molekularpathologiebefund vom 31.12.21 |
| content |
| attachment |
| contentType : application/pdf |
| url : [FD-endpunkt]/Binary/patho-mit-token-barcode |