TSYSDetailRecord Configuration
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.DetailRecord Configuration Settings
AccountDataSource: Identifies the source of the customer card data entered.This field is sent in the request based on the EntryDataSource value specified by default.
However that value can be overridden by setting this config.
Valid values are:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VisaMVV: Merchant Verification Value used for Visa healthcare transactions.The Merchant Verification Value (MVV) is used by Visa to determine a merchant's eligibility to participate in a Select Merchant Fee (SMF) program. The maximum length of this property is 10 characters, and it may only contain 0-9 and A-F. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVData: The EMV Data returned from a Pin Pad after reading an EMV card.This configuration setting takes the entire TLV (tag-length-value) response received from a Pin Pad after reading an EMV card. When setting this field, any EMV tags that are not specified within the TSYS specifications, to include in the request, will be removed from the input. The component will send this data in an authorization request. Note that when performing an EMV transaction, POSDataCode is required. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Processor: Specifies the Processor you are connecting to.This field allows you to specify the processor that you are connecting to (thus allowing the component to
correctly generate the request and parse the response). The available values are:
Note that when set, this property will set the Server and Port to the default values for the specified processor. Additionally, this config must be set prior to setting Card to ensure the card data is formatted correctly. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HeartlandEncryptionMode: Specifies the encryption mode to use in Heartland transactions.This field allows you to specify the Heartland E3 encryption mode used when processing Heartland transactions.
The available values are (descriptions describe the data that will be encrypted):
Note you will also need to set Processor to 1 (Heartland) and HeartlandKeyBlock if you wish to process Heartland E3 transactions. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HeartlandDeviceId: Specifies a device ID to uniquely identify each terminal (card data entry device).The specified value must be 4 characters or less. Note that this value is required to comply with MasterCard's Authorization Data Accuracy Initiative. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RequesterName: Name of the requester.This configuration setting can be used to set the name of the requester, if the card holder is not the person that ordered or purchased the product or service. This configuration setting applies to the Amex CAPN Corporate Purchasing Solution Extension. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TotalTaxAmount: Total Tax Amount assessed at the point-of-sale.This configuration setting can be used to set the total of all taxes applicable to a transaction and it should not be used to report individual line item details for taxes. This configuration setting applies to the Amex CAPN Corporate Purchasing Solution Extension. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DetailExtension: Detail Extension Optional Data Group.This configuration setting takes a semi-colon separated list of name-value pairs. The available field names and their applicable values can be found below. The fields can be set in any order and not all fields are required to be set.
CodeExample:
DetailRecord.Config("DetailExtension=PTI=C02;TTT=02;TMI=01"); OAI (Optional Amount Identifier)
OA (Optional Amount) This field can be used to set the Optional Amount. PON (Purchase Order Number) This field can be used to set a 16, 17 or 25-character Purchase Order Number supplied by Visa or MasterCard Purchasing Card cardholder. PTI (Payment Transaction Indicator)
IIA (MC IIAS Indicator)
SID (Merchant Seller ID) A seller/vendor code that uniquely identifies an aggregator's specific seller/vendor ATS (Association Timestamp) This field can be used to set the timestamp data provided by the association. TTT (Transit Transaction Type Indicator)
TMI (Transportation Mode Indicator)
TFA (Transaction Fee Amount with Indicator)
Transaction fee amount is used in credit transactions to carry the acquirer-assessed surcharge for informational purposes only. This field can be zero length or nine alphanumeric characters in length. The format of the nine characters is "annnnnnnn" where "a" is either "D" for debit or "C" for credit and where "nnnnnnnn" is the numeric fee amount with the decimal implied. Example: "D00000150" is a $1.50 transaction fee amount debited to the cardholder's account. MDO (Domain Server)
MDE (Mobile Device Type) This field is required for all MasterCard PayPass (contactless) transactions.
DTC (Invoice Level Discount Treatment Code)
TTC (Tax Treatment Code)
SQI (Spend Qualified Indicator)
TAL (Token Assurance Level) Defined by the token service provider, this Visa or MasterCard value indicates the assigned confidence level of the token-to-PAN/cardholder binding. TRI (Token Requestor ID) This 11-character alphanumeric field contains the value that uniquely identifies the pairing of token requestor with the token domain. This value is sent in capture to identify the requestor to the card brand. ARS (Account Range Status)
WID (MasterCard Wallet Identifier) This is a MasterCard value that is generated by the MasterPass online platform. This value is passed to the merchant at the time of consumer checkout for e-commerce transactions, and is included in the authorization request. ISO (ISO ID) This 11-digit field, assigned by MasterCard, is assigned during registration via MasterCard Connect for a Service Provider designated as an "Independent Sales Organization". This value must be provided on all MasterCard transactions where the merchant has a relationship with an ISO. PFI (Payment Facilitator ID) This 11-digit field, assigned by MasterCard, is assigned during registration via MasterCard Connect for the Service Provider designated as a "Payment Facilitator." This value must be present on all MasterCard transactions that originate from a Payment Facilitator. SMI (Sub-Merchant ID) This 15-digit field, assigned by the Payment Facilitator or the Acquirer, must be provided on all MasterCard transactions that originate from a Payment Facilitator. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TsysETB: The Encryption Transmission Block TSYS uses to decrypt encrypted data.This field is used to specify the Base-64 encoded ETB (Encryption Transmission Block) used by TSYS to decrypt Voltage encrypted data. The value is retrieved from the POS device containing the Voltage encryption software. When specified, the transaction will be sent as a Voltage encrypted transaction. The encrypted card data will be specified as normal via the MagneticStripe or Number fields. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Token: The token used in place of Card data.This field will contain the token received from TSYS and used in place of Card data. This is used as an added security measure to protect a customer's Card and may also help decrease PCI Compliance verification as storing credit card data is no longer needed. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MobileDeviceType: Identifies the type of mobile device used by the cardholder to initiate the transaction.This field is required for all MasterCard PayPass (contactless) transactions.
Valid values are:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SpendQualifiedIndicator: Indicates whether or not the spend qualification threshold has been met.This field is for High Value card transactions.
Valid values are:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVTranType: The Transaction Type used by the card to calculate the cryptogram.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVTranDate: The local date at the terminal on which the transaction was authorized.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. The value must be in YYMMDD format. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVVerificationResult: The indicators representing the results of offline and online processing, recorded by the terminal.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVCurrencyCode: The currency code of the transaction.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVAppTranCounter: The count of the transactions performed within the application.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVAppInterchangeProfile: A series of indicators that reflect the specific functions supported by the chip card account.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVAppCryptogram: The clearing cryptogram used to validate transaction processing in the event of a dispute.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVUnpredictableNum: The number used in the generation of the cryptogram.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVIssuerAppData: Application data for transmission to the issuer in an online transaction.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVCryptogramInfoData: The type of cryptogram and the actions to be performed by the terminal.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVTerminalCapabilities: Indicates the card input data, the Cardholder Verification Method (CVM), and the security capabilities that are supported by the terminal.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVCardSeqNum: The number assigned to a specific card when two or more cards are associated with a single account number.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVIssuerAuthData: Data sent by the Issuer to the Chip Card for the Chip Card to validate the authenticity of the Issuer.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVCVMResults: The results of the last Cardholder Verification Method (CVM) performed.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVIssuerScriptResults: The update command that the issuer sends in the authorization response to the card during online processing.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVFormFactorID: This indicators related to the attributes of the cardholder's device and the technology used for the communication between the cardholder's device and the acquiring device.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EMVCryptogramAmount: Contains the transaction amount used by the chip when calculating the last cryptogram.This value is returned by the EMV Pin Pad/Terminal device and is sent as part of the EMVData in the authorization. The component parses the EMVData to obtain and populate this config. |
Base Configuration Settings
GUIAvailable: Tells the component whether or not a message loop is available for processing events.
In a GUI-based application, long-running blocking operations may cause the application to stop responding to input until the operation returns. The component will attempt to discover whether or not the application has a message loop and, if one is discovered, it will process events in that message loop during any such blocking operation.
In some non-GUI applications an invalid message loop may be discovered that will result in errant behavior. In these cases, setting GuiAvailable to false will ensure that the component does not attempt to process external events. | |
UseBackgroundThread: Whether threads created by the component are background threads.If set to True, when the component creates a thread the thread's IsBackground property will be explicitly set to True. By default this setting is False. | |
UseManagedSecurityAPI: Tells the component whether or not to use the system security libraries or a managed implementation.
By default the component will use the system security libraries to perform cryptographic functions. This means
calls to unmanaged code will be made. In certain environments this is not desirable. To use a completely managed security
implementation set this setting to True. Setting this to True tells the component to use the internal managed implementation
instead of using the system's security API.
Note that when this value is set the product's system dll is no longer required as a reference, as all unmanaged code is stored in this file. |