CardData

public class CardData : CustomStringConvertible

Contains information about the used payment card Immutable class.

  • Create card data information.

    Declaration

    Swift

    public init(posEntryMode: CPosEntryMode?,
                aid: String?,
                acc: String?,
                cardNumber: String?,
                cardNumberPrintable: String?,
                cardNumberPrintableCardholder: String?,
                cardNumberEnc: Data?,
                cardNumberEncKeyIndex: Int?,
                cardExpiryDate: TimeDate?,
                brandName: String?,
                tenderName: String?,
                cardTrackDatas: [CardTrackData],
                loyaltyInformations: [String: Data],
                cardRef: String?,
                processingDisposition: CProcessingDisposition?,
                language: String?,
                cardCountryCode: Int?,
                terminalCountryCode: Int?,
                uid: String?,
                asrpd: Data?,
                cardProductType: CCardProductType?,
                cardType: Int?,
                cardholder: String?,
                accountType: CAccountType?,
                emvPar: String?,
                tokenPan: String?,
                tokenPanType: CTokenPanType?,
                additionalCardData: String?
    		)
  • POS entry mode.

    Declaration

    Swift

    public let posEntryMode: CPosEntryMode?
  • aid

    Application identifier.

    Declaration

    Swift

    public let aid: String?
  • acc

    Application currency code.

    Declaration

    Swift

    public let acc: String?
  • Card number. Only for Non-PCI applications and if available to the terminal.

    Declaration

    Swift

    public let cardNumber: String?
  • Card number that should be printed on a merchant receipt.

    Declaration

    Swift

    public let cardNumberPrintable: String?
  • Card number that should be printed on a cardholder receipt.

    Declaration

    Swift

    public let cardNumberPrintableCardholder: String?
  • Encrypted card number.

    Declaration

    Swift

    public let cardNumberEnc: Data?
  • Card number encryption key index.

    Declaration

    Swift

    public let cardNumberEncKeyIndex: Int?
  • Card expiration date. Only for Non-PCI applications and if available to the terminal.

    Declaration

    Swift

    public let cardExpiryDate: TimeDate?
  • Card brand name.

    Declaration

    Swift

    public let brandName: String?
  • Card tender name.

    Declaration

    Swift

    public let tenderName: String?
  • List of card track data if present.

    Declaration

    Swift

    public let cardTrackDatas: [CardTrackData]
  • Loyalty information if present. Keyed by loyalty type string.

    Declaration

    Swift

    public let loyaltyInformations: [String : Data]
  • Petrol: Reference from the card.

    Declaration

    Swift

    public let cardRef: String?
  • Defines if the ECR or EFT is responsible for further trx handling.

    Specifications: petrol, unattended.

    Declaration

    Swift

    public let processingDisposition: CProcessingDisposition?
  • Card language.

    Declaration

    Swift

    public let language: String?
  • Card country code.

    Declaration

    Swift

    public let cardCountryCode: Int?
  • Terminal country code.

    Declaration

    Swift

    public let terminalCountryCode: Int?
  • uid

    Contains the uid of the contactless card.

    Declaration

    Swift

    public let uid: String?
  • Asrpd.

    Declaration

    Swift

    public let asrpd: Data?
  • CardProductType.

    Declaration

    Swift

    public let cardProductType: CCardProductType?
  • CardType.

    Declaration

    Swift

    public let cardType: Int?
  • Cardholder.

    Declaration

    Swift

    public let cardholder: String?
  • Card product type.

    Declaration

    Swift

    public let accountType: CAccountType?
  • The EMV PAR “may be used to link transactions initiated on Payment Tokens with transactions initiated on the underlying PAN”, which can be used in a transaction response to be able the identify if the transaction e.g. with a used token PAN is related to a previous transaction performed with the underlying PAN. If so, both transaction responses will contain the same value in the EmvPar field.

    Declaration

    Swift

    public let emvPar: String?
  • The token PAN is a tokenized version for an underlaying card PAN. If the underlaying payment protocol supports it, a payment transaction can be initiated with the token PAN instead of using a card. A token PAN is normally generated by a tokenization service either form the acquirer host or the issuer host.

    The TokenPan field is used in a SIXml request message as part of the sixml:TransactionData container to trigger a token-based transaction and in a SIXml response message as part of the sixml:CardData container for returning token PANs to the ECR.

    The TokenPan field always must be accompanied by a corresponding TokenPanType field.

    Declaration

    Swift

    public let tokenPan: String?
  • To differ the source of a token PAN, the TokenPanType field is used in a SIXml request message as part of the sixml:TransactionData container and in a SIXml response message as part of the sixml:CardData container.

    The TokenPanType field always is transmitted if a TokenPan field is transmitted but must not be transmitted alone.

    Declaration

    Swift

    public let tokenPanType: CTokenPanType?
  • Additional card information (non-PCI) that can have merchant specific formatting. Guides: Dialog

    Declaration

    Swift

    public let additionalCardData: String?
  • Textual representation.

    Declaration

    Swift

    public var description: String { get }