Beschreibung
Titel | Auftrag stornieren |
---|---|
Kurzbeschreibung | Folgender Ablauf beschreibt die typischen Interaktionen zwischen Auftraggeber und Leistungserbringer im Anwendungsfall "Auftrag stornieren". Der Auftraggeber beantragt die Stornierung eines laufenden Auftrages beim Leistungserbringer. Der Leistungserbringer prüft den Antrag und kann diesen zurückweisen oder umsetzen. Dabei werden die für diesen Ablauf erforderlichen Auftrags-Status durchlaufen und die für diesen Ablauf relevanten Informationen übermittelt. |
Vorbedingung | Der zu stornierende Auftrag wurde angelegt und ist noch nicht abgeschlossen. Das heißt, er befindet sich in keinem der folgenden Status: completed, closed, rejected, failed oder cancelled. Darüber hinaus muss die kaufmännische Validierung abgeschlossen sein, so dass sich der Auftrag nicht mehr im Status achnowledged befindet. Durch Versand des Milestones mit dem name = pointOfNoReturn kann der Leistungserbringer darüber hinaus den Zeitraum für den Versand eines Stornos weiter einschrämken. |
Auslöser | Der Auftraggeber beantragt die Stornierung eines laufenden Auftrages beim Leistungserbringer durch Erzeugung einer Task Resource vom Typ CancelProductOrder. |
Ergebnis | Der Anwendungsfall hat zwei mögliche Ergebnisse:
|
Ablauf
Business Regel
Handet es sich bei dem Auftrag um die Category Providerwechsel oder Verbundleistung, muss der LE im Falle eines erfolgreichen Cancels nach Versenden des StatusChangeEvents(Cancelled) an den AGauf die Kündigungs-PO durch einen StatusChangeEvent(Rejected) an den AGab beantworten.
Beispiele:
ProductOrderMilestoneEvent (PONR) (1)
ProductOrderMilestoneEvent | ||
Felder | Daten | API Feld |
---|---|---|
technisches Event Datum | 2022-05-12T08:45:00+02:00 | EventTime |
Typ des Product Order Milestone Events | pointOfNoReturn | name |
Datum und Uhrzeit des Milestones | 2022-05-12T08:45:00+02:00 | milestoneDate |
Meldecode des Milestones | 1087 | milestoneMessage.code |
Meldungstext des Milestones | Eine Stornierung ist nicht möglich. | milestoneMessage.text |
Post CancelProductOrder (2)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T08:45:00+02:00 | EventTime |
zu stornierende Order (bekannt durch Events aus der Order durch LE gesetzt) | 388a4963-f168-4603-99e8-477200099d91 | productOrder.id |
Response (3)
CancelProductOrderStateChangeEvent inProgress (4)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:30:00+02:00 | EventTime |
Cancel Status Wechsel auf inProgress Status: Eventdate: | inProgress 2022-05-11T11:30:00+02:00 | CancelProductOrder.state CancelProductOrder.stateChangeDate |
Storno zurückgewiesen
CancelProductOrderStateChangeEvent rejected (5)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:32:00+02:00 | EventTime |
Cancel Status Wechsel auf rejected Status: Eventdate: Meldecode: Meldetext: | rejected 2022-05-11T11:32:00+02:00 1087 "Eine Stornierung ist nicht möglich. " | CancelProductOrder.state CancelProductOrder.stateChangeDate CancelProductOrder.stateChangeReason.code CancelProductOrder.stateChangeReason.text |
Antrag wird bearbeitet/ Auftrag wird storniert
POST ProductOrderStateChangeEvent (assessingCancellation) (6)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:32:00+02:00 | EventTime |
Auftrag Status Wechsel assessingCancellation Typ der Meldung: Status: Eventdate: | ProductOrderStateChangeEvent assessingCancellation 2022-05-12T11:32:00+02:00 | ProductOrderStateChangeEvent/@type ProductOrder.state ProductOrder.stateChangeDate |
POST ProductOrderAttributeValueChangeEvent (9)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:33:00+02:00 | EventTime |
Storno ist kostenpflichtig (optional) Typ der Meldung: Kostenpflichtiger Vorgang: Eventdate: | ProductOrderAttributeValueChangeEvent True 2022-05-12T11:33:00 | ProductOrderAttributeValueChangeEvent/@type@type ProductOrder.orderIsChargingRelevant ProductOrderAttributeValueChangeEvent.eventTime |
POST ProductOrderStateChangeEvent (cancelled) (10)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:34:00+02:00 | EventTime |
Auftrag Status Wechsel cancelled Typ der Meldung: Status: Eventdate: Meldecode: Meldetext: | ProductOrderStateChangeEvent cancelled 2022-05-12T11:34:00+02:00 "0017" "Stornierung durchgeführt." | ProductOrderStateChangeEvent/@type ProductOrder.state ProductOrder.stateChangeDate ProductOrder.stateChangeReason.code ProductOrder.stateChangeReason.description |
POST CancelProductOrderStateChangeEvent (done)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:35:00+02:00 | EventTime |
Cancel Status Wechsel auf Done Typ der Meldung: Status: Eventdate: Meldecode: Meldetext: | CancelProductOrderStateChangeEvent done 2022-05-12T11:35:00+02:00 "0012" "Stornoauftrag erfolgreich" | CancelProductOrderStateChangeEvent/@type CancelProductOrder.state CancelProductOrder.stateChangeDate CancelProductOrder.stateChangeReason.code CancelProductOrder.stateChangeReason.text |
Antrag wird bearbeitet / Auftrag ist nicht storniert
POST ProductOrderStateChangeEvent (assessingCancellation) (6)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:32:00+02:00 | EventTime |
Auftrag Status Wechsel assessingCancellation Typ der Meldung: Status: Eventdate: | ProductOrderStateChangeEvent assessingCancellation 2022-05-12T11:32:00+02:00 | ProductOrderStateChangeEvent/@type ProductOrder.state ProductOrder.stateChangeDate |
POST ProductOrderStateChangeEvent (inProgress)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:33:00+02:00 | EventTime |
Auftrag Status Wechsel auf den vorherigen Auftragsstatus Typ der Meldung: Status: Eventdate: | ProductOrderStateChangeEvent accepted, inProgress oder pending 2022-05-12T11:33:00+02:00 | ProductOrderStateChangeEvent/@type ProductOrder.state ProductOrder.stateChangeDate |
POST CancelProductOrderStateChangeEvent (rejected) (8)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:32:00+02:00 | EventTime |
Cancel Status Wechsel auf rejected Status: Eventdate: Meldecode: Meldetext: | rejected 2022-05-11T11:32:00+02:00 1087 "Eine Stornierung ist nicht möglich. " | CancelProductOrder.state CancelProductOrder.stateChangeDate CancelProductOrder.stateChangeReason.code CancelProductOrder.stateChangeReason.text |