Classes

The following classes are available globally.

  • Activate terminal response.

    See more

    Declaration

    Swift

    public class ActivateResponse : CustomStringConvertible
  • Contains the amount for transactions. The amount can be specified in minor units as integer value or in major units as floating point value.

    See more

    Declaration

    Swift

    public class Amount : CustomStringConvertible
  • Contains the amount for transactions. The amount can be specified in minor units as integer value or in major units as floating point value. Immutable class.

    See more

    Declaration

    Swift

    public class AmountDcc : Amount
  • Contains the amount for transactions. The amount can be specified in minor units as integer value or in major units as floating point value.

    See more

    Declaration

    Swift

    public class AmountDiscount : Amount
  • Final amount after a Terminal.amtAdjustment has been processed by the terminal.

    See more

    Declaration

    Swift

    public class AmountFinal : Amount
  • Information about a supported application. Immutable class.

    See more

    Declaration

    Swift

    public class Application : CustomStringConvertible
  • Contains the result of a balance inquiry after calling {@link Terminal#balanceInquiry()} or {@link Terminal#balanceInquiryAsync()}. Immutable class.

    See more

    Declaration

    Swift

    public class BalanceInquiryResponse
  • Contains the result of a call to {@link Terminal#balance} or {@link Terminal#balanceAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class BalanceResponse : CustomStringConvertible
  • Undocumented

    See more

    Declaration

    Swift

    public class Basket : CustomStringConvertible
  • Undocumented

    See more

    Declaration

    Swift

    public class BasketItem : CustomStringConvertible
  • Contains information about a brand available on the terminal. It is available after {@link Terminal#login} or {@link Terminal#loginAsync} has been performed or brands have been manually retrieved by {@link Terminal#applicationInformation} or {@link Terminal#applicationInformationAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class Brands : CustomStringConvertible
  • Contains information about the used payment card Immutable class.

    See more

    Declaration

    Swift

    public class CardData : CustomStringConvertible
  • Contains data of a single track. Immutable class.

    See more

    Declaration

    Swift

    public class CardTrackData : CustomStringConvertible
  • Command request to send to card.

    See more

    Declaration

    Swift

    public class CommandRequest : CustomStringConvertible
  • Command response to send to card.

    See more

    Declaration

    Swift

    public class CommandResponse : CustomStringConvertible
  • Contains terminal information required for ECR applications to produce receipts on their own. This data is available after the Login operation has been performed. Immutable class.

    See more

    Declaration

    Swift

    public class ConfigData : CustomStringConvertible
  • Undocumented

    Declaration

    Swift

    public class Convenience
  • Contains information about a counter for a brand. Immutable class.

    See more

    Declaration

    Swift

    public class Counter : CustomStringConvertible
  • Contains all counters for a specific counter type. Instances of this class are returned by various calls:

    • {@link Terminal#balance}
    • {@link Terminal#balanceAsync}
    • {@link Terminal#counterRequest}
    • {@link Terminal#counterRequestAsync}
    • {@link Terminal#deactivate}
    • {@link Terminal#deactivateAsync}
    • {@link Terminal#reconciliation}
    • {@link Terminal#reconciliationAsync}

    Immutable class.

    See more

    Declaration

    Swift

    public class Counters : CustomStringConvertible
  • Contains information about a currency supported by a brand. Immutable class.

    See more

    Declaration

    Swift

    public class CurrencyItem : CustomStringConvertible
  • Result of calling the {@link Terminal#deactivate} or {@link Terminal#deactivateAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class DeactivateResponse : CustomStringConvertible
  • Default implementation of listener for asynchronous terminal events. Implements methods to call {@link #requestCompleted} and {@link #printReceipts} as convenience call.

    Subclasses usually only overwrite {@link #requestCompleted} and {@link #printReceipts}. If you overwrite methods inherited from {@link TerminalListener} make sure to super call to still get {@link #requestCompleted} and {@link #printReceipts} called.

    See more

    Declaration

    Swift

    open class DefaultTerminalListener : TerminalListener, CustomStringConvertible
  • Defines one ECR information token for use by the {@link Terminal#hardwareInformation} or {@link Terminal#hardwareInformationAsync}.

    See more

    Declaration

    Swift

    public class EcrInfo : CustomStringConvertible
  • Localized error messages. This is a static only class.

    See more

    Declaration

    Swift

    public class ErrorMessages
  • Contains features supported by the terminal. Immutable class.

    See more

    Declaration

    Swift

    public class Features : CustomStringConvertible
  • Hardware features supported by the terminal. Immutable class.

    See more

    Declaration

    Swift

    public class FeaturesHardware : CustomStringConvertible
  • Payment features supported by the terminal. Immutable class.

    See more

    Declaration

    Swift

    public class FeaturesPayment
  • SIXml features supported by the terminal. Immutable class.

    See more

    Declaration

    Swift

    public class FeaturesSixml : CustomStringConvertible
  • Contains global settings affecting all Terminal instances unless overridden by TerminalSettings. Singleton class.

    See more

    Declaration

    Swift

    public class GlobalSettings
  • Contains information about a piece of hardware in the terminal or devices attached to it. Immutable class.

    See more

    Declaration

    Swift

    public class Hardware : CustomStringConvertible
  • Contains the result of calling the {@link Terminal#hardwareInformation} or {@link Terminal#hardwareInformationAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class HardwareInformationResponse : CustomStringConvertible
  • Undocumented

    See more

    Declaration

    Swift

    public class ItemQuantity : CustomStringConvertible
  • Java like logger.

    See more

    Declaration

    Swift

    public class Logger
  • Loyalty coupon.

    See more

    Declaration

    Swift

    public class LoyaltyCoupon : CustomStringConvertible
  • Loyalty item.

    See more

    Declaration

    Swift

    public class LoyaltyItem : CustomStringConvertible
  • Native error information. Immutable class.

    See more

    Declaration

    Swift

    public class NativeError : CustomStringConvertible
  • Contains network information of the terminal. Result of calling {@link Terminal#systemInformation} or {@link Terminal#systemInformationAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class NetworkInformation : CustomStringConvertible
  • Contains payment protocol specific information. Immutable class.

    See more

    Declaration

    Swift

    public class PpInfo : CustomStringConvertible
  • Contains receipts or receipt items for printing by the ECR depending on the PrintOptions used during login. Immutable class.

    See more

    Declaration

    Swift

    public class PrintData : CustomStringConvertible
  • Print options for a specific receipt type. Used for {@link Terminal#login} or {@link Terminal#loginAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class PrintOption : CustomStringConvertible
  • Contains a receipt to be printed by the ECR. Immutable class.

    See more

    Declaration

    Swift

    public class Receipt : CustomStringConvertible
  • Contains the value of a specific receipt item to be used by the ECR to create receipts. Immutable class.

    See more

    Declaration

    Swift

    public class ReceiptItem : CustomStringConvertible
  • Contains a list of ReceiptItem to be used for a specific type of receipts. Immutable class.

    See more

    Declaration

    Swift

    public class ReceiptItems : CustomStringConvertible
  • Contains the result of a call to the {@link Terminal#receiptRequest} or {@link Terminal#receiptRequestAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class ReceiptRequestResponse : CustomStringConvertible
  • Contains the result of calling the {@link Terminal#reconciliation} or {@link Terminal#reconciliationAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class ReconciliationResponse : CustomStringConvertible
  • Contains configuration for show dialog request used by {@link Terminal#showDialog} or {@link Terminal#showDialogAsync}.

    See more

    Declaration

    Swift

    public class ShowDialogRequest : CustomStringConvertible
  • Contains the result of a show dialog request finished after calling {@link Terminal#showDialog} or {@link Terminal#showDialogAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class ShowDialogResponse : CustomStringConvertible
  • Contains the result of a show signature capture request finished after calling {@link Terminal#showSignatureCapture} or {@link Terminal#showSignatureCaptureAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class ShowSignatureCaptureResponse : CustomStringConvertible
  • Contains signature information captured by the EFT Terminal as a result to calling the {@link Terminal#transaction} or {@link Terminal#transactionAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class SignatureInformation : CustomStringConvertible
  • Helper class for handle synchronous method calls in the {@link Terminal} class. Used internally by the {@link Terminal} instance to provide synchronous behavior. TimApi users can though use this class as base for their own synchronous use of the TimApi by using asynchronous function calls only. Provides the user with the ability to work also with intermediate completed request data in contrary to the synchronous method calls provided by {@link Terminal}.

    The listener collects all response data received for all possible requests. The user can then examine those at a later time. The most recent request data is stored. {@link TimEvent} is not stored. Stores the last received {@link TimException}.

    To use the listener call it like this:

    {@code
    SynchronousTerminalListener listener = new SynchronousTerminalListener();
    listener.prepareWait(RequestType.TRANSACTION);
    // run action potentially completing straight away
    listener.waitForRequestCompleted();
    // work with the result in listener
    }
    

    See more

    Declaration

    Swift

    public class SynchronousTerminalListener : TerminalListener
  • Contains the result of calling the {@link Terminal#systemInformation} or {@link Terminal#systemInformationAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class SystemInformationResponse : 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
     let terminalSettings = try TerminalSettings()
     terminalSettings.terminalId = 12345678

    // Create terminal var terminal = try Terminal(settings: terminalSettings)

    // 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

    See more

    Declaration

    Swift

    public class Terminal : CustomStringConvertible
  • The per terminal configuration can be done on two ways:

    • In a configuration file “TimApi.cfg”
    • With the API TerminalSettings done from the application.

    TIMApi reads the configuration file when the first Terminal instance is created.

    The class TerminalSettings allows the setting from Application. Each instance of the Terminal class is initialized using an own instance of TerminalSettings containing the configuration relevant for this terminal. The Terminal instances read only the configuration file section with the matching terminal identifier. Multiple terminals can be configured as long as their terminal identifier are different.

    All configuration has to be done before an instance of TerminalSettings is used to create a Terminal class instance.

    Defines also automatic behavior for interacting with EFT terminals. By default all automatic behaviors are enabled.

    See more

    Declaration

    Swift

    public class TerminalSettings : CustomStringConvertible
  • The per terminal configuration can be done on two ways:

    • In a configuration file “TimApi.cfg”
    • With the API TerminalSettings done from the application.

    TIMApi reads the configuration file when the first Terminal instance is created.

    The class TerminalSettings allows the setting from Application. Each instance of the Terminal class is initialized using an own instance of TerminalSettings containing the configuration relevant for this terminal. The Terminal instances read only the configuration file section with the matching terminal identifier. Multiple terminals can be configured as long as their terminal identifier are different.

    All configuration has to be done before an instance of TerminalSettings is used to create a Terminal class instance.

    Defines also automatic behavior for interacting with EFT terminals. By default all automatic behaviors are enabled.

    See more

    Declaration

    Swift

    public class TerminalSettingsImmutable : CustomStringConvertible
  • Contains information about the current EFT Terminal status.

    See more

    Declaration

    Swift

    public class TerminalStatus : CustomStringConvertible
  • Contains event information for asynchronous method calls. It is send to listeners Immutable class.

    See more

    Declaration

    Swift

    public class TimEvent : CustomStringConvertible
  • Contains information about a failed request or method call. Parameter provided in Errors.timException. Immutable class.

    See more

    Declaration

    Swift

    public class TimException : CustomStringConvertible
  • Contains information about the total for one currency. Immutable class.

    See more

    Declaration

    Swift

    public class Total : CustomStringConvertible
  • Contains configuration for transaction used by {@link Terminal#transaction} or {@link Terminal#transactionAsync}.

    See more

    Declaration

    Swift

    public class TransactionData : CustomStringConvertible
  • Contains information about a finished transaction after calling the {@link Terminal#transaction} or {@link Terminal#transactionAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class TransactionInformation : CustomStringConvertible
  • Contains configuration for transaction used by {@link Terminal#transaction} or {@link Terminal#transactionAsync}.

    See more

    Declaration

    Swift

    public class TransactionRequest : CustomStringConvertible
  • Contains the result of a transaction finished after calling {@link Terminal#transaction} or {@link Terminal#transactionAsync}. Immutable class.

    See more

    Declaration

    Swift

    public class TransactionResponse : CustomStringConvertible
  • Contains transaction details for counters. Immutable class.

    See more

    Declaration

    Swift

    public class TrxDetail : CustomStringConvertible