HpsResult class

Ergebnis eines Zahlvorgangs samt Kennung und Klaerungsverlauf.

transactionId ist IMMER gesetzt, auch bei CardPaymentOutcome.unresolved -- ohne sie sind Statusabfrage und Storno unerreichbar, und genau daran ist der Vorfall vom 24.08.2026 gescheitert.

Constructors

HpsResult({required CardPaymentOutcome outcome, required String transactionId, TransactionResponse? response, TransactionResponse? lastResponse, HpsCodeReason? reason, List<String> steps = const <String>[]})
const

Properties

hashCode int
The hash code for this object.
no setterinherited
isApproved bool
no setter
isHostUncertain bool
true, wenn der Ausgang offen ist, weil das Terminal eine Stoerung beim oder nach dem hobex-Host meldete (siehe HpsCodeEffect.hostUncertain).
no setter
isUnresolved bool
no setter
lastResponse TransactionResponse?
Die letzte Antwort des Terminals bei CardPaymentOutcome.unresolved, sofern ueberhaupt eine ankam -- auch wenn sie nichts entschied (9027, 9900, ein unbekannter Code). NIE ein Beleg, sondern Material fuer Anzeige und Katalog: am 02.09.2026 sah der Bediener bei einer Antwort 55 "PIN falsch" nur "Ausgang unklar", musste raten und buchte eine abgelehnte Zahlung als bezahlt. Der Klartext des Terminals haette die Entscheidung getragen. Bei schluessigem Ausgang null -- die Antwort steht dann in response.
final
mayRetrySafely bool
Nur bei CardPaymentOutcome.declined steht fest, dass nichts belastet wurde.
no setter
outcome CardPaymentOutcome
final
reason HpsCodeReason?
Worauf die Kasse reagiert -- der Grund hinter dem Ausgang, mit dem Satz fuer den Bediener in HpsCodeReason.hint.
final
response TransactionResponse?
Die Antwort des Terminals, die den Ausgang FESTGESCHRIEBEN hat -- nur bei CardPaymentOutcome.approved und CardPaymentOutcome.declined. Bei CardPaymentOutcome.unresolved bleibt sie null: eine Nicht-Aussage darf nicht als Beleg mitgegeben werden. Was das Terminal zuletzt gesagt hat, steht dann in lastResponse.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
steps List<String>
Verlauf der Klaerung, in Reihenfolge -- fuer Anzeige und Protokoll.
final
transactionId String
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited