Command emv.getinfo

Knowledge about the EMV standard is required to use this command.

The command emv.getinfo is used to search for results in the instructions emv.inittransaction, emv.processtransaction and emv.finishtransaction.

Parameters

  1. parameter [string]
    Parameter name to search for (see table below).
  2. type [string]
    Possible types:
    • init
    • process
    • finish
  3. value [string]
    Variable that will store the parameter value that will be returned by the EMV Kernel.

Allowed parameters:

For the type 'init' <emv.inittransaction/>

Parameter Description Contact Cless
bCardType Card type
0 - Magnetic stripe
3 - EMV chip card.
x
bLastChipStatus Status of the last card read
0 - OK
1 - Fallback is necessary
2 - App not supported.
x
bAppType Application selection type (as per the parameters table)
01 - Credit
02 - Debit
03 - Voucher
x
bAcquirerID Acquiring network identifier (as per the parameters table). x
bRegisterIndex Registry index in the parameter table. x
bTrack1Len Field size of bTrack1. x
baTrack1 Track 1 (Hex). x
bTrack2Len Field size of bTrack2. x
baTrack2 Track 2 (Hex). x
bTrack3Len Field size of bTrack3. x
baTrack3 Track 3 (Hex). x
bPANLen Field size of baPAN. x
baPAN PAN x
bPANSequence translation missing: en.posxml.commands.emv_getinfo.table_1.table_row_14 x
bApplicationLabelLen Field size of baApplicationLabel. x
baApplicationLabel Application Name. x
baServiceCode Service Code (padded to the left with zeros). x
bCardHolderNameLen Field size of baCardHolderName. x
baCardHolderName Cardholder name. x
baExpirationDate Expiry date (“AAMMDD”). x
bExternalNumberLen Field size of baExternalNumber. x
baExternalNumber External card number. x
baBalance Balance, allowed in money (wallet). x
baIssuerCountryCode Country code of the Issuer. x
baApplicationIdentifier Application Identifier. x

For the type 'process' <emv.processtransaction/>

Parameter Description Contact Cless
bDecision Decision taken
0 - Approved Offline
1 - Declined
2 - Go Online
x x
bSignature Signature on paper should be obtained
0 - No
1 - Yes
x x
bOfflinePIN PIN was verified Offline
0 - No
1 - Yes
x x
bOfflinePINErrors Number of invalid PIN entries Offline x x
bOfflinePINBlocked Offline PIN was blocked at the last invalid entry
0 - No
1 - Yes
0 - No
1 - Yes
x x
bOnlinePIN PIN captured for online verification
0 - No
1 - Yes
x x
baDUKPTInfo Key Serial Number and Key Counter in the case of PIN Online x x
iTLVDataEMVLen Field size of baTLVDataEMV x x
baTLVDataEMV Mandatory and Optional Tags required in parameter baMandatoryTags of AddData (cryptogram to be analyzed by the card issuer in the event of an online transaction) x x
baBalance Amount available for offline approval x
baVLPIssuerAuthCode VLP Issuer Authorization Code. Only for Visa and JCB cards x
baCardTransactionQualifiers VISA Card Transaction Qualifiers x
baAppExpirationDate Application expiration date x
baAppEffectiveDate Application effective from date (“DDMMAA”) x
bTrack1EquivalentDataLen Field size of baTrack1EquivalentData x
baTrack1EquivalentData Track 1 Equivalent Data x
bTrack2EquivalentDataLen Field size of baTrack2EquivalentData x
baTrack2EquivalentData Track 2 Equivalent Data x
bCardType Card type
0 - Magnetic stripe
3 - EMV chip card
x
bApplicationIdentifierLen Field size of baApplicationIdentifier x
baApplicationIdentifier Application Identifier x
bTrack1Len Field size of bTrack1 x
baTrack1 Track 1 (Hex) x
bTrack2Len Field size of bTrack2 x
baTrack2 Track 2 (Hex) x
bPANLen Field size of baPAN x
baPAN PAN x
bPANSequence PAN Sequence x
bApplicationLabelLen Field size of baApplicationLabel x
baApplicationLabel Application Name x
bCardHolderNameLen Field size of baCardHolderName x
baCardHolderName Cardholder name x
bPinBypassed Returns the Bypass result
0 - Bypass didn't accomplished
1 - Bypass accomplished
x x

For the type 'finish' <emv.finishtransaction/>

Parameter Description
bDecision Decision taken
0 - Approved
1 - Declined by card
2 - Declined by host
TLVDataEMVLen Mandatory and Optional tags required in emv.processtransaction
bIssuerScriptResLen Size of Issuer Script Results
baIssuerScriptResults Results of scripts execution (EMV 4.2, Book 4, Section A5)

Example


In the example above, the command emv.getinfo was used to fetch the parameters following the execution of the commands emv.inittransaction, emv.processtransaction and emv.finishtransaction. The command print was used to display the ticket information.

Note that before performing the commands init, process and finish it is necessary to pass parameters to the EMV Kernel with the command emv.adddata.