Terminal
public class Terminal : CustomStringConvertible
Terminal base implementation. Create instance of TerminalApi to connect to payment terminal.
Most simple usage is using synchronous methods like this example:
// Create settings with Terminal-ID of terminal to connect to
com.six.TerminalSettings settings = new com.six.TerminalSettings()
settings.setTerminalId(12345678
)
// Create terminal
com.six.Terminal terminal = new com.six.Terminal(settings)
// Run transaction
terminal.transaction(com.six.constants.TransactionType.PURCHASE,
new com.six.Amount(8.5, com.six.constants.Currency.CHF))
// Disconnect from terminal and clean up properly
terminal.dispose()
The above example blocks until the transaction finishes. To create a responsive application use asynchronous methods like this example:
// Asynchronous listener handling terminal events.
class TerminalHandler extends com.six.DefaultTerminalListener {
{@literal @}Override
public func transactionCompleted(com.six.TimEvent event, final com.six.TransactionResponse data) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
{@literal @}Override
public func run() {
// handle transaction finished using data
}
})
}
}
// Create settings with Terminal-ID of terminal to connect to
com.six.TerminalSettings settings = new com.six.TerminalSettings()
settings.setTerminalId(12345678
)
// Create terminal
com.six.Terminal terminal = new com.six.Terminal(settings)
// Add listener to handle events
terminal.addListener(new TerminalHandler())
// Run transaction
terminal.transactionAsync(com.six.constants.TransactionType.PURCHASE,
new com.six.Amount(8.5, com.six.constants.Currency.CHF))
// Once the transaction completes TerminalHandler.transactionCompleted will be called
-
TCP/IP communication driver identifier.
Declaration
Swift
public static let COMM_DRIVER_TCPIP: String
-
Tim Api Build Version.
Declaration
Swift
public static var timApiVersion: String { get }
-
Create terminal using configuration.
Declaration
Swift
public init(settings: TerminalSettings) throws
-
Dispose of terminal.
Declaration
Swift
public func dispose()
-
Opens a user shift. If the shift is already open, no error is returned.
Declaration
Swift
public func activate() throws -> ActivateResponse
-
Opens a user shift. If the shift is already open, no error is returned. Asynchronous version of {@link Terminal#activate}. Returns immediately and calls {@link TerminalListener#activateCompleted} on all notifiers once finished.
Declaration
Swift
public func activateAsync() throws
-
Requests the list of brands available on the terminal.
Side-Effect: Updates Brands member with all brands available on the terminal. Use {@link Terminal#getBrands} to retrieve them.
Declaration
Swift
public func applicationInformation() throws
-
Requests the list of brands available on the terminal. Asynchronous version of {@link Terminal#applicationInformation}. Returns immediately and calls {@link TerminalListener#applicationInformationCompleted} on all notifiers once finished.
Side-Effect: Updates Brands member with all brands available on the terminal. Use Terminal.getBrands() to retrieve them.
Declaration
Swift
public func applicationInformationAsync() throws
-
Forces the EFT Terminal to transmit all transactions to the host system as well to do the daily closing.
Declaration
Swift
public func balance() throws -> BalanceResponse
-
Forces the EFT Terminal to transmit all transactions to the host system as well to do the daily closing. Asynchronous version of {@link #balance}. Returns immediately and calls {@link TerminalListener#balanceCompleted} on all notifiers once finished.
Declaration
Swift
public func balanceAsync() throws
-
Aborts an open asynchronous Financial Transaction or Non-Financial Transaction request, except for a {@link Terminal#commit} or {@link Terminal#rollbackAsync} request, which cannot be cancelled.
Further information: A Cancel-request is a best effort request. The EFT Terminal can ignore the Cancel-request if the request in progress is in a state it can not be cancelled. A Cancel-request has no effect if there’s no open request of a Financial Transaction or Non-financial Transaction. If the EFT Terminal cancels the request in progress an error response is send back for the cancelled request (see chapter Abort Purchase for an example). Cancel-requests can be send multiple times in an attempt to cancel a request in progress but should be spaced by a few seconds. Cancel-requests themselves are never acknowledged by the EFT Terminal.
The Transaction request can only be cancelled before a Commit has been performed. Also the underlying payment protocol can restrict this functionality.
Declaration
Swift
public func cancel() throws
-
Aborts an open asynchronous Financial Transaction or Non-Financial Transaction request, except for a {@link Terminal#commit} or {@link Terminal#rollbackAsync} request, which cannot be cancelled.
Further information: A Cancel-request is a best effort request. The EFT Terminal can ignore the Cancel-request if the request in progress is in a state it can not be cancelled. A Cancel-request has no effect if there’s no open request of a Financial Transaction or Non-financial Transaction. If the EFT Terminal cancels the request in progress an error response is send back for the cancelled request (see chapter Abort Purchase for an example). Cancel-requests can be send multiple times in an attempt to cancel a request in progress but should be spaced by a few seconds. Cancel-requests themselves are never acknowledged by the EFT Terminal.
The Transaction request can only be cancelled before a Commit has been performed. Also the underlying payment protocol can restrict this functionality.
Declaration
Swift
public func cancel(silent: Bool, retainCard: Bool) throws
-
Changes configuration parameters of the EFT Terminal. @param settings Dictionary of values for settings types to change.
Declaration
Swift
public func changeSettings(settings: [CSettingType : String]) throws
-
Changes configuration parameters of the EFT Terminal. Asynchronous version of {@link Terminal#changeSettings}. Returns immediately and calls {@link TerminalListener#changeSettingsCompleted} on all notifiers once finished. @param settings Dictionary of values for settings types to change.
Declaration
Swift
public func changeSettingsAsync(settings: [CSettingType : String]) throws
-
Performs Commit-operation after a successful Transaction call.
Declaration
Swift
public func commit() throws
-
Performs Commit-operation after a successful call to {@link Terminal#transaction} or {@link Terminal#transactionAsync}. Asynchronous version of {@link Terminal#commit}. Returns immediately and calls {@link TerminalListener#commitCompleted} on all notifiers once finished.
Declaration
Swift
public func commitAsync() throws
-
Performs Commit-operation after a successful Transaction call.
Declaration
Swift
public func commit(amount: Amount) throws
-
Performs Commit-operation after a successful call to {@link Terminal#transaction} or {@link Terminal#transactionAsync}. Asynchronous version of {@link Terminal#commit}. Returns immediately and calls {@link TerminalListener#commitCompleted} on all notifiers once finished.
Declaration
Swift
public func commitAsync(amount: Amount) throws
-
Initiates a connection to the EFT Terminal. Calling the {@link Terminal#connect} is not needed normally, because all methods make first a connect, if not connected.
Declaration
Swift
public func connect() throws
-
Initiates a connection to the EFT Terminal. Asynchronous version of {@link Terminal#connect}. Returns immediately and calls {@link TerminalListener#connectCompleted} on all notifiers once finished.
Declaration
Swift
public func connectAsync() throws
-
Get counter information’s from the EFT Terminal. @param type type of counters to request.
Declaration
Swift
public func counterRequest(type: CCounterType) throws -> Counters
-
Get counter information’s from the EFT Terminal. Asynchronous version of {@link Terminal#counterRequest}. Returns immediately and calls {@link TerminalListener#counterRequestCompleted} on all notifiers once finished.
Declaration
Swift
public func counterRequestAsync(type: CCounterType) throws
-
Closes a user shift. If the shift is already closed, no error is returned.
Declaration
Swift
public func deactivate() throws -> DeactivateResponse
-
Closes a user shift. If the shift is already closed, no error is returned. Asynchronous version of {@link Terminal#deactivate}. Returns immediately and calls {@link TerminalListener#deactivateCompleted} on all notifiers once finished.
Declaration
Swift
public func deactivateAsync() throws
-
Interrupts the connection to the EFT Terminal.
Declaration
Swift
public func disconnect() throws
-
Interrupts the connection to the EFT Terminal. Asynchronous version of {@link Terminal#disconnect}. Returns immediately and calls {@link TerminalListener#disconnectCompleted} on all notifiers once finished.
Declaration
Swift
public func disconnectAsync() throws
-
Requests DCC rates from the EFT Terminal. The DCC rates are returned as receipt.
Declaration
Swift
public func dccRates() throws -> PrintData
-
Requests DCC rates from the EFT Terminal. The DCC rates are returned as receipt. Asynchronous version of {@link Terminal#dccRates}. Returns immediately and calls {@link TerminalListener#dccRatesCompleted} on all notifiers once finished.
Declaration
Swift
public func dccRatesAsync() throws
-
Get hardware information from the EFT Terminal.
Declaration
Swift
public func hardwareInformation() throws -> HardwareInformationResponse?
-
Get hardware information from the EFT Terminal. Asynchronous version of {@link Terminal#hardwareInformation}. Returns immediately and calls {@link TerminalListener#hardwareInformationCompleted} on all notifiers once finished.
Declaration
Swift
public func hardwareInformationAsync() throws
-
Initialize a transaction knowing the amount or the card type.
Declaration
Swift
public func initTransactionAsync(displayAmount: Bool, amount: Amount?) throws
-
Activate a communication session between the ECR and the terminal.
Note: Before calling set the print options, POS identifier and manufacturer flags set in the terminal instance.
Side-Effect: After completing the request updates the features, brands and terminal identifier in the terminal instance. Fetching these information can be disabled if Auto-FetchBrands is disabled in {@link TerminalSettings}.
Declaration
Swift
public func login() throws
-
Activate a communication session between the ECR and the terminal. Asynchronous version of {@link Terminal#login}. Returns immediately and calls {@link TerminalListener#loginCompleted} on all notifiers once finished.
Note: Before calling set the print options, POS identifier and manufacturer flags properties in the terminal instance.
Side-Effect: After completing the request updates the features, brands and terminal identifier is set in the terminal instance. Fetching these information can be disabled with Auto-FetchBrands in {@link TerminalSettings}.
Declaration
Swift
public func loginAsync() throws
-
Terminates an active communication session between the ECR and the terminal.
Declaration
Swift
public func logout() throws
-
Terminates an active communication session between the ECR and the terminal. Asynchronous version of {@link Terminal#logout}. Returns immediately and calls {@link TerminalListener#logoutCompleted} on all notifiers once finished.
Declaration
Swift
public func logoutAsync() throws
-
Force the EFT Terminal to reboot.
Declaration
Swift
public func reboot() throws
-
Force the EFT Terminal to reboot. Asynchronous version of {@link Terminal#reboot}. Returns immediately and calls {@link TerminalListener#rebootCompleted} on all notifiers once finished.
Declaration
Swift
public func rebootAsync() throws
-
Force the EFT Terminal to transmit all financial transactions to the host system.
Declaration
Swift
public func reconciliation() throws -> ReconciliationResponse
-
Force the EFT Terminal to transmit all financial transactions to the host system. Asynchronous version of {@link Terminal#reconciliation}. Returns immediately and calls {@link TerminalListener#reconciliationCompleted} on all notifiers once finished.
Declaration
Swift
public func reconciliationAsync() throws
-
Receive the latest receipt or a list of silent receipts. @param type Type of receipts to request from the EFT Terminal.
Declaration
Swift
public func receiptRequest(type: CReceiptRequestType) throws -> ReceiptRequestResponse
-
Receive the latest receipt or a list of silent receipts. Asynchronous version of {@link Terminal#receiptRequest}. Returns immediately and calls {@link TerminalListener#receiptRequestCompleted} on all notifiers once finished.
Declaration
Swift
public func receiptRequestAsync(type: CReceiptRequestType) throws
-
Force the EFT Terminal to get the configuration from the service center.
Declaration
Swift
public func reconfig() throws -> PrintData
-
Force the EFT Terminal to get the configuration from the service center. Asynchronous version of {@link Terminal#reconfig}. Returns immediately and calls {@link TerminalListener#reconfigCompleted} on all notifiers once finished.
Declaration
Swift
public func reconfigAsync() throws
-
Prevents a transaction from being committed to the transaction log and generates a technical reversal of the authorization. For payment protocols supporting the function a declined receipt may be generated.
Declaration
Swift
public func rollback() throws -> PrintData
-
Prevents a transaction from being committed to the transaction log and generates a technical reversal of the authorization. For payment protocols supporting the function a declined receipt may be generated. Asynchronous version of {@link Terminal#rollback}. Returns immediately and calls {@link TerminalListener#rollbackCompleted} on all notifiers once finished.
Declaration
Swift
public func rollbackAsync() throws
-
Force the EFT Terminal to start a Software Update.
Declaration
Swift
public func softwareUpdate() throws -> CUpdateStatus
-
Force the EFT Terminal to start a Software Update.
Declaration
Swift
public func softwareUpdateAsync() throws
-
Request system information from the EFT Terminal.
Note: Set EcrData property before calling SystemInformation.
Declaration
Swift
public func systemInformation() throws -> SystemInformationResponse
-
Request system information from the EFT Terminal. Asynchronous version of {@link Terminal#systemInformation}. Returns immediately and calls {@link TerminalListener#systemInformationCompleted} on all notifiers once finished.
Note: Set EcrData property before calling SystemInformation.
Declaration
Swift
public func systemInformationAsync() throws
-
Starts an EFT Terminal Transaction.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
@param type Financial Transaction Function. @param amount Transaction amount.
Declaration
Swift
public func transaction(type: CTransactionType, amount: Amount?) throws -> TransactionResponse
-
Starts an EFT Terminal Transaction.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
@param type Financial Transaction Function. @param request Transaction parameters without using TransactionRequest property.
Declaration
Swift
public func transaction(type: CTransactionType, request: TransactionRequest) throws -> TransactionResponse
-
Starts an EFT Terminal Transaction. Asynchronous version of {@link Terminal#transaction}. Returns immediately and calls {@link TerminalListener#transactionCompleted} on all notifiers once finished.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
@param type Financial Transaction Function. @param amount Transaction amount.
Declaration
Swift
public func transactionAsync(type: CTransactionType, amount: Amount?) throws
-
Starts an EFT Terminal Transaction.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
@param type Financial Transaction Function. @param request Transaction parameters without using TransactionRequest property.
Declaration
Swift
public func transactionAsync(type: CTransactionType, request: TransactionRequest) throws
-
Starts an EFT Terminal Transaction with Tip amount.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
Note: This method is only available if {@link com.six.timapi.constants.Guides#GASTRO} is enabled.
@param type Financial Transaction Function. @param amount Transaction amount. @param tipAmount Proposed tip amount.
Declaration
Swift
public func transactionTip(type: CTransactionType, amount: Amount?, tipAmount: Amount?) throws -> TransactionResponse
-
Starts an EFT Terminal Transaction. Asynchronous version of {@link Terminal#transaction}. Returns immediately and calls {@link TerminalListener#transactionCompleted} on all notifiers once finished.
Note: The transaction parameters are taken from TransactionRequest terminal property since those do not change often if at all (default parameters).
Note: This method is only available if {@link com.six.timapi.constants.Guides#GASTRO} is enabled.
@param type Financial Transaction Function. @param amount Transaction amount. @param tipAmount Proposed tip amount.
Declaration
Swift
public func transactionTipAsync(type: CTransactionType, amount: Amount?, tipAmount: Amount?) throws
-
Close the shutter of the card reader.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func closeReader() throws
-
Close the shutter of the card reader.
Asynchronous version of {@link Terminal#closeReader}. Returns immediately and calls {@link TerminalListener#closeReaderCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func closeReaderAsync() throws
-
Open the shutter of the card reader.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func openReader() throws
-
Open the shutter of the card reader.
Asynchronous version of {@link Terminal#openReader}. Returns immediately and calls {@link TerminalListener#openReaderCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func openReaderAsync() throws
-
Eject a card from the card reader.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func ejectCard() throws
-
Eject a card from the card reader.
Asynchronous version of {@link Terminal#ejectCard}. Returns immediately and calls {@link TerminalListener#ejectCardCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func ejectCardAsync() throws
-
Opens the maintenance window to the terminal so it can perform collected maintenance requests on its own, without interaction with the ECR. The terminal shall respond immediately to the ECR request whether it is able to handle the request or not.
If the terminal is able to handle the request, the ECR is free itself to perform maintenance as well or it can monitor the terminal by reading the TerminalStatus notifications.
It is possible that the connection between ECR and EFT terminal is terminated due to one or multiple reboot processes.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func openMaintenanceWindow() throws
-
Opens the maintenance window to the terminal so it can perform collected maintenance requests on its own, without interaction with the ECR. The terminal shall respond immediately to the ECR request whether it is able to handle the request or not.
If the terminal is able to handle the request, the ECR is free itself to perform maintenance as well or it can monitor the terminal by reading the TerminalStatus notifications.
It is possible that the connection between ECR and EFT terminal is terminated due to one or multiple reboot processes.
Asynchronous version of {@link Terminal#openMaintenanceWindow}. Returns immediately and calls {@link TerminalListener#openMaintenanceWindowCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func openMaintenanceWindowAsync() throws
-
Closes the maintenance window to the terminal so it can perform collected maintenance requests on its own, without interaction with the ECR. The terminal shall respond immediately to the ECR request whether it is able to handle the request or not.
If the terminal is able to handle the request, the ECR is free itself to perform maintenance as well or it can monitor the terminal by reading the TerminalStatus notifications.
It is possible that the connection between ECR and EFT terminal is terminated due to one or multiple reboot processes.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func closeMaintenanceWindow() throws
-
Closes the maintenance window to the terminal so it can perform collected maintenance requests on its own, without interaction with the ECR. The terminal shall respond immediately to the ECR request whether it is able to handle the request or not.
If the terminal is able to handle the request, the ECR is free itself to perform maintenance as well or it can monitor the terminal by reading the TerminalStatus notifications.
It is possible that the connection between ECR and EFT terminal is terminated due to one or multiple reboot processes.
Asynchronous version of {@link Terminal#closeMaintenanceWindow}. Returns immediately and calls {@link TerminalListener#closeMaintenanceWindowCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func closeMaintenanceWindowAsync() throws
-
Extends the Commit timeout if the terminal needs additional time before the Commit shall be performed. An example could be on a public transport vending machine: if the machine is printing multiple tickets and this printing action would extend the commit timeout, a HoldCommit notification shall be sent to extend the Commit timeout as well. If the printing action fails after some tickets a partial commit can be performed.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func holdCommit() throws
-
Activate service menu.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func activateServiceMenu() throws
-
Activate service menu.
Asynchronous version of {@link Terminal#activateServiceMenu}. Returns immediately and calls {@link TerminalListener#activateServiceMenuCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func activateServiceMenuAsync() throws
-
Amount adjustment request.
Note: This method is only available if {@link com.six.timapi.constants.Guides#UNATTENDED} is enabled.
Declaration
Swift
public func amtAdjustment(amount: Amount) throws
-
Open dialog mode on the terminal.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func openDialogMode() throws
-
Open dialog mode on the terminal.
Asynchronous version of {@link Terminal#openDialogMode}. Returns immediately and calls {@link TerminalListener#openDialogModeCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func openDialogModeAsync() throws
-
Close dialog mode on the terminal.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func closeDialogMode() throws
-
Close dialog mode on the terminal.
Asynchronous version of {@link Terminal#closeDialogMode}. Returns immediately and calls {@link TerminalListener#closeDialogModeCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func closeDialogModeAsync() throws
-
Show signature capture on the terminal.
Can be called only if dialog mode is open.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func showSignatureCapture(request: ShowSignatureCaptureRequest) throws -> ShowSignatureCaptureResponse
-
Show signature capture on the terminal.
Asynchronous version of {@link Terminal#showSignatureCapture}. Returns immediately and calls {@link TerminalListener#showSignatureCaptureCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func showSignatureCaptureAsync(request: ShowSignatureCaptureRequest) throws
-
Show dialog on the terminal.
Can be called only if dialog mode is open.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func showDialog(request: ShowDialogRequest) throws -> ShowDialogResponse
-
Show dialog on the terminal.
Asynchronous version of {@link Terminal#showDialog}. Returns immediately and calls {@link TerminalListener#showDialogCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#DIALOG} is enabled.
Declaration
Swift
public func showDialogAsync(request: ShowDialogRequest) throws
-
Send card command to card.
Can be called only if dialog mode is open.
Note: This method is only available if .dialog guide is enabled.
Declaration
Swift
public func sendCardCommand(requests: [CommandRequest]) throws -> [CommandResponse]
-
Send card command to card.
Asynchronous version of {@link Terminal#sendCardCommand}. Returns immediately and calls {@link TerminalListener#sendCardCommandCompleted} on all notifiers once finished.
Note: This method is only available if .dialog guide is enabled.
Declaration
Swift
public func sendCardCommandAsync(requests: [CommandRequest]) throws
-
Get information about the current account balance of the inserted card.
Note: This method is only available if {@link com.six.timapi.constants.Guides#ADVANCED_RETAIL} is enabled.
Declaration
Swift
public func balanceInquiry() throws -> BalanceInquiryResponse
-
Get information about the current account balance of the inserted card.
Asynchronous version of {@link Terminal#balanceInquiry}. Returns immediately and calls {@link TerminalListener#balanceInquiryCompleted} on all notifiers once finished.
Note: This method is only available if {@link com.six.timapi.constants.Guides#ADVANCED_RETAIL} is enabled.
Declaration
Swift
public func balanceInquiryAsync() throws
-
The RequestAlias-function is used to request a Saferpay Alias for Alias-based transactions. Saferpay offers these kind of transactions which can be performed only using a secure Alias that can be created out of card information from a precious transaction. This Alias then can be used to perform a transaction without having the same card present.
An Alias can be used for the following transactions:
- Purchase
- Credit
- Reservation
- Recurring
@param sixTransRef The SIX omni channel reference number. @returns The Alias created by Saferpay.
Declaration
Swift
public func requestAlias(sixTransRef: String) throws -> String
-
The RequestAlias-function is used to request a Saferpay Alias for Alias-based transactions. Saferpay offers these kind of transactions which can be performed only using a secure Alias that can be created out of card information from a precious transaction. This Alias then can be used to perform a transaction without having the same card present.
An Alias can be used for the following transactions:
- Purchase
- Credit
- Reservation
- Recurring
Asynchronous version of {@link Terminal#requestAlias}. Returns immediately and calls {@link TerminalListener#requestAliasCompleted} on all notifiers once finished.
@param sixTransRef The SIX omni channel reference number.
Declaration
Swift
public func requestAliasAsync(sixTransRef: String) throws
-
Register listener. @throws IllegalArgumentException listener is null. @throws IllegalArgumentException listener is registered.
Declaration
Swift
public func addListener(listener: TerminalListener)
-
Unregister listener. @throws IllegalArgumentException listener is null. @throws IllegalArgumentException listener is not registered.
Declaration
Swift
public func removeListener(listener: TerminalListener)
-
Dcc is available.
Declaration
Swift
public func canDcc() -> Bool
-
Declined receipts is available.
Declaration
Swift
public func canDeclinedReceipts() -> Bool
-
Multi account selection is available.
Declaration
Swift
public func canMultiAccountSelection() -> Bool
-
Software update is available.
Declaration
Swift
public func hasSwUpdate() -> Bool
-
Terminal settings.
Declaration
Swift
public private(set) var settings: TerminalSettingsImmutable!
-
POS identifier.
Declaration
Swift
public var posId: String { get set }
-
User identifier.
Declaration
Swift
public var userId: Int { get set }
-
ECR Data.
Declaration
Swift
public var ecrData: [EcrInfo] { get set }
-
Add ECR data replacing existing one if present. To remove elements use ecrData property instead.
Declaration
Swift
public func addEcrData(ecrInfo: EcrInfo)
-
Print options.
Declaration
Swift
public var printOptions: [PrintOption] { get set }
-
Merchant options.
Declaration
Swift
public var merchantOptions: [CMerchantOptionType : String] { get set }
-
Transaction data to use for transaction requests unless overwritten in {@link #transaction(TransactionType, TransactionRequest)} or {@link #transactionAsync(TransactionType, TransactionRequest)}.
Declaration
Swift
public var transactionData: TransactionData { get set }
-
Receipt formatter.
Declaration
Swift
public var receiptFormatter: ReceiptFormatter
-
Get terminal status.
Declaration
Swift
public var terminalStatus: TerminalStatus { get }
-
Get brands or nil if not retrieved yet.
Declaration
Swift
public var brands: [Brands]? { get }
-
Get features or nil if not retrieved yet.
Declaration
Swift
public var features: Features? { get }
-
Activation sequence counter.
Declaration
Swift
public var actSeqCounter: Int { get }
-
Get configuration data or nil if not retrieved yet.
Declaration
Swift
public var configData: ConfigData? { get }
-
Logger name for entire tim api package.
Declaration
Swift
public static let loggerNameModule: String
-
Logger name for class.
Declaration
Swift
public static let loggerName: String
-
Terminal identifier of connected terminal. Returns empty string if the terminal identifier is not known. The terminal identifier is available after logging in to the terminal. The terminal identifier obtained from the terminal is potentially different from the terminal identifier set in the {@link TerminalSettings}. This is especially true if {@link ConnectionMode#ON_FIX_IP} is used.
Declaration
Swift
public var terminalId: String { get set }
-
String representation for debugging purpose.
Declaration
Swift
public var description: String { get }