For the complete documentation index, see llms.txt. This page is also available as Markdown.
Page cover

MTSCRA Class Methods - 51 - 60

getTrackDecodeStatus

Retrieves track decode status. This is a one-byte value, which indicates the status of decoding track 1. Bit position zero indicates if there was an error decoding track 1 if the bit is set to one. If it is zero, then no error occurred. If a track has data on it that is not noise, and it is not decodable, then a decode error is indicated. If a decode error is indicated, the corresponding track data length value for the track that has the error will be set to zero and no valid track data will be supplied.

public String getTrackDecodeStatus()

Parameters: None Return Value:

Track Decode Status. Consists of three 2-byte hex values representing the decode status for tracks 1, 2, and 3 (respectively from left to right). Values are:

  • 00 = Track OK

  • 01 = Track read Error

  • 02 = Track is Blank

getSDKVersion

Retrieves SDK version.

public String getSDKVersion()

Parameters: None

Return Value:

The version information of the SDK.

sendCommandToDevice

Send command to device.

public int sendCommandToDevice(String command)

Parameters:

Parameter

Description

command

Command string to send to the device.

Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

startTransaction (EMV Device Only)

This function starts an EMV L2 transaction.

Parameters:

Parameter

Description

timeLimit

Specifies the maximum time, in seconds, allowed to complete the total transaction. This includes time for the user to insert the card, choose a language, choose an application, and online processing. If this time is exceeded, the transaction will be aborted and an appropriate Transaction Status will be available. Value 0 is not allowed.

cardType

Card Type to Read:

0x01 = Magnetic Stripe (as alternative to EMV L2, card swipe causes abort of EMV L2)

0x02 = Contact smart card 0x04 = Contactless smart card

Note: Multiple Card Types can be selected, for example: Set this byte to 3 to read both Magnetic Stripe and Contact Smart Card.

option

0x00 = Normal 0x01 = Bypass PIN 0x02 = Force Online

0x04 = Acquirer not available (Note: prevents long timeout on waiting for host approval) (causes “decline” to be generated internally if ARQC is generated)

To use Quick Chip mode, set the most significant bit to ‘1’. 0x80 = Quick Chip, Normal

0x81 = Quick Chip, Bypass PIN 0x82 = Quick Chip, Force Online

amount

Amount Authorized (EMV Tag 9F02, format n12, 6 bytes) in hex string

For example: “000000000999”, means 9.99 dollars.

Parameter

Description

transactionType

Valid values:

0x00 = Purchase (listed as “Payment” on ICS)

0x01 = Cash Advance (not supported for this reader)

0x02 or 0x09 = Cash back (0x09 not supported, contactless) 0x04 = Goods (Purchase)

0x08 = Services (Purchase)

0x10 = International Goods (Purchase) 0x20 = Refund

0x40 = International Cash Advance or Cash Back 0x80 = Domestic Cash Advance or Cash Back

cashBack

Cash back Amount (if non-zero, EMV Tag 9F03, format n12, 6 bytes) in hex string.

For example: “000000001000”, means 10.00 dollars.

currencyCode

Transaction Currency Code (EMV Tag 5F2A, format n4, 2 bytes) Sample Valid values:

0x0840 – US Dollar 0x0978 – Euro 0x0826 – UK Pound

reportingOption

This single byte field indicates the level of Transaction Status notifications the host desires to receive during the course of this transaction.

0x00 = Termination Status only (normal termination, card error, timeout, host cancel)

0x01 = Major Status changes (terminations plus card insertions and waiting on user)

0x02 = All Status changes (documents the entire transaction flow)

Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

setUserSelectionResult (EMV Device Only)

This function sets the user selection result. It should be called after receiving the OnUserSelectRequest event which is triggered after the user makes a selection.

Parameters:

Parameter

Description

status

Indicates the status of User Selection:

0x00 – User Selection Request completed, see Selection Result

0x01 – User Selection Request aborted, cancelled by user

0x02 – User Selection Request aborted, timeout

selection

Indicates the menu item selected by the user. This is a single byte zero based binary value.

Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

setAcquirerResponse (EMV Device Only)

This function informs EMV device to process transaction decision from acquirer.

Parameters:

Parameter

Description

response

The first two bytes (most significant byte first) indicate the total length of the following byte array. The byte array contains the ARQC Response message. For details about the ARQC response, see the Programmer's Manual (COMMANDS) for the specific device you are communicating with.

Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

cancelTransaction (EMV Device Only)

This function cancels a transaction while waiting for the user to insert a card.

Parameters: None Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

sendExtendedCommand (EMV Device Only)

Send extended command to device.

Parameters:

Parameter

Description

command

Hexadecimal string of the byte array for the extended command.

The first two bytes represent the value of the extended command.

The next two bytes (most significant byte first) indicate the total length the following data in bytes.

Return Value:

  • 0 = Success

  • 9 = Error

  • 15 = Busy

getDeviceFeatures()

Retrieves features for the device.

Parameters: None

Return Value:

getPowerManagementValue()

Retrieves power management value for the device.

Parameters: None

Return Value: Returns the PM value associated with the device.

Parameter

Power Management

BulleT KB BulleT SPP

cDynamo

PM1

Dynamag, Dynamag Duo, USB Enc IntelliHead V5

Dynasty

PM3

DynaMAX

PM2

DynaPAD

DynaWave

eDynamo

PM3

Flash

PM1

iDynamo

iDynamo 5

Home Banking (Dynamo LCD)

kDynamo

PM5

mDynamo

P-series and I-65 w/V5

pDynamo

PM6

sDynamo

SPI Encrypting IntelliHead V5

tDynamo

PM5

UART Enc IntelliHead V5

uDynamo

PM4

U-Finity

PM1

Last updated