Operation API: Dispensierung stornieren (E-Rezept-Fachdienst)

Die Operation $cancel-dispensation-erp ermöglicht das Stornieren oder Rückgängigmachen einer Arzneimittelabgabe im Medication Service. Diese Operation wird vom E-Rezept-Fachdienst ausgeführt, wenn eine Arzneimittelabgabe irrtümlich erfolgt ist oder wenn eine Aktualisierung in der Arzneimittelhistorie des Versicherten notwendig wird. Nachdem der E-Rezept-Fachdienst die Operation durchführt, wird die betreffende Abgabe im Medication Service des Versicherten als storniert bzw. rückgängig gemacht markiert, was zu einer genauen und aktuellen Erfassung der Arzneimitteldaten des Versicherten beiträgt.

OperationDefinition

Operation Definition: Cancel Dispensation eRP

Geschäftslogik

Erstellung des Wertes für den RxPrescriptionProcessIdentifier

Der im Medication Service erzeugte Identifier folgt dem Schema prescriptionId + "_" + authoredOn[YYYYMMDD]. Dabei wird die Verschreibungs-ID (Prescription-ID) mit dem Datum der Verschreibung kombiniert, um einen eindeutigen Identifier zu erzeugen. Das Datum wird im Format YYYYMMDD (Jahr, Monat, Tag) angegeben.

Beispiel

{
    "system": "https://gematik.de/fhir/epa-medication/sid/rx-prescription-process-identifier",
    "value": "160.153.303.257.459_20250122"
}

Voraussetzungen

Dem Medication Service MÜSSEN zur Auswertung in Operationen für jede Aktivität die folgenden Informationen bereitstehen:

  • Name des Nutzers
  • Nutzergruppe/Rolle ((profession-)oid)
  • Kennung (Telematik-ID oder KVNR)
  • Hinweis auf eine gültige Befugnis des aktuellen Benutzers (requestor)

HTTP Header-Parameter

Ein ePA-Client MUSS die folgenden HTTP Header bei einer Anfrage an den Medication Service setzen:

Name Anforderung Datentyp Beschreibung
x-insurantid MUSS String Health Record Identifier
x-useragent KANN String User Agent Information
X-Request-ID MUSS String UUID der Nachricht

Wiederholungsintervalle

Die folgenden Wiederholungsintervalle werden im Falle einer Fehlerantwort definiert:

  • '409' Conflict (statusMismatch)
    • etwa 24 Stunden
  • '500' Internal Error
    • etwa 10 Minuten

Erlaubte Nutzergruppen

professionOID
oid_erp-vau

Interaktion ($cancel-dispensation-erp)

POST [base]/epa/medication/api/v1/fhir/$cancel-dispensation-erp

OperationId: cancelDispensation_MedicationSvc

Beispielanfrage

{
    "resourceType": "Parameters",
    "id": "example-epa-op-cancel-dispensation-erp-input-parameters-1",
    "meta": {
        "profile":  [
            "https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-cancel-dispensation-erp-input-parameters"
        ]
    },
    "parameter":  [
        {
            "name": "rxDispensation",
            "part":  [
                {
                    "name": "prescriptionId",
                    "valueIdentifier": {
                        "system": "https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId",
                        "value": "160.153.303.257.459"
                    }
                },
                {
                    "name": "authoredOn",
                    "valueDate": "2025-01-22"
                }
            ]
        }
    ]
}
<Parameters xmlns="http://hl7.org/fhir">
    <id value="example-epa-op-cancel-dispensation-erp-input-parameters-1" />
    <meta>
        <profile value="https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-cancel-dispensation-erp-input-parameters" />
    </meta>
    <parameter>
        <name value="rxDispensation" />
        <part>
            <name value="prescriptionId" />
            <valueIdentifier>
                <system value="https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId" />
                <value value="160.153.303.257.459" />
            </valueIdentifier>
        </part>
        <part>
            <name value="authoredOn" />
            <valueDate value="2025-01-22" />
        </part>
    </parameter>
</Parameters>

Beispielantwort

{
    "resourceType": "Parameters",
    "id": "example-epa-op-rx-dispensation-erp-output-parameters-1",
    "meta": {
        "profile":  [
            "https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-rx-dispensation-erp-output-parameters"
        ]
    },
    "parameter":  [
        {
            "name": "rxDispensation",
            "part":  [
                {
                    "name": "prescriptionId",
                    "valueIdentifier": {
                        "system": "https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId",
                        "value": "160.153.303.257.459"
                    }
                },
                {
                    "name": "authoredOn",
                    "valueDate": "2025-01-22"
                },
                {
                    "name": "operationOutcome",
                    "resource": {
                        "resourceType": "OperationOutcome",
                        "id": "255002c7-aa1b-4163-bdd4-ede482453cca",
                        "meta": {
                            "profile":  [
                                "https://gematik.de/fhir/epa/StructureDefinition/epa-operation-outcome"
                            ]
                        },
                        "issue":  [
                            {
                                "severity": "information",
                                "code": "informational",
                                "details": {
                                    "coding":  [
                                        {
                                            "code": "MEDICATIONSVC_OPERATION_SUCCESS",
                                            "system": "https://gematik.de/fhir/epa/CodeSystem/epa-operation-outcome-codes-cs",
                                            "display": "Operation Successfully Completed in Medication Service"
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        }
    ]
}
<Parameters xmlns="http://hl7.org/fhir">
    <id value="example-epa-op-rx-dispensation-erp-output-parameters-1" />
    <meta>
        <profile value="https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-rx-dispensation-erp-output-parameters" />
    </meta>
    <parameter>
        <name value="rxDispensation" />
        <part>
            <name value="prescriptionId" />
            <valueIdentifier>
                <system value="https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId" />
                <value value="160.153.303.257.459" />
            </valueIdentifier>
        </part>
        <part>
            <name value="authoredOn" />
            <valueDate value="2025-01-22" />
        </part>
        <part>
            <name value="operationOutcome" />
            <resource>
                <OperationOutcome>
                    <id value="255002c7-aa1b-4163-bdd4-ede482453cca" />
                    <meta>
                        <profile value="https://gematik.de/fhir/epa/StructureDefinition/epa-operation-outcome" />
                    </meta>
                    <issue>
                        <severity value="information" />
                        <code value="informational" />
                        <details>
                            <coding>
                                <system value="https://gematik.de/fhir/epa/CodeSystem/epa-operation-outcome-codes-cs" />
                                <code value="MEDICATIONSVC_OPERATION_SUCCESS" />
                                <display value="Operation Successfully Completed in Medication Service" />
                            </coding>
                        </details>
                    </issue>
                </OperationOutcome>
            </resource>
        </part>
    </parameter>
</Parameters>

Antwort-Status-Codes

Status Code Bedingung Error Code Bemerkung
200 Successful operation EPA OperationOutcome
400 An Operation Error EPA OperationOutcome
403 Requestor role is not in the list of allowed usergroups invalidOid
403 ID-Token or Insurant-ID mismatch EPA OperationOutcome
404 An Operation Error EPA OperationOutcome
409 Health record is in state SUSPENDED statusMismatch (siehe 'Wiederholungsintervalle')
423 If the insurant objected to the submission of prescription and dispensation data into the ePA system, the Medication Service is locked. locked
500 Any other error internalError (siehe 'Wiederholungsintervalle')

Serviceübergreifende Error Codes ohne Verweis auf EPA OperationOutcome MÜSSEN mit dem entsprechenden HTTP Status Code vom Medication Service mit dem Media Type application/json nach folgendem Schema zurückgegeben werden:

{
  "errorCode": "statusMismatch"
}