TransactionInformation

public class TransactionInformation : CustomStringConvertible

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

  • Create transaction information.

    Declaration

    Swift

    public init(posEntryMode: CPosEntryMode?,
                cvm: CCvm?,
                merchantAction: CMerchantAction?,
                authCode: String?,
                timeStamp: TimeDate?,
                transRef: Int?,
                transSeq: Int?,
                acqId: Int64?,
                signatureInformation: SignatureInformation?,
                trmTransRef: String?,
                acqTransRef: String?,
                sixTrxRefNum: String?,
                cardholderName: String?,
                clientIdentifier: String?,
                accountNumber: String?,
                personOid: Int64?,
                cardId: String?,
                ngvUsedFlag: Bool?,
                omnichannelPaymentId: String?,
                schemeTrxId: String?,
                ageCheckResult: CAgeCheckResult?)
  • According to EMV definition.

    Mandatory for:

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.load
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.unload

    Conditional for (can be nil):

    • CTransactionType.adjustReservation
    • CTransactionType.finalizePurchase
    • CTransactionType.loadVoucher
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.reservation

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.cancelReservation
    • CTransactionType.reversal

    Declaration

    Swift

    public let posEntryMode: CPosEntryMode?
  • cvm

    Cardholder verification method.

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.adjustReservation
    • CTransactionType.authorizeDeposit
    • CTransactionType.cancelReservation
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.reservation
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.authorizeCredit
    • CTransactionType.credit
    • CTransactionType.load
    • CTransactionType.refunding
    • CTransactionType.reversal
    @type {timapi.constants.Cvm}

    Declaration

    Swift

    public let cvm: CCvm?
  • Feedback to know which merchant action has to be performed.

    Mandatory for:

    • CTransactionType.activateCard
    • CTransactionType.adjustReservation
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cancelReservation
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reservation
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    @type {timapi.constants.MerchantAction}

    Declaration

    Swift

    public let merchantAction: CMerchantAction?
  • Authorization code received from the acquirer.

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.adjustReservation
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reservation
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.cancelReservation
    • CTransactionType.reversal
    @type {String}

    Declaration

    Swift

    public let authCode: String?
  • Local time of the transaction.

    Mandatory for:

    • CTransactionType.activateCard
    • CTransactionType.adjustReservation
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cancelReservation
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reservation
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    @type {timapi.TimeDate}

    Declaration

    Swift

    public let timeStamp: TimeDate?
  • Transaction reference defined by the terminal.

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.adjustReservation
    • CTransactionType.cancelReservation
    • CTransactionType.collectPoints
    • CTransactionType.loadVoucher
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.reservation
    @type {Number}

    Declaration

    Swift

    public let transRef: Int?
  • Transaction sequence number defined by the terminal.

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.adjustReservation
    • CTransactionType.cancelReservation
    • CTransactionType.collectPoints
    • CTransactionType.loadVoucher
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.reservation
    @type {Number}

    Declaration

    Swift

    public let transSeq: Int?
  • Acquirer identifier.

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.adjustReservation
    • CTransactionType.cancelReservation
    • CTransactionType.collectPoints
    • CTransactionType.loadVoucher
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.reservation
    @type {Number}

    Declaration

    Swift

    public let acqId: Int64?
  • Signature captured by EFT Terminal if present.

    Mandatory for:

    • CTransactionType.loadVoucher

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.adjustReservation
    • CTransactionType.authorizeDeposit
    • CTransactionType.cancelReservation
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reservation
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.authorizeCredit
    • CTransactionType.collectPoints
    @type {timapi.SignatureInformation}

    Declaration

    Swift

    public let signatureInformation: SignatureInformation?
  • Transaction Reference generated by the terminal, therefore only valid on this terminal.

    Mandatory for:

    • CTransactionType.adjustReservation
    • CTransactionType.cancelReservation
    • CTransactionType.collectPoints
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.reservation

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.reversal
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    @type {String}

    Declaration

    Swift

    public let trmTransRef: String?
  • Transaction Reference generated by the acquirer, therefore only valid in the context of the same acquirer.

    Mandatory for:

    • CTransactionType.adjustReservation
    • CTransactionType.cancelReservation
    • CTransactionType.purchaseReservationPhoneAuthorized
    • CTransactionType.purchaseReservation
    • CTransactionType.reservation

    Conditional for (can be nil):

    • CTransactionType.activateCard
    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.collectPoints
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.debtRecovery
    • CTransactionType.finalizePurchase
    • CTransactionType.funding
    • CTransactionType.giro
    • CTransactionType.loadVoucher
    • CTransactionType.load
    • CTransactionType.preAuthorization
    • CTransactionType.purchaseForcedAcceptance
    • CTransactionType.purchaseMailOrdered
    • CTransactionType.purchasePhoneAuthorized
    • CTransactionType.purchasePhoneOrdered
    • CTransactionType.purchaseWithCashback
    • CTransactionType.purchase
    • CTransactionType.refunding
    • CTransactionType.unload

    Forbidden (always nil):

    • CTransactionType.accountVerification
    • CTransactionType.reversal
    @type {String}

    Declaration

    Swift

    public let acqTransRef: String?
  • SIX Transaction Reference.

    Declaration

    Swift

    public let sixTrxRefNum: String?
    • Cardholder name.

    • Optional: Mandatory if requested by acquirer.

    • Specifications: banking, austrianUseCases.

    DEPRECATED: use CardData.Cardholder instead.

    Declaration

    Swift

    public let cardholderName: String?
  • Cardholder ID- or Passport number.

    Optional: Mandatory if requested by acquirer.

    Specifications: banking, austrianUseCases.

    Conditional for (can be nil):

    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.giro
    • CTransactionType.purchase
    • CTransactionType.reversal

    Otherwise Forbidden (always nil) @type {String}

    Declaration

    Swift

    public let clientIdentifier: String?
  • Account number of the card used.

    Optional: Mandatory if requested by acquirer.

    Specifications: banking, austrianUseCases.

    Conditional for (can be nil):

    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.giro
    • CTransactionType.purchase
    • CTransactionType.reversal

    Otherwise Forbidden (always nil) @type {String}

    Declaration

    Swift

    public let accountNumber: String?
  • Person OID.

    Optional: Mandatory if requested by acquirer.

    Specifications: banking, austrianUseCases.

    Conditional for (can be nil):

    • CTransactionType.authorizeCredit
    • CTransactionType.authorizeDeposit
    • CTransactionType.cashAdvance
    • CTransactionType.combined
    • CTransactionType.credit
    • CTransactionType.giro
    • CTransactionType.purchase
    • CTransactionType.reversal

    Otherwise Forbidden (always nil) @type {Number}

    Declaration

    Swift

    public let personOid: Int64?
  • Card ID.

    Optional: Mandatory if requested by acquirer.

    Specifications: banking, austrianUseCases.

    Declaration

    Swift

    public let cardId: String?
  • Indicates if a transaction was performed as non guaranteed payment (NGV).

    Available if {@link Guides#AUSTRIAN_USE_CASES} is enabled.

    Declaration

    Swift

    public let ngvUsedFlag: Bool?
  • Omnichannel payment / transaction identifier. Optional: Mandatory if available to terminal. Specifications: retail, banking, austrianUseCases.

    Declaration

    Swift

    public let omnichannelPaymentId: String?
  • Used for “Stored Credential” and the “Merchant-Initiated-Transaction (MIT) frameworks. Card scheme data element that links original authorisation requests to subsequent messages. Used also for Initial recurring and omnichannel use cases. Optional: Mandatory if available to terminal. Specifications: retail, banking, austrianUseCases.

    Declaration

    Swift

    public let schemeTrxId: String?
  • Age check result. Optional: Mandatory if available to terminal. Specifications: valueAddedServices.

    Declaration

    Swift

    public let ageCheckResult: CAgeCheckResult?
  • Textual representation.

    Declaration

    Swift

    public var description: String { get }