Error Handling
Target audience: consumers of the integration layer.
All public terminal operations return models from api.model. The application layer should handle these models rather than PSDK-specific status codes.
TerminalInitResult
SuccessFailure(errorMessage)
Normal startup is performed via ApiModule.start(scope), see Quick Start.
PaymentResult
Success(paymentInfo, appSpecificData, maskedPan, brand)Failure(paymentInfo, error)Aborted
Persist appSpecificData from Success if void operations need to be supported. The void flow is described in Void.
PaymentError
DeviceNotConnectedDeviceBusyTimeoutAbortedStartFailedSessionNotActiveCardReadFailedWrongCardPaymentAlreadyInProgressDeclined(message)SdkError(message)Unknown(message)
Function-specific error cases are described on their respective pages:
PrintResult
SuccessFailure
Failure contains:
errorMessage: user-facing message.reason: technical message for logging.
Printing flows are described in Receipt Printing.