Wincor Nixdorf NDC - Extension For EMV
Wincor Nixdorf NDC - Extension For EMV
"
##"$%&
'( ) * + ,
- .$/ .$$0
! - "1
"
! / 2 .$$$ .$$0
NDC / Diebold D91x
Message Format Extension for EMV 1.1 / 20.12.04
Table of Contents
1 History / References .............................................................................. 3
1.1 Change history .................................................................................. 3
1.2 Document references ........................................................................ 3
2 Purpose of the document....................................................................... 4
2.1 Background ....................................................................................... 4
2.2 Objective ........................................................................................... 4
3 EMV Chip Card State ............................................................................ 5
3.1 Contact Chip and Candidate List creation (Operation 000) ............... 6
3.1.1 NDC .............................................................................................. 7
3.1.2 Diebold D91x................................................................................. 9
3.2 Customer EMV Application selection (Operation 001)..................... 10
3.2.1 NDC ............................................................................................ 11
3.2.2 Diebold D91x............................................................................... 14
3.3 Start/Restart EMV Application (Operation 002) ............................... 17
3.4 Initialize EMV Transaction Data (Operation 003) ............................ 19
3.5 Generate 1st AC/ARQC (Operation 004) ......................................... 21
3.6 Generate 2nd AC/AAC cancellation (Operation 005)........................ 23
3.7 EMV Language Selection (Operation 006) ...................................... 24
3.7.1 NDC ............................................................................................ 24
3.7.2 Diebold D91x............................................................................... 26
3.8 Transaction Reply/Interactive Transaction Reply overlay................ 27
4 EMV Customization Data..................................................................... 28
4.1 Application Identifier Table .............................................................. 29
5 Screen Template Format ..................................................................... 31
5.1 NDC Example.................................................................................. 32
5.2 Diebold D91x Example .................................................................... 33
6 Messages ............................................................................................ 34
6.1 Transaction Request Message ........................................................ 34
6.1.1 Last Transaction Status Extension .............................................. 34
6.1.2 EMV Data Buffer ......................................................................... 35
6.2 Transaction Reply EMV Data Buffer................................................ 36
6.3 Solicited Status Message extension ................................................ 37
6.4 EMV Fault Status Message ............................................................. 38
6.4.1 Solicited EMV Status Message ................................................... 38
6.4.2 Unsolicited EMV Status Message ............................................... 41
6.4.3 Chip communication errors (‘0’) .................................................. 43
6.4.4 Logical EMV errors (‘1’)............................................................... 43
6.4.5 EMV data error (‘2’) ..................................................................... 44
7 TAG usage .......................................................................................... 45
8 Journal entries ..................................................................................... 47
8.1 Variable Names for Journaling purposes......................................... 47
8.2 Journal entry configuration .............................................................. 48
9 Typical EMV Transaction flow ............................................................. 49
9.1 Contact Chip.................................................................................... 49
9.2 Create Application Candidate List ................................................... 49
1 History / References
2.1 Background
Credit card fraud has grown considerably and constantly over the last
years. To reduce the number of credit card frauds and to minimize the
associated damage Europay, Mastercard and Visa have defined
requirements for the whole chain of credit card authorization and
transactions.
These requirements are known as EMV and are based on the use of chip
cards on credit cards instead of the so far used magnetic stripe.
The defined requirements set standards for the hardware involved as well
as the software on the authorizing terminals, the connection between
authorizing switch and the software on the switch and its communication
with the issuers host.
2.2 Objective
Wincor Nixdorf International GmbH offers ATM software, which is ranked
around the leading message formats for the switch communication, such
as:
• ProCash/PBM for the IBM message format
• ProCash/ISO for the ISO 8583 message format
• ProCash/DDC for the Diebold D91x message format
• ProCash/NDC for the NCR NDC and NDC+ message format
EMV has a high influence on the ATM software and its communication with
the switching system.
These EMV related extensions are independent from any particular NDC(+)
or Diebold D91x protocol implementation at both the terminal and host side.
3– Operation specific
state parameters
3.1.1 NDC
3.2.1 NDC
If the application was started successfully, the application label (TAG 50) is
stored into the Screen (see entry 11 and 12) and the magnetic track 2 data
is replaced by the track 2 equivalent from the chip (TAG 57)
In case of EMV level or HW level error the EMV or HW error next state is
taken.
TAGs set:
- 9A Transaction Date
- 9F37 Unpredictable Number
- 9C Transaction Type
- 5F2A Transaction ISO Currency Code
- 5F36 Transaction ISO Currency Exponent
- 81 Transaction Amount Binary
- 9F02 Transaction Amount
The EMV Data Buffer will be filled with appropriate data and CDOL1 for
transmition to the Host in Transaction Request Message.
3.7.1 NDC
The Host can send an empty IAD TAG 91 (9100), which will indicate that no
External Authenticate should take place. Internally the IAD TAG 91 is
emptied (all hex 0) and a TC or AAC (decline) is requested in the Generate
2nd AC depending on the ARC sent by the Host.
The transaction is canceled and a solicited EMV error message is sent if the
Final Card Analysis fails or one of the following happens:
• Approve (TC) was requested but Chip denies (indicated by
Cryptogram Information Data TAG 9F27)
• External Authenticate failed (indicated by Terminal Verification Result
TAG 95 and Transaction Status Information TAG 9B)
• Script processing failed (indicated by Terminal Verification Result
TAG 95 and Transaction Status Information TAG 9B)
This table is downloaded by the Host using the EMV Customization Data
with the following Data:
All ‘*’ characters within the screen template are replaced by the application
label.
Because the application label can contain lower case characters but typical
NDC and Diebold D91x fonts do not contain those characters it might be
required to convert the application label to upper case.
Additionally it is necessary to specify the kind of justification (right, left or
centered) used to fill in the application label, because typically application
labels should be right justified if associated to the right FDKs, but left
justified for the left FDKs.
All this formatting is indicated by one of the following character sequences
in the screen template:
• %R% right justified with upper case conversion
• %r% right-justified without upper case conversion
• %L% left justified with upper case conversion
• %l% left-justified without upper case conversion
• %C% centered with upper case conversion
• %c% centered without upper case conversion
@ABCDEFGHIJKLMNO0123456789:;<=>?
@
A
B
C
D
E MASTER CARD
F - A
G
H
I - B
J
K
L - C
M
N
O - D
@ABCDEFGHIJKLMNO0123456789:;<=>?
@
A
B
C
D
E
F - A
G
H
I - B
J
K
L - C
M
N Cirrus
O - D
@ABCDEFGHIJKLMNO0123456789:;<=>?PQRSTUVW
@
A
B
C
D
E
F
G
H
I MASTER CARD - A
J
K
L - B
M
N
O - C
0
1
2 - D
3
@ABCDEFGHIJKLMNO0123456789:;<=>?PQRSTUVW
@
A
B
C
D
E
F
G
H
I - A
J
K
L - B
M
N
O - C
0
1
2 Cirrus - D
3
6 Messages
6.1 Transaction Request Message
I.e.
91080123456789ABCDEF8A023030
9100
Script ID 8
6.4.1.1 NDC
Script ID 8
Script ID 8
6.4.2.1 NDC
7 TAG usage
TAG Name Description/Usage
91 Issuer Authentication Received from Host in Transaction
set Data (IAD) Reply EMV Data Buffer
8A Authorization Response Received from Host in Transaction
set Code (ARC) Reply EMV Data Buffer
71 Issuer Script Template 1 Received from Host in Transaction
set Reply EMV Data Buffer (optional)
72 Issuer Script Template 2 Received from Host in Transaction
set Reply EMV Data Buffer (optional)
9F27 Cryptogram Information Checked after Generate 1st AC and
read Data Generate 2nd AC
95 Terminal Verification Sent to the Host in Last Transaction
read Result (TVR) Status and Solicited error messages.
9B Transaction Status Sent to the Host in Last Transaction
read Information (TSI) Status and Solicited error messages.
57 Track 2 Equivalent Data Used to replace magnetic Track 2 data
read in Start/Restart EMV Application
(Operation 002). Also used to
recalculate PAN, FIT, etc. if Smart FIT
Check State ‘k’/NDC or Enhanced
Check FIT State ‘@B ‘/D91x is used
9F37 Unpredictable Number Calculated in Initialize EMV Transaction
set Data (Operation 003) and Start/Restart
EMV Application (Operation 002)
5F2A Transaction Currency Set in Initialize EMV Transaction Data
set Code (Operation 003)
5F36 Transaction Currency Set in Initialize EMV Transaction Data
set Exponent (Operation 003)
9C Transaction Type Set in Initialize EMV Transaction Data
set (Operation 003)
9A Transaction Date Calculated in Initialize EMV Transaction
set Data (Operation 003)
81 Amount, Authorized Calculated in Initialize EMV Transaction
set (binary) Data (Operation 003)
9F02 Amount, Authorized Calculated in Initialize EMV Transaction
set (numeric) Data (Operation 003)
8C Card Risk Management Will always be included into Transaction
read Data Object List 1 Request Message - EMV Data Buffer
(CDOL1)
9F07 Application Usage Used to determine if the selected
read Control (AUC) Application can be used at an ATM in
Start/Restart EMV Application
(Operation 002)
All other TAGs are handled according to the EMVCO specification Book 1 –
4.
8 Journal entries
This is done in the Contact Chip and Candidate List creation (Operation
000) State.
This is also done in the Contact Chip and Candidate List creation
(Operation 000) State.
All this is done in the Start/Restart EMV Application (Operation 002) State.
Smart FIT Check State ‘k’/NDC or Enhanced Check FIT State ‘@B ‘/D91x
Recalculate PAN and perform FIT check based on application Track
2 equivalent
Transaction Chaining:
Transaction Request State ‘I’
Send transaction request message including EMV Data Buffer
Receive/process transaction reply message (Generate 2nd AC)
Reenter Amount:
Transaction Request State ‘I’
Send transaction request message including EMV Data Buffer
Receive/process transaction reply message (Generate 2nd AC)
Reenter PIN:
Transaction Request State ‘I’
Send transaction request message including EMV Data Buffer
Receive/process transaction reply message (Generate 2nd AC)