100% found this document useful (1 vote)
771 views438 pages

Procash/Ndc V3.0/00 Proconsult/Ndc V3.0/00: User Guide

Uploaded by

armenita.bogaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
771 views438 pages

Procash/Ndc V3.0/00 Proconsult/Ndc V3.0/00: User Guide

Uploaded by

armenita.bogaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 438

ProCash/NDC V3.

0/00
ProConsult/NDC V3.0/00
User Guide

Edition November 2012


Copyright and Trademarks

Copyright © Wincor Nixdorf GmbH 2012.


All rights, including rights of translation by printing, copying or similar methods, even of parts, are reserved.
All rights, including rights created by patent grants or registration of a utility model or design, are reserved. Delivery
subject to availability; right of technical modifications reserved.
All names of hardware and software products mentioned in this manual are trade names and/or trademarks of
their respective manufacturers.
All hardware and software names used are trademarks of their respective manufacturers.
Reliant® is a registered trademark of Pyramid Technology Corporation.
SINIX is the UNIX® System derivative of Wincor Nixdorf GmbH.
UNIX is a registered trademark in the United States and other countries, licensed exclusively through
X/Open Company Limited.
Base: OSF/Motif™, Copyright © Open Software Foundation, Inc.
X Window System™, Copyright © Massachusetts Institute of Technology.
OSF/Motif is a trademark of Open Software Foundation, Inc.
X Window System is a registered trademark of Massachusetts Institute of Technology.
MS-DOS® and Windows® are registered trademarks of Microsoft Corporation in the United States and other
countries.
Introduction

Software Structure

System Setup

Modes of operation

Configuration Data

Security Features

Messages

Printers

Additional useful Information

Abbreviations
Figures

Tables

Related publications
Contents

Contents
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

What’s new . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Wincor Nixdorf Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Product AddOn ProFlex/NDC-DDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Purpose of the Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Function Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Supported hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Multi Vendor capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Software Products of ProCash/NDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Software Products of ProConsult/NDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Software Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Dynamic Link Libraries (DLL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Parameter / Data Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Types of Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Compatible Customization Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Extended Configuration Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Global Screen Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Error Mapping Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Font Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Standard Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

System Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Software Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Directory Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Power-up mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Exiting power-up mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Out-of-service mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
In-service mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Offline mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Suspend mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

November 2012
Contents

Service and Operating(SOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


Automatic return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
In-service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Cassettes counters/status printing after exit SV mode . . . . . . . . . . . . . . 51
Rear Balancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Start Rear Balancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Customize Rear Balancing functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Dispense Below Zero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Miscellaneous Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
ADRS operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
ProCash Analyzer (PCA) ProView adaptation . . . . . . . . . . . . . . . . . . . . . . . 60
ProFlex/NDC-DDC AddOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
BNA Message Emulation with ProFlex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
CPM Message Emulation with ProFlex . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
NCR compatible 7 Denomination support . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Configuration Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Steps processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Card Read State (A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
PIN Entry State (B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Customer Selectable PIN State (b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Extension to state (b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Envelope Dispense (C) State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Pre-Set Operation Code Buffer State (D) . . . . . . . . . . . . . . . . . . . . . . . . 82
– Clear mask (entry 3) example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
– A, B, C, D preset masks (entries 4-7) example . . . . . . . . . . . . . . . . . 85
Extension to State (D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Four FDK Selection Function State (E) . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Amount Entry State (F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Amount Check State (G) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Information Entry State (H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Transaction Request State (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Extension to state (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Close State (J) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
FIT Switch State (K) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Expanded FIT Switch State (_) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Extension to State (_) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

November 2012
Contents

Card Write State (L) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115


Enhanced PIN Entry State (M) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Camera Control State (N) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Enhanced Amount Entry State (R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Extension to State (R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Language Code Switch State (S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Extension to State (S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Card Read - PIN Entry Initiation State (T) . . . . . . . . . . . . . . . . . . . . . . 131
Extension to State (T) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Language Select From Card State (V) . . . . . . . . . . . . . . . . . . . . . . . . . 135
FDK Switch State (W) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
FDK Information Entry State (X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Extension to State (X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Eight FDK Selection State (Y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Extension to State (Y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Multi Language Extension to State (Y) . . . . . . . . . . . . . . . . . . . . . . . . . 151
Audio Control State (i) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Hardware Fitness State (‘h’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Extension to State (‘h’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Smart FIT Check State (‘k’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Barcode Read State (‘s’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Skip State step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Screen Control Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
4 Digit Screen Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Displaying Graphics as Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Full Screen graphics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
– Display resolutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Displaying MacroMedia Flash executables . . . . . . . . . . . . . . . . . . . . . 179
Displaying Video files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Voice Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
– Auto Voice Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
– Audible Echo on Keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Reserved Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Reserved Pictures (G00-G06) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Language Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Miscellaneous Configuration Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
Terminal Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
Logical Unit Number (LUNO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

November 2012
Contents

Timer Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188


Local download feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Configure local download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Security Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197


General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
PIN and PIN Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Personal Identification Number (PIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
PIN Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Variable length PIN Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
PIN Offset Number (DES verification) . . . . . . . . . . . . . . . . . . . . . . . . . . 200
PIN Verification Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
PIN Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Local PIN Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Network PIN Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
– ANSI PIN/PAN Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
– Diebold PIN Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
ID Card and FIT Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
ID Card Data Tracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
FIT (Financial Institution Table) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Configuration Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
FIT Library Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Multi Card, Multi Institution Capability . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Alternate Transaction Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
FIT Data Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Institution Index (PIDDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Institution Identification (PFIID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
FIT Switch Index (PSTDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Maximum PIN Entry Digits (PMXPN) . . . . . . . . . . . . . . . . . . . . . . . . . . 213
PIN Check Length (PCKLN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
PIN Pad Character (PINPD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
PAN Index (PANDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
PAN Length (PANLN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
PAN Pad Character (PANPD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
PIN Retry Count Index (PRCNT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Offset Number Index (POFDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Decimalization Table (PDCTB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Encrypted PIN Key (PEKEY) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Data Track Locator (PINDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

November 2012
Contents

Language Code Index (PLNDX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220


Message Authentication (MAC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
MAC flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Security Terminal Number (Machine Number) . . . . . . . . . . . . . . . . . . . 223
MAC data field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Time variant number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Typical Message Authentication Procedure . . . . . . . . . . . . . . . . . . . . . 224
MACing for State and FIT Table Load commands . . . . . . . . . . . . . . . . 225
Triple DES operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
EMV capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Remote Key Loading (RKL) capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Payment Card Industry (PCI) compliance . . . . . . . . . . . . . . . . . . . . . . . . . 226
PCI PA DSS support and documentation . . . . . . . . . . . . . . . . . . . . . . . 226

Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Messages from Terminal to Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Transaction Request message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Solicited Status messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Unsolicited Status messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Network to Terminal messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Transaction Reply command (message ID ‘4’) . . . . . . . . . . . . . . . . . . . 248
Terminal Command message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
State Tables Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Screen Data Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Configuration Parameters Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Enhanced Configuration Parameters Load . . . . . . . . . . . . . . . . . . . . . 271
Interactive Transaction Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
FIT Data Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Encryption Key Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Extended Encryption Key Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Dispenser Currency Mapping Table Load . . . . . . . . . . . . . . . . . . . . . . 289
Configuration ID Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Date And Time Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Message Authentication Field Selection Load . . . . . . . . . . . . . . . . . . . 297
Specific Command Reject Conditions . . . . . . . . . . . . . . . . . . . . . . . . . 302
Terminal operations in Transaction Replies . . . . . . . . . . . . . . . . . . . . . . . . 310
Print Immediate (‘4’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Set Next State and Print (‘5’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311

November 2012
Contents

Night Safe Deposit and Print (‘6’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312


Deposit and Print (‘1’ or ‘7’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Dispense, Deliver and Print (‘2’ or ‘8’) . . . . . . . . . . . . . . . . . . . . . . . . . . 314
Display and Print (‘3’ or ‘9’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
Eject Card, Dispense and Print (‘A’) (Card before Cash) . . . . . . . . . . . 315
Eject Card, Dispense and Print (‘F’) (Parallel CBC) . . . . . . . . . . . . . . . 316
Parallel Eject/Dispense and Print (Fast Cash) (‘B’ or ‘C’) . . . . . . . . . . . 317
Print Data and Stay in Present State (‘P’) . . . . . . . . . . . . . . . . . . . . . . . 317
Print Statement and Set Next State (‘Q’) . . . . . . . . . . . . . . . . . . . . . . . . 318
Electronic Journal Upload (EJU) commands . . . . . . . . . . . . . . . . . . . . . . . 318
Send Options And Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Acknowledge And Continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Acknowledge And Stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
NDC Status Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Solicited Status (terminal state) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
– Send Configuration Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
– Send Supply Counters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
– Send Error Log Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
– Send date/time information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
– Send Configuration ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
– Hardware Configuration Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
– Supplies Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
– Fitness Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
– Tamper and Sensor Status Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
– Software ID and Release Number . . . . . . . . . . . . . . . . . . . . . . . . . . 357
– Extended Hardware Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 359
– Local Configuration Option Digits . . . . . . . . . . . . . . . . . . . . . . . . . . 360
Solicited Status (device fault) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Encryptor Initialisation Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Unsolicited Device Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
– Power Up (unsolicited) (DID ‘B’) . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
– Card Reader (sol./unsol.) (DID ‘D’) . . . . . . . . . . . . . . . . . . . . . . . . . 372
– Dispenser (sol./unsol.) (DID ‘E’) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
– Coin Dispenser (sol./unsol.) (DID ‘Y’) . . . . . . . . . . . . . . . . . . . . . . . 381
– Depository (sol./unsol.) (DID ‘F’) . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
– Envelope Dispenser (unsolicited) (DID ‘\’ . . . . . . . . . . . . . . . . . . . . 386
– Receipt Printer (unsolicited) (DID ‘G’) . . . . . . . . . . . . . . . . . . . . . . . 387
– Journal Printer (unsolicited) (DID ‘H’) . . . . . . . . . . . . . . . . . . . . . . . 389
– Statement Printer (sol./unsol.) (DID ‘V’) . . . . . . . . . . . . . . . . . . . . . . 391

November 2012
Contents

– Vandal Guard (unsolicited) (DID ‘J’) . . . . . . . . . . . . . . . . . . . . . . . . 394


– EDM - Module (unsolicited) (DID ‘L’) . . . . . . . . . . . . . . . . . . . . . . . . 395
– Door Access (unsolicited) (DID ‘N’) . . . . . . . . . . . . . . . . . . . . . . . . . 399
– Sensor Status (unsolicited) (DID ‘P’) . . . . . . . . . . . . . . . . . . . . . . . . 399
– Supervisor Key Messages (unsolicited) (DID ‘R’) . . . . . . . . . . . . . . 401
– Barcode Reader (unsolicited) (DID ‘s’) . . . . . . . . . . . . . . . . . . . . . . 402
Electronic Journal Upload (EJU) Message . . . . . . . . . . . . . . . . . . . . . . 403

Additional Useful Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407


NDC Standard Character Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
ASCII to EBCDIC Code Conversion Table . . . . . . . . . . . . . . . . . . . . . . . . . 412
Screen Design Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414

Printers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Printer Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Printer Control Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Electronic journal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Electronic journal storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Types of journal information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Printing with Windows GDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Printing with XFS Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Barcode Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Barcode Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Barcode print examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Barcode image examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Landscape printing on the receipt printer . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Two Colors print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Default Deposit Print Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425

Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427

Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433

Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435

Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437

November 2012
Contents

November 2012
What’s new
This section lists a summery of documentation changes and enhancements of
the ProCash/NDC User Guide.
Since June 2012 until November 2012:
• Barcode Reader unsolicited message added
• Version update

Since May 2011 until June 2012:


• New section ”NCR compatible 7 Denomination support” on page 61
• New section ”BNA Message Emulation with ProFlex” on page 61
• New section ”CPM Message Emulation with ProFlex” on page 61

Since March 2011 until May 2011:


• Minor corrections

Since October 2010 until March 2011:


• 4 digit screens support documented.
New section ”4 Digit Screen Numbers” on page 172

Since May 2010 until October 2010:


• J/Install name introduced
• ProFlex/NDC-DDC AddOn support

Since December 2009 until May 2010:


• ProCash28x support documented

Since June 2009 until December 2009:

November 2012 13
What’s new

• New section ”Cassettes counters/status printing after exit SV mode” on


page 51
• Extended section ”PCI PA DSS support and documentation” on
page 226
• New HW components and CINEO (RM3) support
• New section ”Printing with XFS Forms” on page 420
• New section ”Two Colors print” on page 424

Since June 2008 until June 2009:


• New section ”ProFlex/NDC-DDC AddOn” on page 60
• Alpha numeric states support documented
• General version updates
• Minor corrections

Since May 2007 until June 2008:


• New section ”Landscape printing on the receipt printer” on page 424

Since July 2006 until May 2007:


• New section ”Payment Card Industry (PCI) compliance” on page 226
• New section ”ProCash Analyzer (PCA) ProView adaptation” on page 60
• New section ”Barcode Print” on page 420
• Description of GDI printing moved to ProTopas Module Construction Kit -
Programming Guide section “GDI Printer Overlay Framework”

Since September 2005 until July 2006:


• New section ”Barcode Read State (‘s’)” on page 167
• New section ”Coin Dispenser (sol./unsol.) (DID ‘Y’)” on page 381

Since November 2003 until October 2004:

14 November 2012
What’s new

• New section ”Electronic Journal Upload (EJU) commands” on page 318


• New section ”Electronic Journal Upload (EJU) Message” on page 403
• New section ”Remote Key Loading (RKL) capability” on page 226
• New section ”EMV capability” on page 225
• New section ”Displaying MacroMedia Flash executables” on page 179
• New section ”Smart FIT Check State (‘k’)” on page 163
• Changed section ”Hardware Fitness State (‘h’)” on page 157
• Changed section “Amount Check State (G)” on page 94
• New section “Dispenser Currency Mapping Table Load” on page 289

Since May 2002 until November 2003:


• New section ”Miscellaneous Operations” on page 59
• Changed section ”Related publications” on page 437
• New section ”Triple DES operation” on page 225
• Extended section ”Solicited Status messages” on page 240
• Extended section ”Send Configuration Information” on page 327
• Changed section ”Software Products of ProConsult/NDC” on page 25
• Changed section ”Software Products of ProCash/NDC” on page 24
• New section ”Printing with Windows GDI” on page 419
• Changed section ”Dynamic Link Libraries (DLL)” on page 27
• Changed section ”Directory Structure” on page 38

Since October 2001 until May 2002:


• New section “Enhanced Amount Entry State (R)” on page 122
• New section “Audio Control State (i)” on page 153
• New section “Voice Control” on page 180
• New section “Dispense Below Zero” on page 56
• Enhanced section “Unsolicited Device Status” on page 369

November 2012 15
What’s new

• Enhanced section “Printer Models” on page 415


• Changed section ”Related publications” on page 437
• Enhanced section ”Directory Structure” on page 38
• Enhanced section “Solicited Status (terminal state)” on page 326

16 November 2012
Introduction Preface

Introduction

Preface
In the past NCR and Diebold/Interbold have dominated the international market
of automated teller machines (ATM). Both vendors have defined very similar
protocols for the network integration of their systems.
The existing MS-DOS based NDC-Emulation from Wincor Nixdorf is running in
NCR network environments all around the world. New technologies and of
course windows oriented platforms provided from Microsoft has forced Wincor
Nixdorf to develope the NDC-Emulation running with Windows. The product
ProCash/NDC and since October 2002 ProConsult/NDC from Wincor Nixdorf
has been developed with all known advantages provided by Windows like
Multithreading Processes, using WOSA services, open system environment
through the ProTopas architecture from Wincor Nixdorf. The ability to integrate
ProCash/NDC in multi vendor projects (ProCash/NDC running on NCR, Olivetti,
or Diebold hardware) is another big advantage of this software architecture.

Wincor Nixdorf Solution


ProCash/NDC and ProConsult/NDC have been developed using the C++ object
oriented ProTopas architecture. ProTopas is a flexible development platform for
self-service device applications in open system environments. Development
with ProTopas means using existing Frameworks, modifying and creating new
Frameworks for the specific self-service application. The application design
allows customers to create easily new Frameworks of customer specific
functions using ProTopas/KIT. Wincor Nixdorf provides ProCash/NDC and
ProConsult/NDC with function messages of NCR terminals which are described
in later sections. Any function restrictions against NCR can be recognized if it is
not documented in this manual.

November 2012 17
Product AddOn ProFlex/NDC-DDC Introduction

Product AddOn ProFlex/NDC-DDC


ProFlex/NDC-DDC is a HTML based product solution for customers who wants
to use and create their own transaction flow with extended functions
independent from a host states table. See details in section ”ProFlex/NDC-DDC
AddOn” on page 60

Purpose of the Document


This document will provide the software analyst with the necessary information
on the functions which are supported by product ProCash/NDC and
ProConsult/NDC. Furthermore all the information needed for the operation of
the ATM, as far as it is NDC specific and not covered by other documentation
(e.g. CSC-W32, Protopas or ProDevice documents). A detailed description of
all the application specific parameters will be found in the ProCash/NDC
ProConsult/NDC Installation manual along with information for installation and
upgrading the products.
NDC specific features like States, Screens, FIT, commands and messages will
be described here in detail. Since the list of supported features keeps growing
please always use the latest release of this documentation. We will make
updated versions available as soon as practical, either by file download or as
an online-documentation. Any feature exceeding the described ones may not
be supported. In this case please refer to the protocol descriptions of the
network (in case of project specific extensions) or to recent releases of the
Programmers Reference Manuals of NCR.

18 November 2012
Introduction Function Overview

Function Overview
ProCash/NDC and ProConsult/NDC written for Wincor Nixdorf terminals
contain base functions from the original NCR Direct Connect (NDC) software
provided by NCR.
The functionality depends on the host Software (BASE24, ON/2, TP/2, etc.).
The download of original NCR Customization Tables such as States, FIT’s,
Screens and Parameters controls the terminal, thus defining the available
functions. Those are typically (but not exclusively):
• Withdrawal(ProCash/NDC only)
• Fast cash(ProCash/NDC only)
• Envelope deposit(ProCash/NDC only)
• Balance inquiry
• Transfer
• Payment
• PIN change
• Rear Balancing
• Multi language
• Statement print
• MACing
• Triple DES security
• PCI Data Security Standard
• EMV support
• Remote Key Loading (RKL)
• Cash and Cheque deposit
• E-Journal Upload (EJU)
• Coin dispense and deposit
• Barcode read and print

November 2012 19
Supported hardware Introduction

Supported hardware
Currently following systems and hardware components are supported:
ATM’s:
• CSC4xx Rear/Frontload
• CSC400 Frontload
• ProCash-Compact
• ProCash 2000, 21XX, 21XXxxe, PC8000 series
• ProCash 3000, CoinIn
• CSC21xx, CSC1500
• Cash Recycling System (CRS), 3100xe, 3100xxe
• EBH/RM2 PC4000
• SlimCash 200
• RM3 CINEO series
• ProCash28x
Info Terminals:
• ProPrint 200
• ProPrint 2000
• ProConsult, Certo, CINEO T3000
Dispenser modules:
• CDM-V1, CDM-NG, CMD-V4, CDM-NG (6 cassettes), Novotech (coin),
CMD-V5
Needle printers:
• Journal: ND98D, ND98, ND71, NP06
• Receipt: ND9E, ND71, ND9A, NP07
• Statement: ND97, ND94, ND97
Thermal printers:
• Receipt: ND9C, ND99, ND9G, TH21, TH22, TP07, TP12, TP13,
TP25

20 November 2012
Introduction Supported hardware

• Journal:TH30, TP06
• Statement: TH97/G, TP01, TP20, TH23
Card readers:
• ID14 (Sankyo Seiki), ID15 (Wincor Nixdorf), ID18 (OMRON), V2X,
ID24 (DIP reader), ICM300 (manual smart card reader)
continued on next page ...

November 2012 21
Multi Vendor capability Introduction

Encryption modules:
• EDM module (restricted security), EPP’s V4, V4+, V5 (international)
• JustTide EPP
Envelope deposit modules:
• Papalakko, Wincor Nixdorf (Envelopes)
• Cheque/Cash Deposit Module (CCDM V1)
Miscellaneous:
• Operator Panel (Low- or high end), GOPL (OP05) support
• Touch screen support
• Power Supply box
• Sound card
• USB support
• Barcode Reader support
• Single Cheque Scanners: SEAC, RS89x
• ASKIM II
• CINEO skimming cameras

Multi Vendor capability


Since release 1.3/00 ProCash/NDC supports hardware platforms from other
vendors as well.
Follwing hardware platforms of other vendors are supported, which can be
installed via standard installation procedure via J/Install:
• NCR cash systems
• Diebold cash systems
• Nautilus/Hyosung systems
Following vendors are running with ProCash/NDC, but they have to be installed
with a special prepared installation set:
• Fujitsu cash systems

22 November 2012
Introduction Multi Vendor capability

• Olivetti cash systems


• Delarue cash systems

November 2012 23
Software Products of ProCash/NDC Introduction

Software Products of ProCash/NDC


In the following table is listed the basic software products that are required to
setup a whole ProCash/NDC application:

Table 1: Basic Software of ProCash/NDC

Name current Systems


Release
Operating system
Windows 7 or Windows XP Professional see Note2
ProBase/C 1.1/30 + all Wincor
Updates
ProCash/Topas 5.0/00 all
PARAC-NT 3.2/30 all
ProView Agent 1.0/31 all
ProCash/NDC 3.0/00 all
ProTopas/SOP-NDC

Communication software
SNA-Workstation 4.0 optional
Eicon software components 3.0 optional

For detailed information about function and configuration of each product refer
to ProCash/NDC ProConsult/NDC Installation manual
NOTE 1: ProCash/NDC is running on PC based systems.
For Windows 7 you need 2GB and for Windows XP 1GB RAM and
hard disk partition space of 20GB is required as minimum.
NOTE 2: Windows 7 and Windows XP is released on Embedded PC’s only.

24 November 2012
Introduction Software Products of ProConsult/NDC

Software Products of ProConsult/NDC


In the following table is listed the basic software products that are required to
setup a whole ProConsult/NDC application:

Table 2: Basic Software of ProConsult/NDC

Name current Systems


Release
Operating systems
Windows 7 or Windows XP Professional see Note2
ProBase/C 1.1/30 + all Wincor
Updates
ProCash/Topas 5.0/00 all
PARAC-NT 3.2/30 all
ProView Agent 1.0/31 all
ProConsult/NDC 3.0/00 all
ProTopas/SOP-NDC

Communication software
SNA-Workstation 4.0 optional
Eicon software components 3.0 optional

For detailed information about function and configuration of each product refer
to ProCash/NDC ProConsult/NDC Installation manual
NOTE 1: ProConsult/NDC is running on PC based systems.
For Windows 7 you need 2GB and for Windows XP 1GB RAM and
hard disk partition space of 20GB is required as minimum.
NOTE 2: Windows 7 and Windows XP is released on Embedded PC’s only.

November 2012 25
Software Products of ProConsult/NDC Introduction

26 November 2012
Software Structure

Dynamic Link Libraries (DLL)


The following described Dynamic Link libraries are the part of ProCash/NDC or
ProConsult/NDC, which have to be installed via J/Install on the harddisk of the
ATM. These modules control the functions of the application.
The following software modules build the application part NDC on the ATM:
• Transaction Framework (dcsttfw.dll)
The Transaction Framework maps the downloaded NDC states to the
belonging step function defined in the LYNXPAR section of the registry.
• Cash Dispenser Framework (dccdmfw.dll) (not ProConsult/NDC)
The Cash Dispenser Framework controls the dispensing requests from the
consumer. It maps the physical cassettes to logical positions which have to
match with the positions configured at the host side. It handles the cassette
counters and syncronizes them with WOSA.
• Device Status Framework (dcdevsta.dll)
The Device Status Framework collects the status of the devices from the
different device frameworks. It also offers the supplies of the devices. The
actual status will be passed to the Message Control Framework whenever it
asks for the device status.
• Message Control Framework (dcmsgcfw.dll)
The Message Control Framework handles the NDC messages sent from the
host to the terminal and builds up the messages which have to be sent from
the terminal to the host. It asks the Device Status Framework for the current
status of the device to fill the severity and supply status fields of solicited and
unsolicited messages to be sent to the host.
• SOP User Exit Framework for ProSop (dcsuefw.dll)
The ProSop User Exit Framework contains NCR service functions like
“Display supply status, “Clear card capture counter”, “Rear balancing”, etc..

November 2012 27
Dynamic Link Libraries (DLL) Software Structure

• NDC Printer Framework (ndcprtfw.dll)


The NDC Printer Framework analyzes the printer data from the host and
converts it to printable printer buffers. First it reads the base settings from
the registry and set it as default (sets lpi and cpi size, activates the printer
font, reads the char convertion table, etc.) after that it fills the printer data
with the specific macros depending on which NDC escape sequences are in
the printer data from the host. The formatted print buffer will be passed to the
base printer framework of ProTopas.
• NDC Dialog Framework (ndcdiafw.dll)
The NDC Dialog Framework handles the consumer FDK, PIN inputs and
controls the screen flow.
• Dialog Utility Library (dcdiauti.dll)
The Dialog Utility Library contains Windows functions that has been
separated from the NDC Dialog Framework (exp. Mouse Hook).
• Application Framework (dcapplfw.dll)
The Application Framework has the control above the other Frameworks. It
starts the Protocol Framework, Communication Framework, Step Table
Framework and handles the synchronisation with the different Frameworks.
• Converter Framework (dcconvfw.dll)
The Converter Framework handles the Customisation Image (CI)
downloaded from the host. It stores the host configuration (States, Screens,
Timers, FIT table , Configuration parameters and Configuration ID) in the
LYNXCI path of the Registry.
• Protocol Framework (dcprotfw.dll)
The Protocol Framework send to or receives messages from the Communi-
cation Framework.
• Security Overlay Framework (dcsecure.dll)
The Security Framework performes local PIN verification with the corre-
sponded FIT data. Performs calls to security functions of Protopas basic
framework.
• SOP Service Framework (dcServic.dll)
The SOP service framework contains Dialog and synchronisation functions
of ProTopas/SOP-NDC.

28 November 2012
Software Structure Dynamic Link Libraries (DLL)

• SOP Dialog Framework (dcSopDia.dll)


The SOP dialog framework controls the dialog screens on the facia screen
or on the operator panel of ProTopas/SOP-NDC.
• GDI Printer Overlay Framework (dcPrtGdi.dll)
The GDI Printer Overlay Framework converts PrintRaw data to GDI print
data, which are passed to a Windows printer (e.g. ND9G). This Overlay
framework has to be configured in between the ProTopas printer framework
and the NDC Printer Framework in the Repository Manager.
Refer to ProTopas Module Construction Kit - Programming Guide
section “GDI Printer Overlay Framework” for detailed descriptions about GDI
printing with ProCash/NDC and ProConsult/NDC.
Note:
Either dcPrtGdi.dll or FormsPrt.dll can be configured, never both in one
printer framwork!
• Forms Raw Print Wrapper Overlay Framework (FormsPrt.dll)
The Forms Raw Print Wrapper Overlay Framework parses and converts
Raw print data and creates XFS forms dynamically at runtime. The form data
are passed to the XFS PRT service via PrintForm command where the
ProTopas printer framework CCPRT30.DLL is in use. This Overlay
framework has to be configured in between the ProTopas printer framework
and the NDC Printer Framework in the Repository Manager.
Refer to ProTopas Module Construction Kit - Programming Guide
section “Forms Raw Print Wrapper Overlay Framework” for detailed descrip-
tions about Forms printing with ProCash/NDC and ProConsult/NDC.
Note:
Either FormsPrt.dll or dcPrtGdi.dll can be configured, never both in one
printer framework!
• EMV Transaction Overlay Framework (dcEmvTa.dll)
The EMV Transaction Overlay Framework is needed to handle transactions
with EMV data. Please refer to Wincor Nixdorf / Diebold D91x Message Format
Extension for EMV for detailed descriptions.
• EMV Message Control Overlay Framework (dcEmvMc.dll)
The EMV Message Control Overlay Framework is needed to append
messages with EMV data. Please refer to Wincor Nixdorf / Diebold D91x
Message Format Extension for EMV for detailed descriptions.

November 2012 29
Dynamic Link Libraries (DLL) Software Structure

• EMV Converter Overlay Framework (dcEmvCv.dll)


The EMV Converter Overlay Framework is needed to handle EMV download
data. Please refer to Wincor Nixdorf / Diebold D91x Message Format Extension
for EMV for detailed descriptions.
• WEB Transaction Overlay (websttFw.dll)
The WEB Transaction Framework contains additional Propery functions to
receive printer statuses via variables within a HTML page. Furthermore it
contains overlaid transaction steps and functions for the operation of
ProFlex/NDC-DDC (PTFLEX).
• CardLess Transaction Overlay(cltsttFw.dll)
The Cardless Transaction Overlay alternatively enables consumer transac-
tions without an ID card. The transaction will be initiated when a consumer
presses a button in the Function Selection (FDK) Dialog instead of inserting
a card. If a card will be inserted instead of pressing a FDK button, the trans-
action will be started in the standard way.
• ProCash Analizer Adapter(dcPca.dll)
The ProCash Analizer Adapter transports Counters, Device and Supply
Status information of devices from the client (Dispenser, Deposit Modules,
Printers, Card Reader), to the ProCash Analizer terminal application which
is part of the ProView Server.
• Host Protocol Log Filter(dcHpLogF.dll)
The Host Protocol Filter prevents logging of consumer related data like PIN
block and Track data. This is part of the PCI Data and Security Standard
defined by VISA and MasterCard. The security relevant data are replaced
through stars (*) for each character.

30 November 2012
Software Structure Parameter / Data Files

Parameter / Data Files

Types of Parameters

Every terminal needs many different parameters to operate as expected. The


most complex set of parameters is called "Customization" and contains the
dialogs and the sequence of functional steps (e.g. card read - PIN Entry -
Function selection ...) which the system will perform. NCR supports the central
customization by files which will be distributed to all connected ATM’s. Our
ProCash/NDC and ProConsult/NDC emulation fully supports this Customi-
zation Download. The parameters will be stored into the Windows registry.
Changes to those parameters may be overwritten any time by a new download.
Thus permanent changes must be made to the customization files on the Host,
not on the ATM.
Furthermore each ATM will have a number of extended parameters which are
specific to its type or to the particular machine. The Wincor Nixdorf solution,
being an emulation, needs several parameters to cover the differences to the
original systems and for enhanced services. Existing parameters can be edited
in text files (*.ppf or *.ina type). The Registry update with the changed values
will be done via PARAC-NT after the next “RUN” process and with
CCRCCONV.EXE. Details will be given in the ProCash/NDC ProConsult/NDC
Installation manual.

November 2012 31
Parameter / Data Files Software Structure

Compatible Customization Data

All customization data are stored in the Windows registry location:


HKEY_LOCAL_MACHINE\
SOFTWARE\
Wincor Nixdorf\
ProTopas\
CurrentVersion\
LYNXCI

• Screen Data (LYNXCI\SCREEN\XXX[1])


[1] ’XXX’ represents the downloaded screen number

are the predefined display screens provided by the host.


• State Table (LYNXCI\STATE)
is used to define and control the logic flow of the for client transactions.
• Financial Institution Table (LYNXCI\FIT)
consists of an entry for every institution or group of institutions offering
services on the ATM. Client card data are compared to data in this file to
determine whether the card holder can receive services.
• Customization Parameters (LYNXCI\PARAMETER)
contain some terminal specific settings and specific definitions of the
message protocol.
• Timers (LYNXCI\TIMER)
contain downloaded timer values valid for all ATM’s in the network.
• Receipt Templates (LYNXCI\SCREEN\R00; LYNXCI\SCREEN\R01)
As part of the screens download the host can send receipt header data
(R00) and predefined receipt data (R01) (data that are mixed together with
the host printer data of the transaction reply). Those screens are stored in
sub section “..\LYNXCI\R00” and “..\LYNXCI\R01”.
• EMV Parameters (LYNXCI\EMV)
This section contain specific EMV parameters.

32 November 2012
Software Structure Parameter / Data Files

Extended Configuration Data

All non downloaded configuration data are stored in the following location of the
Windows registry:
HKEY_LOCAL_MACHINE\
SOFTWARE\
Wincor Nixdorf\
ProTopas\
CurrentVersion\
LYNXPAR

• Application Parameters (LYNXPAR\APPLICATION)


This section contain parameters which are not assigned to a specific
hardware device. These are global settings of NDC and can be parameters
for the protocol or timers etc..
• Cash Dispenser Parameters (LYNXPAR\CASH_DISPENSER)
This section contain parameters related to the cash dispenser like cassettes
type configuration, dispense algorithm, dispenser status. (This section is
missing in the non cash product ProConsult/NDC.)
• Coin Dispenser Parameters (LYNXPAR\COIN_DISPENSER)
This section contain parameters related to the coin dispenser like hopper
configuration and dispense options.
• Card Reader Parameters (LYNXPAR\CARD_READER)
This section contain parameters related to the card reader like track config-
uration and transport handling of the ID card.
• Deposit Parameters (LYNXPAR\DEPOSIT)
This section contain parameters related to the deposit module.
• Printer Parameters (LYNXPAR\PRINTER)
This section contain parameters related to the journal, receipt and document
printers.
• GDI Printer Parameters (LYNXPAR\GDI_RINTER)
This section contain parameters for printers using GDI.

November 2012 33
Parameter / Data Files Software Structure

• Barcode Parameters (LYNXPAR\BARCODE)


This section contain parameters related to the barcode reader.
• Operator Screen Parameters (LYNXPAR\OPERATOR_SCREENS)
This section contain the operator screen template parameters that are used
to display or print the supply counters within the user exit menu “Individual
Functions” of ProSop.
• Function ID mapping (LYNXPAR\FUNC_ID_MAP)
This section contain the assignment to the ProCash/NDC or
ProConsult/NDC step functions and function ID’s that are send in trans-
action replies.
• State mapping (LYNXPAR\STATE_MAP)
This section contain the assignment to the ProCash/NDC or
ProConsult/NDC step functions and state ID’s that are send in the states
table download from host.
• ProFlex/NDC-DDC (LYNXPAR\PTFLEX)
This section contain sub sections and parameters for the add on product
ProFlex/NDC-DDC. Refer to manual ProFlex/NDC-DDC.

Global Screen Configuration

The global non downloaded screen configuration contains default display


settings and path for graphic files (*.PCX), Bitmaps (*.BMP) and Videos (*.AVI;
*.MPG) etc.. Furthermore for each screen can be configured special display
settings or idle rotations which are independend from the host download.

Those parameters are stored in the following location of the Windows registry:
HKEY_LOCAL_MACHINE\
SOFTWARE\
Wincor Nixdorf\
ProTopas\
CurrentVersion\
LYNXCI\SCREEN
LYNXCI\SCREEN\XXX

Details will be given in the ProCash/NDC ProConsult/NDC Installation manual.

34 November 2012
Software Structure Parameter / Data Files

Error Mapping Configuration

All device errors and mapping parameters are devided in error classes. The
“CLASS” section is devided in the CSC-W32 device classes inclusive the
ProCash/NDC classes. Each class contains sub sections of error codes which
contain the CSC-W32 error and the error mapping definitions for the message
protocol.

They are stored in the following location of the Windows registry:


HKEY_LOCAL_MACHINE\
SOFTWARE\
Wincor Nixdorf\
ProTopas\
CurrentVersion\
CCERRMAP\CLASS

Details will be given in the ProCash/NDC ProConsult/NDC Installation manual

November 2012 35
Font Files Software Structure

Font Files
ProCash/NDC uses the Windows font format (*.FON) for displaying text and
graphic characters for downloaded NDC screens. The fonts can be created and
modified via utility “FONTEDIT.EXE”. During the installation the default base set
of ProCash/NDC or ProConsult/NDC fonts will be installed and activated
automatically like standard Windows fonts.

The following section contains a short list of NDC Standard Fonts that are
installed during the installation of ProCash/NDC or ProConsult/NDC:

Standard Fonts
table 3: Standard fonts table

Font name File name Designation 640x480 800x600 1024x768


(W * H) [1] (W * H) [1] (W * H) [1]
1 NDC-SA1.FON Single Size Alpha 1 20x30 25x37 32x48
2 NDC-SA2.FON Single Size Alpha 2 20x30 25x37 32x48
> NDC-DA1.FON Double Size Alpha 1 40x30 50x37 64x48
? NDC-DA2.FON Double Size Alpha 2 40x30 50x37 64x48
3 NDC-GA1.FON Standard Graphic 1 20x30 25x37 32x48
4 NDC-GA2.FON Standard Graphic 2 20x30 25x37 32x48
5 NDC-GA3.FON Standard Graphic 3 20x30 25x37 32x48
9 NDC-SARA.FON Single Size Arabic 20x21 25x26 32x33
B NDC-DARA.FON Double Size Arabic 40x42 50x52 64x64

[1] - Depending on the display resolution you have to select the belonging font
with the correct width and height (W * H). During the installation the
standard fonts are automatically installed with the display resolution
currently set in the control panel of Windows.

36 November 2012
System Setup

Software Installation
The application software will be installed via the J/Install Product CD
(NDC/DDC V3.0/00), Customizing and Update diskettes. On Wincor Nixdorf
hardware systems precondition is the installation of product ProBase/C, which
is delivered on a separate CD. The installation process will be started via batch
routine ’AUTORUN.BAT’ located in the root of the J/Install CD. During the instal-
lation you will be guided via menu dialogs through the installation processes.
You can set also specific parameters via a parameter configuration dialog.
All details about product installation will be provided in the ProCash/NDC
ProConsult/NDC Installation manual.

November 2012 37
Directory Structure System Setup

Directory Structure
ProCash/NDC or ProConsult/NDC is only one part of a bundle of software
packages running on an Windows based ATM. A lot of directories and a large
number of Dynamic Link Libraries (DLL’s) makes it difficult to assign configu-
ration files and DLL’s to the right software sub product.
ProTopas based DLL’s and ProCash/NDC or ProConsult/NDC specific DLL’s
are stored together in directory C:\PROTOPAS\BIN. The following table gives
short overview about the modules and their directories:
table 4: Software structure

File Structure Description


ProBase\CSCW32 modules of CSC-W32 operating system
ProBase\ProDevice modules of ProDevice (WOSA)
\PROTOPAS
fwstrt.bat Starts ProCash/NDC or ProConsult/NDC
fwkill.bat Stops ProCash/NDC or ProConsult/NDC
ccprot.log Log file of Host and ATM messages
\PROTOPAS\BIN
dcApplFW.dll Application Framework
dcSttFW.dll Transaction Framework
dcMsgcFW.dll Message Control Framework
dcConvFW.dll Converter Framework
dcCdmFW.dll Cash Dispenser Framework
dcSueFW.dll Sop User Exit Framework
dcSecure.dll Security Overlay Framework
3DesEppF.dll Triple DES EPP Overlay Framework
dcDevSta.dll Device Status Framework
dcServic.dll ProTopas/SOP-NDC Service Framework
dcSopDia.dll ProTopas based SOP Dialog Framework
(obsolete)
ndcDiaFW.dll NDC Dialog Framework
ndcPrtFW.dll NDC Printer Framework
dcPrtGdi.dll GDI Printer Overlay Framework
dcEmvTa.dll EMV Transaction Overlay Framework

38 November 2012
System Setup Directory Structure

File Structure Description


dcEmvCv.dll EMV Converter Overlay Framework
dcEmvMc.dll EMV Message Control Overlay Framework
dcTcp2h.dll TcpIP converter for 2 bytes binary headers
(header length excluded)
dcTcp2hi.dll TcpIP converter for 2 bytes binary headers
(header length included)
dcTcp4a.dll TcpIP converter for 4 bytes ASCII headers
(header length excluded)
dcTcp4ai.dll TcpIP converter for 4 bytes ASCII headers
(header length included)
dcTcp3a.dll TcpIP converter for 3 bytes ASCII headers
(header length excluded)
dcTcpSTX.dll TcpIP converter for STX and ETX message
length calculation
dcSimCom.dll Host Simulator Framework
dcDiaUti.dll Dialog Utility Library
webSttFw.dll Web Extensions Transaction Overlay
ProFlex/NDC-DDC functions
cltSttFw.dll Cardless Transaction Overlay
dcPca.dll ProCash Analizer Adapter
dchplogf.dll Host Protocol Filter
ccrcconv.exe Updates the Windows registry with contents
of *.RCK files
dcctrl.exe Utility for external application control
dcctrl.txt Description text file how to use dcctrl.exe
\PROTOPAS\CONF
Kconf.exe Converts *.INA files to *.RCK format
Kconf.txt Describes functionality of Kconf.exe
conv.bat Update job for *.INA files to update existing
and store new parameters in the Registry
conv-all.ok (conv-all.bat) Batch file which is called once immediately
after installation to store additional param-
eters in the registry (will be renamed from
*.BAT to *.OK after the call).

November 2012 39
Directory Structure System Setup

File Structure Description


prtmakro.bat Batch job to store additional parameters for
the journal and receipt printer to enable ’INIT’
sequences via makros.
prtmakro.ina Parameter source file of printer parameters
used by Kconf.exe
prosop.bat Batch job to set SOP User Exit and Trace
menu items for ProSop (Single DES).
prosop.ina Parameter source file of SOP User Exit and
Trace (Single DES) used by Kconf.exe
sop3des.bat Batch job to set SOP User Exit and Trace
menu items for ProSop (Triple DES).
sop3des.ina Parameter source file of SOP User Exit and
Trace (Triple DES) used by Kconf.exe
gdi_prt.bat Batch job to set GDI printer parameters.
gdi_prt.ina Parameter source file of GDI printer param-
eters used by Kconf.exe
logon.bat Batch job to set parameters in the Registry to
activate automatic logon.
logon.ina Parameter source file for automatic logon
parameters
autostrt.bat Batch job to set one parameter which
activates an automatic call of
’C:\STARTUP.BAT’ after restart.
autostrt.ina Parameter source file for the automatic
’startup.bat’ call.
ccerrmap.ina Parameter source file of all application and
CSC-W32 error codes and mapping defini-
tions which is used during ’conv-all.bat’
process is running.
lynxsop.ina Parameter source file of Rear Balancing step
table parameters which is used during
’conv-all.bat’ process is running.
ccvtable.fil (asc, ebc) Line convertion tables: EBCDIC - ASCII and
ASCII - ASCII (default is ASCII - ASCII)
cfgmanag.lnk Link of the Configuration Manager for the
start bar of Windows.

40 November 2012
System Setup Directory Structure

File Structure Description


\PROTOPAS\WORK
cccmos.bin CMOS file - stores transaction oriented
counters and device statuses (e.g. Last
Transaction Status information)
\PROTOPAS\BITMAPS
\PROTOPAS\BITMAPS\640x480 Resolution depended sub directories where
\PROTOPAS\BITMAPS\800x600
\PROTOPAS\BITMAPS\1024x768 the default graphics are stored during the
installation.
*.PCX, *.BMP, *.ICN, *.JPG Graphic and Bitmap files which are controlled
via screen escape sequences or as a local
definition for Background pictures or to
replace downloaded NDC text screens.
dctmpoos.bmp Bitmap which is displayed during the system
shutdown initiated by the restart handler in a
fatal error condition.
dcoos.bmp Bitmap which is permanently displayed if the
maximum system reboots has been initiated
by the restart handler.
*.AVI, *.MPG, *.MPEG Video animation file which can be configured
instead of a ’normal’ graphic in the registry
section “..\LYNXCI\SCREEN”.
\PROTOPAS\FONTS
\PROTOPAS\FONTS\640x480 Resolution depended sub directories where
\PROTOPAS\FONTS\800x600
\PROTOPAS\FONTS\1024x768 the default fonts are stored during the instal-
lation.
\PROTOPAS\FONTS\ Contains Windows fonts that are used if GDI
GDI_PRT printing is enabled (e.g. ND9G, TP07, TP13).
\PROTOPAS\TOOLS
HostSim.exe Dialog oriented host simulator simulates host
to terminal messages.
MfcDlg.exe Dialog window where you can enter specific
screens to display during runtime.
MfcVar.exe Displays variables (e.g. Opcodes) during the
transaction flow.
protlog.exe Message analyzer of log file ’CCPROT.LOG’
reboot.exe Initiates a system shutdown or relogon

November 2012 41
Directory Structure System Setup

File Structure Description


write-id.exe Utility to write track 1,2 or/and 3 data on ID
cards via ID Card Unit.
write-id.cmd Batch file which can be modified for calling
write-id.exe to write tracks on ID cards.
fontedit.exe Modifies and view Windows font contents
asc2fon.exe Converts ASCII font files to Windows fonts
fon2asc.exe Extracts Windows fonts to ASCII text files
prt-dof.exe Sends control sequences (in *.DOF format)
to the receipt or journal printer.
asc2dof.exe Converts ASCII printer fonts to *.DOF format.
dof2asc.exe Extracts DOF files to ASCII printer font files
asc-nd99.exe Converts ASCII printer font files to *.SWF
format for ND99 printer.
nd99-asc.exe Extracts binary *.SWF font files of ND99 to
ASCII matrix font files.
ldnd99.exe Font and Logo loader for ND99
nd99logo.exe Extracts ND99 logo files to ASCII matrix file
asc2logo.exe Converts ASCII logo files to binary logo files
for ND99.
nd9e-dof.exe Converts an ASCII logo file to DOF format for
ND9E printer.
pcx2asc.exe Extracts 2 or 16 color PCX graphics to ASCII
matrix text file.
cfgmanag.exe Configuration Manager. Easy access to
analyzing tools and configuration data via
pull down menus.
cfgmanag.mnu Menu definition file for the Configuration
Manager that allows menu configuration.
(Will not be installed, but can be ordered from
WCN support).
cfgmanag.hlp Help text file for the Configuration Manager.
ina2def.exe Converts INA files to PARAC definition RC
source files.
compregf.exe Compares an extracted registry text file with
the contents of the Windows registry.

42 November 2012
System Setup Directory Structure

File Structure Description


cpyntfnt.exe Installes and registers Windows font files.
asc2pcc.exe Converts ASCII files to PCC/PCX files.
icn2asc.exe Extracts ICN icon files to ASCII matrix files.
asc2icn.exe Converts ASCII files to ICN files.
sethwppf.exe Sets hardware depended menu for Status
Overview in ProSop and deconfigures paper
journal of no journal printer is installed.
(used during installation).
prt-raw.exe Test utility that can print a text file with ASCII
printer data and macros via printer interface
of CSC-W32.
printraw.exe Test utility that prints raw data via ProTopas
API function PrintRaw() from file
C:\PROTOPAS\RAWDATA.TXT, or prints the
contents of registry parameter MSGxxx via
function Print(xxx).
dcsopmgr.exe ProTopas/SOP-NDC User Manager.
initepp.exe Deletes keys from EPP and gives detailed
information about the EPP hardware.
dof-rj03.exe Converts ASCII printer fonts to *.DOF format
for NP06/TP06 and NP07/TP07.
rj03-dof.exe Converts hex *.DOF files of NP06/TP06 and
NP07/TP07 font definitions to ASCII files.
confchck.exe Configuration Utility. It is called during instal-
lation and by the Config. Manager
addonchk.exe Installation Utility that is called during instal-
lation only.
cfgmedit.exe Editor with restricted file access that can be
used via the Configuration Manager.
exterrmp.exe Splits CCERRMAP.INA in multiple files
where each class is a single file.
mfcfont.exe Utility to create own Windows fonts for
screen display and GDI print
pcatest.exe Test utility for local verification of ProCash
Analizer information

November 2012 43
Directory Structure System Setup

44 November 2012
Modes of Operation
At any time, Wincor Nixdorf terminals operates in one of the following six
modes:
• power-up mode
• out-of-service mode
• in-service mode
• offline mode
• Service and Operating (supervisor mode)
• suspend mode
The terminal changes from one mode to another when it encounters a specific
event, like the SOP switch is pressed or the terminal discovers that it is no
longer communicating with the network.
Figure 1 shows how the terminal normally exits one mode and enters another.
If the terminal loses power or is reset, the terminal abnormally exits from the
mode it was in, when the reset or power failure occurred.
figure 1: Terminal operation

POWER-UP
POWER-UP

SUPERVISOR
SUPERVISOR
OFFLINE
OFFLINE MODE
MODE

SUSPEND
SUSPEND
MODE
MODE

OUT
OUT OF
OF IN
IN SERVICE
SERVICE
SERVICE
SERVICE

The following paragraphs describe how the terminal enters and exits each of the
modes and, if applicable, how the terminal functions when it is in that mode.

November 2012 45
Power-up mode Modes of Operation

Power-up mode
The terminal enters power-up mode when the terminal is switched on.
During power-up mode, the restart handler starts the WOSA services, the
Protopas environment and at least the ProCash/NDC, ProConsult/NDC frame-
works. After all terminal devices are opened the communication framework is
waiting for line activity.

Exiting power-up mode

The terminal exits to offline or out-of-service mode when it leaves power-up


mode. If line connection is established, the communication framework sends
the power up message as configured to the host.

Out-of-service mode
The terminal may enter out-of-service mode from any one of the following
modes:
• power-up mode
• offline mode
• in-service mode (if the terminal receives an out-of-service command from
the network)
• supervisor mode
The terminal accepts and stores configuration data while it is in out-of-service
mode. During this time, the terminal can also receive and execute print
immediates, startup and shutdown commands from the network. Depending on
what mode the terminal was in before going out-of-service, the terminal may
perform other functions.

46 November 2012
Modes of Operation In-service mode

In-service mode
The terminal enters in-service mode from any of the following modes:
• out-of-service mode (if the terminal receives a startup command from the
network)
• supervisor mode (if the return to previous mode feature is enabled )
• offline mode (if communication with the network is restored)
While in-service, the terminal uses the configuration data to make transaction
sequence decisions.
The terminal exits in-service mode under the following conditions:
• The terminal receives a shutdown command from the network; the terminal
exits to out-of-service mode after finishing any customer transactions in
progress.
• The terminal looses communication with the network; the terminal exits to
offline mode.
• The terminal exits to supervisor mode when there is an SOP entry on the
operator panel, the SOP switch is pressed, or when the safe door is open.
• An abnormal exit occurs.

Except when an abnormal exit occurs, the in-service mode can only
be exited from State 000.

November 2012 47
Offline mode Modes of Operation

Offline mode
The terminal may enter offline mode from any of the following modes:
• in-service mode
• out-of-service mode
• power-up mode
• supervisor mode
Offline mode is entered from the in-service mode if communication is lost
between the network and the terminal. While in this mode, the terminal operates
as follows:
• The terminal displays the user-defined offline screen (screen C01) on the
screen.
• The terminal enters an idle loop until network communication is restored.
The terminal exits this mode under the following conditions:
• communication with the network is restored
• the terminal enters supervisor mode
• an abnormal exit occurs

Suspend mode
The suspend mode feature must be activated in the miscellaneous parameters
(see ProCash/NDC ProConsult/NDC Installation manual for details). Suspend
mode is entered from the in-service mode if a tampering suspected error has
occurred and the specific error of the device class in CCERRMAP is set to
Severity 3.
While in this mode, the terminal operates as follows:
• The terminal displays the suspend mode screen C05 or C02 (if screen C05
not exists) on the screen.
• Green status lights in front and on the Operator Panel will be switched off.
• The terminal doesn’t accept customer cards.

48 November 2012
Modes of Operation Service and Operating(SOP)

The terminal exits this mode under the following conditions:


• the terminal enters supervisor mode
• the host sends an in-service or out-of-service command
• the suspend mode timer has expired (return to previous mode)

Service and Operating(SOP)


For Wincor Nixdorf terminals the operator uses the Service and Operating to
replenish supplies, change passwords and change encryption keys. While in
the SOP mode, the manager or operator can enable or disable devices or
device options for service and maintenance. All service and operator functions
are described in the manual ProTopas/SOP-NDC Operator Manual.
If the manager enters the SOP, the terminal sends an unsolicited status
message to the network when it enters the operator mode. Refer to section
”Unsolicited Status messages” on page 245 for further information.
While in SOP mode, the terminal responds to network messages as follows:
• The terminal processes load command messages and replies with solicited
status messages indicating either a ready condition or a command reject
condition.
• The terminal responds to all other Transaction Reply command messages
with a solicited status message indicating a command reject condition.
• The terminal responds to an Terminal Command message requesting
configuration information with a solicited status message containing config-
uration information.
• The terminal accepts Terminal Command messages requesting start-up or
shutdown but does not process or reply to them until it exits the supervisor
mode.
• If the terminal receives any Terminal Command messages requesting start-
up or shutdown while in the SOP, then upon exiting the SOP, the terminal
processes the last such message received and sends the network a solicited
status message indicating a ready condition.

November 2012 49
Service and Operating(SOP) Modes of Operation

Service & Operating (operator panel or consumer display)


On rearload terminals the operator uses the operator functions via the Operator
Panel. On Frontload terminals the operator can enable the Service & Operating
on the consumer screen if he presses the SOP button.
Service and Operating provides the following features to enhance operations:
• menu selections that are available without device synchronization, such as
viewing counters while the terminal remains in service
• simplifies diagnostics by providing easy-to-understand entry screens and
reports test results in understandable phrases
• a sequencing capability allowing the terminal to perform each command in
the sequence without any operator input except an enter keystroke
• device self tests and operator messages to be included in sequences
• a simplified status list that compiles supply, device and fault status on one
easy-to-understand report; entries are date stamped and all codes are
declared in the manual System Messages of CSC-W32.
• allows the cash position data (balancing data) to be entered into the terminal
• help text (extensive, context-sensitive, online help)
• the Operator Panel has status lights that indicate the terminal status
• messages can be displayed on the Operator Panel as soon as the situation
occurs (in-service, out-of-service, door open, door closed)
Each institution can configure the service and operator functions menu
structure to fit the specific needs of the institution with a special tool called
SOPCONF. With SOPCONF you can create operator groups, limiting which
commands each group is authorized to use. With the SOP itself you can specify
special groups with own passwords.

Automatic return

The automatic return to previous mode feature configures a terminal to


automatically return to service after exiting SOP mode, if the terminal was
in-service before entering SOP mode. If the feature is disabled, the terminal
remains out-of-service after exiting SOP. This option can be downloaded with
the customization table load command (see ProCash/NDC ProConsult/NDC
Installation manual “Optional Parameters (NDC)”).

50 November 2012
Modes of Operation Service and Operating(SOP)

In-service

By default, the terminal accepts load command messages while in-service. It


also processes the Terminal Command message requesting configuration infor-
mation, even if a customer is on the terminal.

Cassettes counters/status printing after exit SV mode

The application prints the cash counters and state of the cassettes on journal
after leaving supervisor mode if the status or counter of a cassette has been
changed during SV mode. This is useful for the operator because he gets
immediately the final overview of counters and state for the cassettes when
supervisor mode is left.
The journal message text and destination is configurable via TOPMSG and
CUSTMSG parameters (MSGxxxx).
Depending on the hardware configuration the application prints the counters
and cassettes status of:

1. CASH OUT COUNTERS


Parameters: MSG1112, MSG1113 (physical order)
Parameters: MSG1114, MSG1115 (logical order)
2. CASH IN COUNTERS
Parameters: MSG1121, MSG1122
3. COIN OUT COUNTERS
Parameters: MSG1123, MSG1124
4. COIN IN COUNTERS
Parameters: MSG1125, MSG1126

The cassettes counters are printed in two parts. In the first part the old counters
before SOP session are printed. In the second part the new counters after SOP
session will be printed. For each logical cassette type the (remaining) counter
and the cassettes status is printed.

November 2012 51
Service and Operating(SOP) Modes of Operation

CASH OUT COUNTERS:


The cash out counters are devided in three columns:
1. Currency
2. Denomination
3. Number of notes remaining in cassette; If a star (*) is appended to the
counter, the cassette will not be used for dispensing by the application.
The reasons could be because the cassette has a defect or it is physically
empty or not logged on.

The number of cassettes depends on how many cassettes are configured as


cash out cassettes.
Example:
10:41:12 CASH COUNTERS BEFORE SOP
EUR 10 1166
EUR 20 936*
EUR 20 981*
EUR 500 500*
RETRACTS: 0
REJECTS: 78

10:41:12 CASH COUNTERS AFTER SOP


EUR 10 1165
EUR 20 936*
EUR 20 981*
EUR 500 500*
RETRACTS: 0
REJECTS: 79

52 November 2012
Modes of Operation Service and Operating(SOP)

CASH IN COUNTERS:
The status of each cassette is reflected in one single character with following
meanings:
’O’ - cassette status OK
’F’ - cassette status full
’H’ - cassette status high (nearly full)
’M’ - cassette missing
’L’ - cassette status low
’E’ - cassette status empty
’I’ - cassette not ready or defect
The cassettes numbering depends on how many cassettes are configured as
cash in cassettes.
Example:
09:34:39 CASH IN COUNTERS BEFORE SOP
1: 467 O
2: 0 M
3: 0 I

09:34:39 CASH IN COUNTERS AFTER SOP


1: 0 O
2: 0 O
3: 0 O

COIN OUT COUNTERS:


Refer to the description of CASH OUT COUNTERS.

COIN IN COUNTERS:
Refer to the description of CASH IN COUNTERS.

November 2012 53
Rear Balancing Modes of Operation

Rear Balancing
On Wincor Nixdorf terminals the rear balancing functions can be performed in
two ways:
• on rear load terminals on the operator panel
• on front load terminals on the screen

Start Rear Balancing

• Rear load terminals


If the ProSop is in use, the rear balancing function is part of the User Exit
interface and can be called within the “Individual Functions” menu.
If the ProTopas/SOP-NDC is in use, the rear balancing function is integrated
in the step table configuration.
If the rear balancing function has been entered, the script framework calls
step functions as configured in the step configuration file “LYNXSOP.INA”.
Please contact international Software support for details how to configure
rear balancing step functions to build up a rear balancing step table.

• Front load terminals


On front loads the rear balancing functions will be performed in the same
way. The only difference is that supervisor mode is entered on the consumer
display. The supervisor mode must be activated using the green SOP button
on the right-hand side under the customer console in the front. You have to
open the front door of the safe to reach the button. The operator screen will
be displayed 2 or 3 seconds after pressing the button. Then you can select
the options with the PIN PAD and softkeys.

54 November 2012
Modes of Operation Rear Balancing

Customize Rear Balancing functions

To build up rear balancing functions for the operator panel or consumer screen,
you have to create a step table which is stored in section “..\LYNXSOP\
REAR_BALANCING”. The parameter file “LYNXSOP.INA” in
“C:\PROTOPAS\CONF” can be used to enhance or replace the existing steps
against your rear balancing steps.

Rear Balancing default configuration


[REAR_BALANCING]
STEP_START = "START"
STEP_ABORT = "ABORT"
[REAR_BALANCING\ABORT]
STEP_FUNC = "APPL_STOP_REAR_BAL"
STEP_PARAM = ""
JUMP_ON_RC = "RET_ERROR"
[REAR_BALANCING\RET_OK]
STEP_FUNC = "RETURN"
STEP_PARAM = "0"
[REAR_BALANCING\RET_ERROR]
STEP_FUNC = "RETURN"
STEP_PARAM = "1"
[REAR_BALANCING\START]
STEP_FUNC = "DISPLAY_CONFIRM_MSG"
STEP_PARAM = "No Rear Balancing Configured!,2,1"
JUMP_ON_RC = "RET_ERROR,RET_ERROR,RET_ERROR"

November 2012 55
Dispense Below Zero Modes of Operation

Dispense Below Zero


Since release 1.2 ProCash/NDC is able to perform dispense operations when
the physical cassettes counters become negative. Some customers have
requested this behavior for host environments where counter actualization is
not mandatory after every time when cashout cassettes will be refilled with
cash. That means at least, cashout cassettes can be refilled without updating
the local cassette counters where dispensing is possible immediately after
cassette insertion (and cassette logon via SOP if automatic logon is NOT
enabled).

How to configure Dispense Below Zero:


Dispense Below Zero can be enabled via following parameter in CUSTOM.PPF:

SECTION PARAMETER
[CASH_DISPENSER DISPENSE_BELOW_ZERO

Please refer to ProCash/NDC ProConsult/NDC Installation manual for detailed


description of this parameter.

Restrictions:
• Dispense Below Zero can be used with ProTopas/SOP-NDC only. If the
ProSop is in use you get counter mismatches between the ProSop
counters (received from WOSA) and the recalculated counters in the
User Exit function provided by ProCash/NDC.
• Dispense Below Zero cannot be used together with ProView. Because
ProView is requesting for the WOSA counters and does not get the
recalculated counters from ProCash/NDC.
• Dispense Below Zero can be used only for cash out systems when the
logical WOSA service (BSATM32.DLL) is configured.
• It is mandatory to install cashout cassettes with a physical LOW sensor
to be able to send a “Money Low” unsolicited message to the host,
because the logical cassettes counters never fall down below the low
threshold.

56 November 2012
Modes of Operation Dispense Below Zero

Changes of cash counter behaviour:


If Dispense Below Zero is enabled ProCash/NDC handles the internal counters
as follows:
As long as the number of notes remaining in the cassette is higher or equal than
500 notes, the counters are calculated in the standard way. If the remaining
counter is lesser than 500 notes, the counter maintained in the CashUnitInfo()
structure of WOSA will be encreased with 500 notes via SetCuInfo() call from
ProCash/NDC framework dcCdmFW. That has the effect that the WOSA
counter will not fall down to zero or below zero in any case. WOSA is not able
to handle negative counters. (The counters of WOSA would remain zero for all
following dispenses. The result is that the counters of rejected and dispensed
notes get lost.) Temporarily the number of notes added for each cassette is
stored in the CMOS.
The CMOS counters are used to recalculate back the original counters for the
NDC Supply counter message and SOP Cash supply counters.
Send Supply Counters terminal response:
If the remaining counter for a cassette becomes negative, the counter number
of notes remaining in cassette is set to 65535 (FFFF) in the Supply Counters
solicited message. The counters number of notes dispensed and rejected are
still maintained with the actual values.
Display or Print Cash Supplies in ProTopas/SOP-NDC:
For cassettes with negative counters only the number of rejected and dispensed
notes are displayed or printed in the Cash Counters supply function. All other
counter values are blanked out.

November 2012 57
Dispense Below Zero Modes of Operation

58 November 2012
Miscellaneous Operations

ADRS operation
ADRS by ProCash/NDC
The ProCash/NDC application periodically checks several devices of a self
service terminal and the application tries to repair them if neccessary. This
function is called Automatic Device Repair System (ADRS). Especially the
shutters and transport ways of input and output devices (Cash Dispenser
Module, Deposit Module, CashIn Module, etc.) are checked after each
consumer transaction. If status requests to the device are returned with
transport jams or device not operational, the application actively tries to repair
them via reset, or shutter close commands. During silent service ADRS is called
3 times in a 60 second time cycle.
ADRS methods in ProCash/NDC are implemented for the following devices:
• Cash Dispenser Module
Checks shutter and transport way status, performs retract or close shutter commands,
sends status message to the host
• Deposit Module
Checks shutter status, sends status message to the host, performs retract
• Receipt Printer
Checks supply status, sends low/out status message to the host
• Journal Printer
Checks supply status, sends low/out status message to the host
• Document Printer
Checks supply status, sends low/out status message to the host

ADRS by WOSA
WOSA (ProDevice) also uses ADRS for the Cash Dispenser device. In a config-
urable time cycle the status of the device is checked and if neccessary, a reset
command is initiated by the WOSA service (Wincor Nixdorf systems only).
ADRS by Firmware
In specific conditions the firmware itself performs ADRS through automatic
resets (resp. for the cash dispenser so called clearing run).
The ADRS behavior can be controlled via configuration parameters. Please
refer to ProCash/NDC Installation Manual and ProDevice parameter specifi-
cation for ADRS configuration parameters.

November 2012 59
ProCash Analyzer (PCA) ProView adaptation Miscellaneous Operations

ProCash Analyzer (PCA) ProView adaptation


ProCash/NDC and ProConsult/NDC provides device status, supply status and
supply counter information to ProCash Analyzer. The counter information will be
transfered through the module dcPca.dll.

ProFlex/NDC-DDC AddOn
ProFlex/NDC-DDC is a product that offers a fully HTML based transaction flow.
It uses the function base ProCash/NDC. The whole consumer flow and device
logic is designed in intelligent java scripts and HTML technology using the
ProTopas/WEB-Extensions. The transaction flow is fully encapsulated from any
states and screens flow that is usually downloaded from host. That means the
host does not need to download any screens or states.
Important note:
ProFlex/NDC-DDC has to be installed as AddOn product together with product
key ProCash/NDC.
If you are using the ProFlex/NDC-DDC AddOn registration key, the installation
of ProTopas/WEB-Extensions is automatically integrated in ProFlex/NDC-DDC.
In this case an extra registration key for the ProTopas/WEB-Extensions is not
required.

Please refer to document ProFlex/NDC-DDC V1.1/00 for detailed information.

60 November 2012
Miscellaneous Operations BNA Message Emulation with ProFlex

BNA Message Emulation with ProFlex


Since release 2.1/20 ProCash/NDC and ProConsult/NDC emulate NCR’s
Bunch Note Acceptor (BNA) message protocol for cash deposit transactions.
BNA messages are supported for simple cash deposit and cash recycle trans-
action messages. For details about the message structure for Transaction
Request/Reply and unsol./sol. Device Status messages, etc., refer to the
original Aptra Advanced NDC documentation offered from NCR.
Important Note:
BNA Message Emulation is supported with ProFlex/NDC only, because BNA
related States and Screens are not supported.

CPM Message Emulation with ProFlex


Since release 2.1/20 ProCash/NDC and ProConsult/NDC emulate NCR’s
Cheque Processing Module (CPM) message protocol for Cheque deposit trans-
actions. CPM messages are supported either for Single Cheque or Bundle
Cheque transaction messages. For details about the message structure for
Transaction Request/Reply and unsol./sol. Device Status messages, etc., refer
to the original Aptra Advanced NDC documentation offered from NCR.
Important Note:
CPM Message Emulation is supported with ProFlex/NDC only, because CPM
related States and Screens are not supported.

NCR compatible 7 Denomination support


Since release 2.1/20 ProCash/NDC supports the extended NDC message
protocol that allows up to 7 dispense denominations. Please refer to the original
Aptra Advanced NDC documentation offered from NCR to get details about 7
denomination support.

November 2012 61
NCR compatible 7 Denomination support Miscellaneous Operations

62 November 2012
Configuration Data
Configuration data is down-line loaded from the network to each terminal using
a series of load command messages. Configuration data is divided into four
categories:
• States
The states table directs the terminal to the tasks to be performed during each
part of a transaction. Refer to section ”States” on page 64 for details.
• Screens
Screen data contains display, control, and delimiter characters for different
screens which must be shown during different parts of a transaction. Refer
to section ”Screens” on page 171 for details.
• Miscellaneous Configuration Data
Consists of terminal parameters (capabilities), LUNO (a unique number
identifying each terminal), and terminal timer values. Refer to section
”Miscellaneous Configuration Data” on page 187 for details.
• FIT
Financial Institution Tables entries provide information which is used for
identifying which institution has issued a particular card, decoding or
encoding of data and for electronic fund transfers. Refer to chapter ”Security
Features” on page 197 for details.
Downloaded configuration data are stored in the registry location “LYNXCI” after
a "Set Config ID" load command is received. From now on the terminal will be
loaded automatically with the configuration data of the registry when the appli-
cation starts up as long as the terminal has not received any new customization
data. When power is restored or the terminal is turned on, the network requests
a configuration ID from the terminal. If the configuration ID sent by the terminal
does not match the configuration ID at the network, the network will usually
send a new configuration load to the terminal.
Terminals connected to the network are assigned to distinct groups. A network
programmer can create unique configuration data for each group, thereby
giving each group of terminals its own "personality", e.g. for systems of different
type or purpose.

November 2012 63
States Configuration Data

States
The states configuration data is down-line loaded using the States Table Load
command message (refer to section ”State Tables Load” on page 261).
Each state is associated with a specific task. For example, while the terminal is
in the select function state the terminal is dedicated to the task of prompting the
consumer to select a function and recognizing the key (function) selected. Only
those subroutines and hardware components (such as screen and keyboard)
that facilitate function selection are used.
The terminal requires the repeated use, in different ways, of some states. For
instance, the consumers have to select the type of transaction (deposit,
withdrawal, inquiry or other) and later they have to select the type of account.
Both tasks are performed using different versions of the select function state.
Each state type can have one or more state tables associated with it. Each state
table of the same state type is a different version of that state providing the same
type of functions, but used in a different manner. The different state tables are
specified by a three-digit decimal number in range 000 through 999 or three
alpha numeric digits in range A00 through ZZZ. This ranges allow to support up
to 1000 different numeric state records plus 45655 different alpha numeric state
records.

Each state table contains nine entries.


1. A state table is 25 characters long (first entry, which is one character long,
plus eight three-digit entries).
2. The first entry in a state table is a single character identifying the type of
state (ASCII graphic character).
3. The other eight entries are used to specify the actions performed (such as
screen displayed, buffers used and next state table) and are three
characters long.

State table 000 is the first state table that the terminal is in when it
enters in-service mode. State table 000 is usually a card read state.
The terminal should always return to a close state after the consumer’s trans-
action(s) have been completed.

64 November 2012
Configuration Data States

The terminal may use one state type several times while processing a trans-
action; depending on the transaction that the costumer has requested, other
state types might not be used at all. The use of these state types, in any order,
defines terminal operation.
A summary of all the state types is shown in the following tables.
table 5: State summary

State Name State Description


Type
Card Read A Reads the magnetic stripe from the ID card and then
usually indicates a PIN entry state as the next state.
PIN Entry B Reads the PIN number entered by the customer and
verifies that the PIN entered is valid.
Unlock C After this state the terminal immediately goes to the
Envelope next state.
Dispenser
Preset D Clears and sets any or all 8 bytes of the operation code
Operation buffer.
Code Buffer
FDK E Reads the code of each operation key pressed by the
Selection customer. The key codes are stored in the operation
code buffer. The next state varies depending on the
customer’s selection.
Amount F Reads the entered amount, displays that amount on the
Entry screen, and stores it in the amount buffer. If a
withdrawal transaction is being processed, an amount
check state will normally be the next state. Otherwise,
a Preset Operation Code Buffer state will usually be the
next state.
Amount G Verifies that the amount entered is a whole amount
Check (zero cents). If the amount entered by the customer is
not a whole amount, the next state is always deter-
mined by the network configuration. Otherwise, a
Preset Operation Code Buffer state will typically be the
next state.

November 2012 65
States Configuration Data

State Name State Description


Type
Information H Reads in a variable-length string of numerical keys and
Entry stores that data in a general purpose buffer. Optionally,
the terminal displays the data on the screen. If the
customer presses the cancel key, an operation key, or
times-out during data entry, the input string is termi-
nated. The next state depends on the customer’s input.
Transaction I Sends a Transaction Request message to the network
Request and executes the Transaction Reply commands
received from the network. The next state depends on
the network response.
Close J Returns or retains the customer’s card and optionally
issues a printed acknowledgment form to the customer.
Typically, the next state table used is 000 (a card read
state preparing the terminal for the next customer).
FIT Switch K Used to modify selection paths based on FIT table entry
and institution type. The terminal can use customized
state tables for the customers of a specific institution.
The terminal can provide different functions to different
customers depending on the customer’s institution.
Card Write L During this state, the terminal writes the contents of the
track 3 data buffer onto the magnetic stripe of a card
Enhanced M Same functions as B state, but including updating track
PIN Entry data on the ID card.
Card read T This card read state is used, if the application requires
(Non-000 that the number of the card read state be something
state appli- other than 000.
cations)
Hardware h The Hardware Fitness state checks for fatal error
Fitness condition of the terminal devices. It goes to the
specified next state depending on devices which have
a fatal condition. The extension of this state checks for
warning conditions und uses the specified next state
exit.
Smart FIT k The Smart FIT Check state performs a FIT check with
Check the chip data that is read from the chip of a smart card.

66 November 2012
Configuration Data States

State Name State Description


Type
Barcode s The Barcode Read State enables the barcode scanner
Read and reads the barcode field that the consumer has
placed in the reading zone of the barcode reader.
Skip Step The Skip Step is used to skip states which are not
supported by ProCash/NDC or ProConsult/NDC.
Enhanced R Reads the entered amount, displays it on the screen,
Amount and stores it in the Amount buffer, General Purpose
Entry buffer B or C buffer.
Language S In this state the flow of a transaction is switched on
Code Switch whether a language code is present in the card data or
not.
Language V In this state one set of state tables can be used to
Select from display screens in different languages within the same
Card transaction. This is determined by a code on the
cardholder’s card.
FDK Switch W This state reads the data buffer from the 8 FDK
selection state to identify which next state the terminal
should go.
FDK Infor- X This state translates the FDK selected by the
mation cardholder into a value that is placed in the specified
buffer for use by an FDK switch state.
8 FDK Y This state reads the FDK selected by the cardholder,
Selection stores the key code in an FDK buffer for use by an FDK
switch state, and updates the operation code buffer.
Customer b This state allows the consumer to change the PIN.
Selected PIN
Audio i This state allows the consumer to set the audio volume
Control for the played message and to switch audio channels.
Expanded ’_’ FIT switch state with enhanced number of next states
FIT Switch depending on the specified switch index in the FIT
table.
Extension Z The Extension state extends the functions of state ‘S’,
‘T’, ‘X’, ‘k’ and ‘Y’. The Extension state can be activated
in the extension state number field of the state.

November 2012 67
States Configuration Data

Steps processing

ProCash/NDC or ProConsult/NDC uses step oriented functions for each state.


Every downloaded state is assigned to a specific ProCash/NDC or
ProConsult/NDC step. The step assignment is stored in the Windows registry
location “..\LYNXPAR\STATE_MAP”
The following table shows, which NDC state is assigned to a ProCash/NDC or
ProConsult/NDC step:
table 6: ProCash/NDC, ProConsult/NDC steps belonging to NDC states

State Step State Step


Type Type
A DC_CARD_READ T NDC_CARD_PIN
B DC_PIN_ENTRY V NDC_CARD_LANGUAGE
C DC_DISPENSE_ENVELOPE W NDC_FDK_SWITCH
D DC_PRESET_OP_CODE X NDC_FDK_INFO_ENTRY
E DC_FDK_SELECT4 Y NDC_FDK_SELECT
F DC_AMOUNT_ENTRY Z NDC_EXT
G DC_WHOLE_DOLLAR_CHECK ’_’ NDC_EXP_FIT_SWITCH
H DC_INFORMATION_ENTRY b NDC_CUST_SEL_PIN
I DC_TRAN_REQUEST i NDC_AUDIO_CONTROL
J DC_CLOSE_TRAN P NDC_EXP_FIT_SWITCH
K DC_FIT_SWITCH R NDC_ENH_AMOUNT_ENTRY
L DC_WRITE_CARD h DC_HARDWARE_FITNESS [1]
M DC_ENH_PIN_ENTRY k NDC_SMART_FIT_CHECK
S NDC_LANGUAGE_SWITCH s DC_READ_BCR
N DC_CAMERA_CONTROL all DC_NEXT_X (X = 1-8) [1]
states

[1] - Wincor Nixdorf specific state

68 November 2012
Configuration Data States

Card Read State (A)

The Card Read state is usually the first state used during transaction
processing. This state table is normally assigned to the state number 000. The
terminal enters state number 000 automatically when placed in-service.
The Card Read state table performs the following functions:
• identifies the number of the screen displayed for prompting card entry
• identifies the screen displayed after a misread
• defines the card track(s) from which data is read
• contains a flag for the card return feature (immediately or at the end of the
transaction)
• indicates the next state number for cards that are read properly
• scans the FIT to obtain a match on the financial institution number
• tells the terminal the next state to go to if there is no FIT match
table 7: Card Read state entries

Entry Definition
1 state type
2 screen number
3 correct read next state number
4 error (misread) screen number
5 read condition 1
6 read condition 2
7 read condition 3
8 card return flag
9 no FIT match next state number

November 2012 69
States Configuration Data

The card read (A) state entries are defined as follows:

State type
Entry number:1
Valid range: A
Description: This state ID identifies this state table as a Card Read state table.

Screen number
Entry number:2
Valid range: 000-999
Description: This is the number of the screen which prompts the customer to
insert a card. This screen is displayed while the terminal is await-
ing card entry.

Good read next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state the terminal enters after the customer’s
card is read properly. Normally the next state is a PIN entry state
type.

Error (misread) screen number


Entry number:4
Valid range: 000-999
Description: This is the number of the screen displayed if the card is not read
properly. Normally, this screen will prompt the customer to check
that the card is inserted correctly and to reinsert the card.

70 November 2012
Configuration Data States

Read condition 1
Entry number:5
Valid range: 001-015
Description: This is one of the three entries (used with entry no. 6 and 7) that
tell the terminal which card track(s) must be read. This is the first
read condition. If this condition cannot be met, read condition 2 is
used next. Refer to table “Card Read state entries” for the defini-
tion of the card read conditions.

Read condition 2
Entry number:6
Valid range: 001-015
Description: This is one of the three entries (used with entry no. 5 and 7) that
tell the terminal which card track(s) must be read. This is the sec-
ond read condition used. This one is used if read condition 1 can-
not be done. If read condition 2 cannot be met, read condition 3 is
used. Refer to table “Card Read state entries” for the definition of
the card read conditions.

Read condition 3
Entry number:7
Valid range: 001-015
Description: This is one of the three entries (used with entry no. 5 and 6) that
tell the terminal which card track(s) must be read. If neither read
condition 1 or read condition 2 can be met, this read condition is
used. Refer to table “Card Read state entries” for the definition of
the card read conditions.

Card return flag


Entry number:8
Valid range: 000-001
Description: This entry tells the terminal whether the card should be returned
immediately or upon transaction completion. The valid values are
as follows:
000 - return card immediately
001 - return card upon transaction completion

November 2012 71
States Configuration Data

No FIT match next state number


Entry number:9
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state the terminal enters if the FIT number on
the card does not match that of any member institution.
table 8: Read condition entry definitions

Required track(s) Card read table Card read table Card read table
Entry 5 (read Entry 6 (read Entry 7 (read
condition 1) condition 2) condition 3)
1 only 004 004 004
2 only 002 002 002
3 only 001 001 001
1 and 2 006 006 006
1 and 3 005 005 005
2 and 3 003 003 003
1 and 2 and 3 007 007 007
2 or 3 002 001 001
1 or 3 004 001 001
1 or 2 004 002 002
1 or2or3 004 002 001
(1 and 2) or (1 and 3) 006 005 005
(2 and 1) or (2 and 3) 006 003 003
(3 and 1) or (3 and 2) 005 003 003
1 or (2 and 3) 004 003 003
2 or (1 and 3) 002 005 005
3 or (1 and 2) 001 006 006
Chip connect only 008 008 008
3 and chip connect 009 009 009
2 and chip connect 010 010 010
2, 3 and chip connect 011 011 011
1 and chip connect 012 012 012
1, 3 and chip connect 013 013 013
1, 2 and chip connect 014 014 014
1, 2, 3 and chip connect 015 015 015

72 November 2012
Configuration Data States

Short desciption to Table 8:


If read condition 1 is satisfied, the good read next state number entry (table entry 3)
is taken. Otherwise, read condition 2 is attempted.
If read condition 2 is satisfied, the good read next state number entry (table entry 3)
is taken. Otherwise, read condition 3 is attempted.
If read condition 3 is satisfied, the good read next state number entry (table entry 3)
is taken. Otherwise, the card is ejected and the error screen number (table entry 4)
is displayed.

November 2012 73
States Configuration Data

PIN Entry State (B)

The PIN Entry state prompts the customer to enter the PIN and displays an X
for each PIN digit entered.
FIT determines whether the terminal performs PIN verification (local PIN verifi-
cation) or whether this is done by the network (remote PIN verification). If local
PIN verification is used, the terminal does not use state entry 8. If remote PIN
verification is used, the terminal does not use state entry 5. For details on each
PIN verification method, refer to chapter ”Security Features” on page 197.
table 9: PIN Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 local PIN check, correct PIN next state number
6 local PIN check, maximum bad PIN’s next state number
7 local PIN check, error screen number
8 remote PIN check, next state number
9 local PIN check, maximum PIN attempts

The PIN Entry (B) state entries are defined as follows:

State type
Entry number:1
Valid range: B
Description: This state ID identifies this state table as a PIN Entry state table.

74 November 2012
Configuration Data States

Screen number
Entry number:2
Valid range: 000-999
Description: This is the number of the screen display that prompts the custom-
er to enter the PIN. This screen is displayed when the terminal en-
ters the PIN entry state. This screen must position the cursor at
the beginning of the area where the Xs are displayed.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds if the cus-
tomer fails to enter the PIN within the specified time limit. Enter
255 to deactivate the time-out function. Entering 255 keeps the
terminal in this state until an operation key is pressed.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: This is the number of the state to which the terminal proceeds if
the customer presses the cancel key.

Local PIN check, good PIN next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds after it
verifies that the customer entered the correct PIN (if local PIN
check). The number of digits to be checked are specified by FIT
field PCKLN. Normally the next state is a Pre-Set Operation Code
Buffer state.

November 2012 75
States Configuration Data

Local PIN check, maximum bad PIN’s next state number


Entry number:6
Vollud data range:000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds after the
customer incorrectly enters the PIN the number of times specified
by state entry 9. Normally, the next state is a close state.

Local PIN check, error screen number


Entry number:7
Valid range: 000-999
Description: The number of the screen display that prompts the customer to
enter the PIN again. This screen is displayed each time the cus-
tomer enters an incorrect PIN until the retry value is reached as
specified by state entry 9 (or by the card). This screen must posi-
tion the screen cursor at the beginning of the area in which the Xs
are displayed.

Remote PIN check, next state number


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds if no local
PIN check is specified in FIT.

Local PIN check, maximum PIN attempts


Entry number:9
Valid range: 000-009
Description: This entry specifies the maximum number of times that a custom-
er can enter an incorrect PIN before the terminal goes to the state
specified by state entry 6. (This can be overridden by an entry on
the card if such is specified by the FIT. Typically used in the ’M’
state.)

76 November 2012
Configuration Data States

Customer Selectable PIN State (b)

This state allows the cardholder to input a new PIN. It differs from the PIN entry
state (B) in the number of retries. The state will prompt for the new PIN twice
and will take a good exit if both are the same and local PIN check is enabled.
If checking is local, the exit will be taken when the two new PIN’s have been built
into the PIN blocks for transmitting. If checking is enabled and the two PIN’s
entered are not the same the cardholder wil be asked to re-enter the Customer
Selectable PIN (CSP) and the state will not exit. If the FIT specifies that short
PIN entry is to be tested for, short PIN’s will be regarded as one try against the
limit specified in the state table.
The screen association for this state is derived from screen specified in table
entry 2. The cardholder PIN is entered on the facia keyboard and consists of
four to sixteen digits. If the number of digits entered is less than the value
specified in the FIT entry PMXPN the cardholder must press FDK A or ’ENTER’
key on the facia keyboard after the last digit entered . The ’CLEAR’ key clears
all digits.
table 10: Customer Selectable PIN state entries

Entry Definition
1 state type
2 first entry screen number
3 time-out next state number
4 cancel next state number
5 good next state number
6 CSP fail next state number
7 second entry screen number
8 mismatch first entry screen number
9 extension state number

November 2012 77
States Configuration Data

The Customer Selectable PIN (b) state entries are defined as follows:

State type
Entry number:1
Valid range: b
Description: This state ID identifies this state table is a Customer Selectable
PIN state table.

First entry screen number


Entry number:2
Valid range: 000-999
Description: Display screen that prompts the cardholder to enter the PIN the
first time.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number to which the terminal goes if the cardholder does
not make a CSP entry within the specified time limit. Enter 255 if
the time-out function is not required.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number to which the terminal goes if the cardholder presses
the ’CANCEL’ key to stop the CSP transaction.

Good next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number to which the terminal goes if the cardholder enters
a matching pair of new PIN values.

78 November 2012
Configuration Data States

CSP fail next state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number to which the terminal goes if the cardholder fails to
enter a matching pair of new PIN digits or the maximum number
of retries for local PIN checking is reached.

This state will also be taken if:


1.No FIT match
2.Cardholder tampering is detected.
3.PIN block generation fails.

Second entry screen number


Entry number:7
Valid range: 000-999
Description: Display screen used to ask for confirmation of the CSP.

Mismatch first entry screen number


Entry number:8
Valid range: 000-999
Description: Displays a new screen that replaces the screen for table entry 2
on each attempt after a CSP pair attempt did not match or an error
has occurred and there are still further retries allowed.

Extension state number


Entry number:9
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number of the extension state.

November 2012 79
States Configuration Data

Extension to state (b)

This state extends the Customer selected PIN state regarding number of PIN
entry attempts and type of PIN verification.
table 11: Extension state entries

Entry Definition
1 state type
2 number of attempts allowed to enter a matching CSP pair
3 use local verification of new PIN pair attempts
4-9 reserved, must be ’000’

The Extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies that this state table is an Extension state.

Number of attempts allowed to enter a matching CSP pair


Entry number:2
Valid range: 000-010
Description: Limits the number of attempts the cardholder may make to select
a new PIN. A zero entry means no limit.

Use local verification of new PIN pair attempts


Entry number:3
Valid range: 000-001
Description: Specifies which attempts are to be verified locally:
0 - Do not verify locally
1 - Verify both attempts locally. Result available in
transaction request field ’U’.

80 November 2012
Configuration Data States

Envelope Dispense (C) State

The Envelope Dispense (C) state tells the terminal how to process a deposit
operation.
If there are still enough envelopes in the deposit module and the local
parameter “DISPENSE_ENVELOPE” is enabled, the envelope is dispensed
within the envelope dispense (C) state.
If the local parameter “DISPENSE_ENVELOPE” is disabled, the Envelope
Dispense (C) state immediately enters the next state exit without an envelope
dispense operation. Envelope dispensing takes place in the deposit function of
the transaction reply. Refer to ProCash/NDC ProConsult/NDC Installation manual
for detailed parameter description.
table 12: Envelope Deposit (C) state entries

Entry Definition
1 state type
2 next state number
3-9 reserved, must be ’000’

The Envelope Deposit (C) state entries are defined as follows:

State type
Entry number:1
Valid range: C
Description: This state ID identifies this state table as an Envelope Deposit
state.

Next state number


Entry number:2
Valid range: 000-511
Description: The number of the state to which the terminal proceeds after en-
tering state C.

November 2012 81
States Configuration Data

Pre-Set Operation Code Buffer State (D)

The operation code buffer is eight bytes long.


The Pre-Set Operation Code Buffer state can do any combination of the
following:
• Clear the operation code buffer or clear selected bytes of the operation code
buffer.
• Pre-set selected bytes of the operation code buffer with A, B, C, or D and F,
G, H or I
Each bit of the masks in this state represents a byte (buffer position) in the
operation code buffer. Bit 0 of the mask represents the first byte; bit 7 of the
mask represents the eighth byte.
table 13: Pre-Set Operation Code Buffer state table

Entry Definition
1 state type
2 next state number
3 clear mask
4 A preset mask
5 B preset mask
6 C preset mask
7 D preset mask
8 reserved
9 extension state number

The Pre-Set Operation Code Buffer (D) state entries are defined as follows:

State type
Entry number:1
Valid range: D
Description: This state ID identifies this state table as a Pre-Set Operation
Code Buffer state table.

82 November 2012
Configuration Data States

Next state number


Entry number:2
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds after
clearing or presetting the operation code buffer.

Clear mask
Entry number:3
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be cleared to graphic
"space." Each bit relates to a byte in the operation code buffer. Bit
0 relates to the first entry; bit 7 relates to the eighth entry. If a bit
is not set (zero), the corresponding entry is cleared. If a bit is en-
abled (one), the corresponding entry is unchanged. Set this entry
to 255 if none of the operation code buffer positions are to be
cleared.

A Preset mask
Entry number:4
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to A. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to A. If a bit is disabled (zero), the
corresponding entry is unchanged.

B Preset mask
Entry number:5
Valid range: 000-255
Description: Specifies bytes of operation codeoperation code buffer buffer to
be set to B. Each bit relates to a byte in the operation code buffer.
Bit 0 relates to the first entry; bit 7 relates to the eighth entry. If a
bit is enabled (one), the corresponding entry is set to B. If a bit is
disabled (zero), the corresponding entry is unchanged.

November 2012 83
States Configuration Data

C Preset mask
Entry number:6
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to C. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to C. If a bit is disabled (zero), the
corresponding entry is unchanged.

D Preset mask
Entry number:7
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to D. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to D. If a bit is disabled (zero), the
corresponding entry is unchanged.

Reserved
Entry number:8
Valid range: 000
Description: Entry 8 is reserved and must be 000.

Extension State number


Entry number:9
Valid range: 000-254 or 256-999, A00-ZZZ
Description: State number of the extension state containing information on
how the other operation codes are preset.

84 November 2012
Configuration Data States

Clear mask (entry 3) example

Start with an operation code buffer that looks like the following:
Buffer B _ _ C _ _ D _
Bit Pos 0 1 2 3 4 5 6 7
Weight 1 2 4 8 16 32 64 128
To clear buffer position 6 (byte 6), add the weights of the positions that you do
not want to clear and put that result in the clear mask entry (entry 3).
Buffer B _ _ C _ _ D _
Bit pos 0 1 2 3 4 5 6 7
Positions not cleared X X X X X X X
Weights not cleared 1 + 2 + 4 + 8 + 16 + 32 + 128 = 191
With 191 entered in entry 3, the resultant operation code buffer would appear
as follows:
Buffer B _ _ C _ _ _ _
Bit pos 0 1 2 3 4 5 6 7

A, B, C, D preset masks (entries 4-7) example

Assume that you want to set the operation code buffer positions as follows:
• positions 0 and 2 to A
• positions 1 and 5 to B
• position 3 to C
• positions 4 and 7 to D
The buffer would appear as follows:
Buffer A B A C D B _ D
Bit pos 0 1 2 3 4 5 6 7
Weight 1 2 4 8 16 32 64 128
The entries would have to be set as follows:
• entry 4 (A preset mask) - 1+4 = 005
• entry 5 (B preset mask) - 2 + 32 = 034
• entry 6 (C preset mask) - 8 = 008
• entry 7 (D preset mask) - 16 + 128 = 144

November 2012 85
States Configuration Data

Extension to State (D)

The extension to state (D) allows presetting the operation code buffer with F, G,
H or I.
table 14: Preset operation code buffer Extension state table

Entry Definition
1 state type
2 F preset mask
3 G preset mask
4 H preset mask
5 I preset mask
6-9 reserved must be 000

The Pre-Set Operation Code Buffer Extension (Z) state entries are defined as
follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as an Pre-Set Operation
Code Buffer Extension state.

F Preset mask
Entry number:2
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to F. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to F. If a bit is disabled (zero), the
corresponding entry is unchanged.

86 November 2012
Configuration Data States

G Preset mask
Entry number:3
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to G. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to G. If a bit is disabled (zero), the
corresponding entry is unchanged.

H Preset mask
Entry number:4
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to H. Each bit
relates to a byte in the operation code buffer. Bit 0 relates to the
first entry; bit 7 relates to the eighth entry. If a bit is enabled (one),
the corresponding entry is set to H. If a bit is disabled (zero), the
corresponding entry is unchanged.

I Preset mask
Entry number:5
Valid range: 000-255
Description: Specifies bytes of operation code buffer to be set to I. Each bit re-
lates to a byte in the operation code buffer. Bit 0 relates to the first
entry; bit 7 relates to the eighth entry. If a bit is enabled (one), the
corresponding entry is set to I. If a bit is disabled (zero), the cor-
responding entry is unchanged.

November 2012 87
States Configuration Data

Four FDK Selection Function State (E)

This state reads the operation key that has been pressed by the cardholder,
stores the key code in the operation code buffer, and then advances to the next
state. This state permits the customer to select one function from up to four
functions displayed on the screen, by pressing one of the active operation keys.
The state table data for this state type defines which of the four operation keys
are to be active during this state.
table 15: Four FDK Select Function state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 operation key A next state number
6 operation key B next state number
7 operation key C next state number
8 operation key D next state number
9 operation code buffer location

The Four FDK Selection Function (E) state entries are defined as follows:

State type
Entry number:1
Valid range: E
Description: This state ID identifies this state table as a Function Selection
state table.

88 November 2012
Configuration Data States

Screen number
Entry number:2
Valid range: 000-999
Description: The number of the display screen which prompts the customer to
choose between transaction types, account names, etc..
This screen is displayed upon entry into the selection function
state and must be aligned with the active operation keys (table en-
try 5, 6, 7, and 8) for proper operation.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
fails to make the selection within the specified time limit (specify
"255" if the time-out function is not used).

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the cancel key instead of an operation key.

Operation key A next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the A operation key (specify "255" to deactivate the A op-
eration key during this state).

Operation key B next state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the B operation key (specify "255" to deactivate the B op-
eration key during this state).

November 2012 89
States Configuration Data

Operation key C next state number


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the C operation key (specify "255" to deactivate the C op-
eration key during this state).

Operation key D next state number


Entry number:8
Valid range. 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the D operation key (specify "255" to deactivate the D op-
eration key during this state).

Operation code buffer location


Entry number:9
Valid range: 000-007
Description: Specifies the operation code buffer byte in which the key code for
the selected operation key is to be stored. The network down-line
loads the following data to select the indicated buffer byte:
000 = buffer position 0 Buffer positions are as follows:
001 = buffer position 1
002 = buffer position 2 ________
003 = buffer position 3 01234567
004 = buffer position 4
005 = buffer position 5
006 = buffer position 6
007 = buffer position 7

90 November 2012
Configuration Data States

Amount Entry State (F)

This state reads the amount entered by the consumer, displays it on the screen
and saves it in the amount buffer. This buffer is 8 or 12 bytes long. In the amount
entry state, the operation keys are used by the consumer to indicate whether
the displayed amount is either correct or incorrect.
table 16: Amount Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 operation key A next state number
6 operation key B next state number
7 operation key C next state number
8 operation key D next state number
9 display amount screen number

The Amount Entry (F) state entries are defined as follows:

State type
Entry number:1
Valid range: F
Description: This state ID identifies this state table as an Amount Entry state
table.

Screen number
Entry number:2
Valid range: 000-999
Description: Number of display screen that prompts an amount entry. This
screen is displayed upon entry into the amount entry state.

November 2012 91
States Configuration Data

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
fails to enter the amount within the specified time limit (specify
"255" if the time-out function is not used).

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the cancel key before pressing an operation key. Value
"255" deactivates the CANCEL key during this state.

Operation key A next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the A operation key. Value "255" deactivates the A oper-
ation key during this state.

Operation key B next state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the B operation key. Value "255" deactivates the B oper-
ation key during this state.

Operation key C next state number


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the C operation key. Value "255" deactivates the C oper-
ation key during this state.

92 November 2012
Configuration Data States

Operation key D next state number


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the D operation key. Value "255" deactivates the D oper-
ation key during this state.

Normally one operation key is used to indicate whether the amount


entry is correct and another is used to indicate whether it is incorrect.
The other operation keys are inactive.

Display amount screen number


Entry number:9
Valid range: 000-999
Description: Overlay screen number that sets the screen cursor position. This
screen optionally defines the initial display format prior consumer
amount entry. The cursor should be set on the left- hand side of
the echo field on the screen. This is space filled until the required
start position for the currency character is reached.

Default echo field for eight digits:


bbbbb$ 0.00
(where b = space)

Default echo field for twelve digits:


bbbbbbbbb$ 0.00
(where b = space)

November 2012 93
States Configuration Data

Amount Check State (G)

This state checks to see if the amount entered is a whole amount (zero cents).
This state should follow the amount entry function state when a withdrawal
transaction is being performed.
When checking that an amount is dispensable, Central must have downloaded
the Dispenser Currency Cassette Mapping Table. If this table has not been
downloaded, or a currency type identified in table entry 7 is not present in the
table, processing will proceed with non-whole amount entry next state number.
table 17: Amount Check state entries

Entry Definition
1 state type
2 whole amount entry next state number
3 non-whole amount entry next state number
4 buffer to be checked
5 zero entry next state number (if table entry 8 is zero) or
integer multiple value (if table entry 8 is non zero)
6 number of decimal places
7 currency type
8 amount check condition
9 reserved must be zero

The Amount Check (G) state entries are defined as follows:

State type
Entry number:1
Valid range: G
Description: This state ID identifies this state table as a amount check state ta-
ble.

94 November 2012
Configuration Data States

Whole amount entry next state number


Entry number:2
Valid range: 000-999
Description: The state number to which the terminal proceeds upon finding 00
(zero cents) value in the amount entry.

Non-whole amount entry next state number


Entry number:3
Valid range: 000-999
Description: The state number to which the terminal proceeds upon finding a
cents value other than 00 cents in the amount entry.

Buffer to be checked
Entry number:4
Valid range: 000-002
Description: This field specifies which buffer is to be checked:
000 - amount buffer
001 - general purpose buffer B
002 - general purpose buffer C

Zero entry next state number


Integer Multiple Value
Entry number:5
Valid range: 000-999
Description: If table entry 8 is zero:
The state number to which the terminal proceeds, if the consumer
enters zero amount or does not enter any value.
If table entry 8 is non-zero:
Integer multiple value used in checking specified buffer. For ex-
ample, to check that the specified buffer contains a multiple of the
minimum denomination $5, this field would be set to '005'. This
field is ignored if table entry 8 is not ‘002’.

November 2012 95
States Configuration Data

Number of decimal places


Entry number:6
Valid range: 000-004
Description: Number of decimal places used in specified buffer. For example,
$5 is sent as 500 cents, so has 002 decimal places.

Currency type
Entry number:7
Valid range: 001-255
Description: Currency type of amount in specified buffer. Used in conjunction
with the Dispenser Currency Cassette Mapping Table. This field
is ignored if table entry 8 is not '003'.

Amount check condition


Entry number:8
Valid range: 000-003
Description: If the condition being checked evaluates to 'true' then processing
will proceed to the next state identified in table entry 2; otherwise
processing will proceed to the next state identified in table entry 3.
All conditions check the buffer indicated by table entry 4. All con-
ditions except condition ‘000’ take account of the decimal point lo-
cation via the value in table entry 6. When this entry is set to 000,
the state does not use state parameters 5 to 9, to enable back-
wards compatibility. When this entry is set to 001, the state eval-
uates whether the value to the right of the decimal point position
is zero. When this entry is set to 002, the state evaluates whether
the value is a whole number multiple of the value identified in table
entry 5. When this entry is set to 003, the state evaluates whether
the value is dispensable by the terminal, taking into account the
currency type required (table entry 7), currency type denomina-
tions available, dispenser status and cassette status.

Reserved
Entry number:9
Valid range: 000
Description: Entry 9 is reserved and must be 000.

96 November 2012
Configuration Data States

Information Entry State (H)

This state reads in a variable-length string of numeric keys, saves the data in
one of two general purpose buffers (see table entry 9), and displays either the
data or ‘X’ for each numeric key pressed. The input string is terminated by an
operation key, cancel key, or a time-out. General purpose buffers B and C are
variable in length. Maximum length is 32 bytes. When the terminal enters this
state, the specified buffer contains only the data from the depressed numeric
keys. If no keys are depressed, then the buffer contains no data.
table 18: Information Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 operation key A next state number
6 operation key B next state number
7 operation key C next state number
8 operation key D next state number
9 buffer and display parameters

The Information Entry (H) state entries are defined as follows:

State type
Entry number:1
Valid range: H
Description: This state ID identifies this state table as an information entry
state table.

November 2012 97
States Configuration Data

Screen number
Entry number:2
Valid range: 000-999
Description: The number of the display screen that prompts key entry from the
customer. This screen is displayed upon entry into the information
entry state and must leave the cursor at the beginning of the data
or X display area.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
fails to respond to the CRT message within a specified time limit.
Value "255" disables the time-out function.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the cancel key before pressing an operation key.

Operation key A next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the A operation key. Value "255" deactivates the A oper-
ation key during this state. This key automatically activates the
Enter key on the EPP or PIN Pad.

98 November 2012
Configuration Data States

Operation key B next state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the B operation key. Value "255’ deactivates the B oper-
ation key during this state.

Operation key C next state number


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the C operation key. Value "255" deactivates the C oper-
ation key during this state.

Operation key D next state number


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the D operation key. Value "255" deactivates the D oper-
ation key during this state.

November 2012 99
States Configuration Data

Buffer and display parameters


Entry number:9
Valid range. 000-323
Description: This entry specifies whether the actual data entered or X is to be
displayed, beginning at the current cursor position. This entry also
specifies which general purpose buffer (B or C) is used for storing
the numeric data input and how many digits can be entered. The
default buffer size of 32 digits can be decreased if the first two dig-
its have a non zero value up to the maximum of 32.

The valid characters are as follows:


xx0 = display X for each numeric key pressed; store keys
in general purpose buffer C (max. 32 digits).
xx1 = display data as entered; store keys in general
purpose buffer C (max. 32 digits).
xx2 = display X for each numeric key pressed; store keys
in general purpose buffer B (max. 32 digits).
xx3 = display data as entered; store keys in general
purpose buffer B (max. 32 digits).

Set a buffer limit example:


123 = display data as entered; store keys in general
purpose buffer B with max. 12 digits.

100 November 2012


Configuration Data States

Transaction Request State (I)

The Transaction Request state tells the terminal what information to include in
the transaction request message, transmits the transaction request message to
the network, and waits for the network response. When the network responds
with a Transaction Reply command message, the terminal executes the Trans-
action Reply command message and goes to the next state specified in the
Transaction Reply command message. If the network does not respond with a
Transaction Reply command message within the time specified by timer 03
(section “Timer Data” on page 188), the terminal goes to the state specified in
entry 3 of this state.
table 19: Transaction Request state entries

Entry Definition
1 state type
2 screen number
3 network response time out next state number
4 send track 2 data
5 send track 1, track 3
6 send operation code buffer
7 send amount buffer
8 send PIN buffer (Buffer A) data / Select Extended format
9 send general purpose buffer(s) B and/or C or
Extension State Number (Range 000-254, 256-999, A00-ZZZ)

The Transaction Request (I) state entries are defined as follows:

State type
Entry number:1
Valid range: I
Description: This state ID identifies this state table as a transaction request
state table.

November 2012 101


States Configuration Data

Screen number
Entry number:2
Valid range: 000-999
Description: The number of the screen displayed while the terminal transmits
a request to the network and waits for the associated Transaction
Reply command. This is normally a Please Wait screen.

Network response time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the network
does not respond to the transaction request in the time specified
by timer 03 (section “Timer Data” on page 188). This timer checks
for receipt of a Transaction Reply command message in response
to a transaction request.

Send track 2 data


Entry number:4
Valid range: 000-001
Description: This field indicates whether track 2 data should be sent in the
transaction request message.
The valid values are as follows:
000 - do not send data
001 - send data

Send track 1, 3
Entry number:5
Valid range: 000-007
Description: The track 1, 3 data entry specifies whether track 1 and/or track 3
data is sent to the network.
The valid values are as follows:
000 - no additional tracks
001 - send track 3 only
002 - send track 1 only
003 - send track 1 and 3

102 November 2012


Configuration Data States

Send operation key data


Entry number:6
Valid range: 000-001
Description: This field indicates whether the operation key data should be sent
in the transaction request message.
The valid values are as follows:
000 - do not send data
001 - send data

Send amount buffer data


Entry number:7
Valid range: 000-001
Description: This field indicates whether the amount buffer data should be sent
in the transaction request message.
The valid values are as follows:
000 - do not send data
001 - send data

Send PIN buffer data


Entry number:8
Valid range: 000-001, 128
Description: This field indicates whether the PIN buffer data should be sent in
the transaction request message or when bit 128 is enabled use
table entry 9 as an extension state definition.
The valid bit values are as follows:
000 - do not send data
001 - send data
128 - do not send PIN data, but use extension state specified in
table entry 9
129 - send PIN data and use extension state specified in table
entry 9.

November 2012 103


States Configuration Data

Send general purpose buffers B and/or C data


Entry number:9
Valid range: 000-003, Extension state range: 000-254, 256-999, A00-ZZZ
Description: This field indicates whether the data from the general purpose
buffers B and/or C should be sent in the transaction request mes-
sage. If bit 128 is enabled in table entry 8 its meaning of this table
entry changes to an extension state number definition.
The valid values are as follows:
000 - do not send data from either buffer
001 - send general purpose buffer B data only
002 - send general purpose buffer C data only
003 - send general purpose buffers B and C data

Extension to state (I)

In the Extension state of the transaction request state additional buffers can be
defined to be sent to the network.
table 20: Extension state entries

Entry Definition
1 state type
2 send general purpose buffers B and/or C
3 send optional date fields ’A’ - ’H’
4 send optional data fields ’I’ - ’L’
5 send optional data fields ’Q’ - ’V’
6-9 reserved

The Extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as an Extension state table.

104 November 2012


Configuration Data States

Send general purpose buffers B and/or C data


Entry number:2
Valid range: 000-003
Description: This field indicates whether the data from the general purpose
buffers B and/or C should be sent in the transaction request mes-
sage.
The valid values are as follows:
000 - do not send data from either buffer
001 - send general purpose buffer B data only
002 - send general purpose buffer C data only
003 - send general purpose buffers B and C data

Optional data fields ’A’ - ’H’


Entry number:3
Valid range: 000-255
Description: This entry is bit encoded to control the sending of individual op-
tional data fields in the transaction request message. If a bit is set,
the corresponding data field is sent. If a bit is clear, the data field
is not sent.
BIT Field ID
1 ’A’ reserved
2 ’B’ reserved
3 ’C’
4 ’D’
5 ’E’
6 ’F’
7 ’G’
8 ’H’

November 2012 105


States Configuration Data

Optional data fields ’I’ - ’L’


Entry number:4
Valid range: 000-015
Description: This entry is as for entry 3 but with following values:
BIT Field ID
1 ’I’
2 ’J’
3 ’K’
4 ’L’
5 ’M’ reserved
6 ’N’ reserved
7 ’O’ reserved
8 ’P’ reserved

Optional data fields ’Q’ - ’V’


Entry number:5
Valid range: 000-063
Description: This entry is as for entry 3 but with following values:
BIT Field ID
1 ’Q’
2 ’R’
3 ’S’
4 ’T’ reserved
5 ’U’
6 ’V’
7 reserved
8 reserved

106 November 2012


Configuration Data States

Close State (J)

The Close state should terminate the customer’s current terminal interface. This
state performs the following functions:
• displays a screen
• completes any printing on the customer or journal printer that was initiated
by a Transaction Reply command message.
• returns or retains the activator card as instructed by the Transaction Reply
command message.
In addition, if the terminal returns the ID card and the consumer fails to remove
the card within the time period specified by timer 02 (section “Timer Data” on
page 188), the terminal will automatically retain the card.
table 21: Close state entries

Entry Definition
1 state type
2 transaction record form delivered screen number
3 next state number
4 no transaction record form delivered screen number
5 card retained screen number
6 Statement delivered screen
7 reserved
8-9 not used

The Close (J) state entries are defined as follows:

State type
Entry number:1
Valid range: J
Description: This state ID identifies this state table as a Close state table.

November 2012 107


States Configuration Data

Transaction record form delivered screen number


Entry number:2
Valid range: 000-999
Description: The number of the display screen that asks the customer to
please take the card and the transaction record form. This screen
is displayed upon entry to the close state only if the customer’s
card is returned and a transaction record form was printed.

Next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds after the close
state is completed.

No transaction record form delivered screen number


Entry number:4
Valid range: 000-999
Description: The number of the display screen that asks the customer to
please take the card. This screen is displayed upon entry to the
close state only if the customer’s card is returned and no transac-
tion record form was printed.

Card retained screen number


Entry number:5
Valid range: 000-999
Description: The number of the screen that informs the customer that the card
has been retained. This screen is displayed upon entry to the
close state only if the customer’s card has been retained by the
terminal as instructed by the network. If the customer times-out,
this screen is not displayed.

108 November 2012


Configuration Data States

Statement delivered screen


Entry number:6
Valid range: 000-999
Description: Display screen to be overlaid when either the receipt is delivered
(entry 2) or there is no receipt delivery (entry 4). This screen is
only displayed if the statement is cut and delivered in a close state
and the terminal has not been instructed by the last transaction re-
ply message to capture the card

Reserved
Entry number:7
Valid range: 000
Description: Entry 7 is reserved and must be 000.

Not used
Entry number:8-9
Valid range:
Description: Entries 8 and 9 are not used by ProCash/NDC or ProCon-
sult/NDC.

November 2012 109


States Configuration Data

FIT Switch State (K)

The FIT Switch state allows the terminal to follow an alternate sequence of
states and screens according to the value of the Primary Account Number
(PAN) on the activator card. This state examines the PSTDX entry in the FIT to
determine the next state number. Refer to section ”FIT (Financial Institution
Table)” on page 208 for a detailed explanation of the FIT tables.
Each FIT designates a next state according to the institution type to which it
applies. The next state executed is indexed in this table. For example, if the FIT
identified during the Card Read state contains a PSTDX of 3, state entry 5
contains the next state number.
table 22: FIT Switch state entries

Entry Definition
1 state type
2-9 next state number

The FIT Switch (K) state entries are defined as follows:

State type
Entry number:1
Valid range: K
Description: This state ID identifies this state table as an FIT Switch state table.

110 November 2012


Configuration Data States

Next state number


Entry number:2-9
Valid range: 000-254, 256-999, A00-ZZZ
Description: Entries 2 through 9 contain the number of the state to which the
terminal proceeds depending on the value in the PSTDX value of
FIT.
These entries are defined as follows:

Entry Description
2 next state number if PSTDX = 0
3 next state number if PSTDX = 1
4 next state number if PSTDX = 2
5 next state number if PSTDX = 3
6 next state number if PSTDX = 4
7 next state number if PSTDX = 5
8 next state number if PSTDX = 6
9 next state number if PSTDX = 7

November 2012 111


States Configuration Data

Expanded FIT Switch State (_)

The Expanded FIT Switch state operates as state type ’K’ except that more
switch capacity has been addded through a mandatory extension state.
Each FIT designates a next state according to the institution type to which it
applies. The next state executed is indexed in this table. For example, if the FIT
identified during the Card Read state contains a PSTDX of 3, state entry 5
contains the next state number.
table 23: Expanded FIT Switch state entries

Entry Definition
1 state type
2-8 next state number
9 extension state number

The Expanded FIT Switch (_) state entries are defined as follows:

State type
Entry number:1
Valid range: ’_’
Description: This state ID identifies this state table as an Expanded FIT Switch
state table.

112 November 2012


Configuration Data States

Next state number


Entry number:2-8
Valid range: 000-254, 256-999, A00-ZZZ
Description: Entries 2 through 8 contain the number of the state to which the
terminal proceeds depending on the value in the PSTDX value of
FIT.
These entries are defined as follows:

Entry Description
2 next state number if PSTDX = 0
3 next state number if PSTDX = 1
4 next state number if PSTDX = 2
5 next state number if PSTDX = 3
6 next state number if PSTDX = 4
7 next state number if PSTDX = 5
8 next state number if PSTDX = 6
9 extension state number of the mandatory extension state

Extension State number


Entry number:9
Valid range: 000-254; 256-999, A00-ZZZ
Description: State number of the extension state.

November 2012 113


States Configuration Data

Extension to State (_)

This state is the Extension state for the Expanded FIT Switch state (_).
table 24: Extension state entries

Entry Definition
1 state type
2 next state number if PSTDX = 7
3 next state number if PSTDX = 8
4 next state number if PSTDX = 9
5 next state number if PSTDX = 10
6 next state number if PSTDX = 11
7 next state number if PSTDX = 12
8 next state number if PSTDX = 13
9 next state number if PSTDX = 14

The Extension State entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as the Extension state to the
Expanded FIT Switch state table.

Next state number


Entry number:2-8
Valid range: 000-254, 256-999, A00-ZZZ
Description: Entries 2 through 9 contain the number of the state to which the
terminal proceeds depending on the value in the PSTDX value of
FIT.

114 November 2012


Configuration Data States

Card Write State (L)

During a Card Read state the card data buffers are cleared of all previous data.
The Card Read state defines the card tracks to be read, and stores the card
track data in the corresponding card data buffer. In the transaction request state,
the terminal sends a transaction request message to central. You can specify
whether or not track 1, 2 or/and track 3 data are included in this message.
Central responds to this message by sending a transaction reply command to
the terminal. Within this command is a field which contains updated track 1/2
or/and track 3 data. This data replaces any previous data in the terminal‘s track
data buffer.
During the Card Write state the terminal writes the contents of the track 1/2/3
data buffer onto the magnetic stripe of the card. You specify which screen is to
be displayed on the screen while writing takes place.
Writing takes place only if the track data buffer contains data obtained from a
successful track 3 read during a card read state, or updated track data from a
transaction reply command.
There are three next state numbers that the terminal can go to once it leaves
the Card Write state. One exit is taken if the track write is successful. Another
exit taken if the track write is unsuccessful. A third exit is taken if the track buffer
is empty or contains invalid data and no writing is attempted.
If the terminal is to write more than one track, the order will be first track 1, then
track 2 and at least track 3. Before writing , a check is made to ensure that the
data are valid. If the data are valid and a track write fails the terminal will not
attempt any further requested track writes and the write state will exit.
To use the Card Write state, the magnetic stripe card must still be in the reader.
The following conditions must apply:
• If table entry 8 of the Card Read state (Type A) is used, it must not be 000
(return card immediately)
• A card before cash transaction reply must not have been performed.
• A parallel eject/dispense and print (Fast Cash) transaction reply must not
have been performed.

November 2012 115


States Configuration Data

table 25: Card Write state entries

Entry Definition
1 state type
2 screen number
3 good write next state
4 bad write next state
5 no write attempted
6 reserved
7 reserved
8 reserved
9 reserved

The Card Write state entries are defined as follows:

State type
Entry number:1
Valid range: L
Description: This state ID identifies this state table as the Card Write state.

Screen number
Entry number:2
Valid range: 010-999
Description: Screen displayed during card write operation.

Good Write next state


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number goes to after a satisfactory track write operation.

116 November 2012


Configuration Data States

Bad Write next state


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number goes to if the track write is unsuccessful.

No Write attempted
Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number goes to if no data or invalid data is present in the
track buffer. This state is also used if a start and/or end sentinel is
missing.

Reserved
Entry number:6-9
Valid range: 000
Description: Must be 000 for each table entry.

November 2012 117


States Configuration Data

Enhanced PIN Entry State (M)

This state performs the same functions as the PIN Entry (B) state. It also
supports track 3 retries if the FIT specifies local PIN check and indicates that
there is a track 3 retry field on the card. If the FIT specifies track 3 retries but
there is no data in the track 3 buffer, the Cancel Next state exit is taken. Before
the customer can enter a PIN for a local PIN check with track 3 retries, the PIN
retry field on the card is checked. For a Mutual Institutions Transfer System
(MINTS) format card, the retry field of the track 3 data buffer must not equal or
exceed the limit specified in state table entry 9. If an International Standards
Organistation (ISO) format card is used, the retry field must not equal 0. If that
is the case, in both situations the terminal exits to the Maximum Bad PIN’s Next
state specified in table entry 6. This check is done before the start of each PIN
entry attempt.
After the PIN is entered by the customer and compared with the calculated PIN,
the PIN retry field in the track 3 data buffer is updated. For MINTS format cards,
if the entered PIN is correct, the PIN retry field is set to 0. For ISO format cards,
the retry field is set to the value specified in state table entry 9. If the entered
PIN is incorrect, the PIN retry field is incremented for MINTS format cards and
decremented for ISO format cards. The updated track 3 data buffer is available
for transmission through the Transaction Request state.The buffer can also be
written on the card using the Card Write state.
table 26: Enhanced PIN Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 local PIN check, correct PIN next state number
6 local PIN check, maximum bad PIN’s next state number
7 local PIN check, error screen number
8 remote PIN check, next state number
9 local PIN check, maximum PIN attempts

118 November 2012


Configuration Data States

The Enhanced PIN Entry (M) state entries are defined as follows:

State type
Entry number:1
Valid range: M
Description: This state ID identifies this state table as an Enhanced PIN Entry
state table.

Screen number
Entry number:2
Valid range: 000-999
Description: This is the number of the screen display that prompts the custom-
er to enter the PIN. This screen is displayed when the terminal en-
ters the PIN entry state. This screen must position the cursor at
the beginning of the area where the Xs are displayed.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds if the cus-
tomer fails to enter the PIN within the specified time limit. Enter
255 to deactivate the time-out function. Entering 255 keeps the
terminal in this state until an operation key is pressed.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: This is the number of the state to which the terminal proceeds if
the customer presses the cancel key.

November 2012 119


States Configuration Data

Local PIN check, good PIN next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds after it
verifies that the customer entered the correct PIN (if local PIN
check). The number of digits to be checked are specified by FIT
field PCKLN. Normally the next state is a Pre-Set Operation Code
Buffer state.

Local PIN check, maximum bad PIN’s next state number


Entry number:6
Vollud data range:000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds after the
customer incorrectly enters the PIN the number of times specified
by state entry 9. This state could be a Card Write state in order to
update the track 3 PIN retry field.

Local PIN check, error screen number


Entry number:7
Valid range: 000-999
Description: The number of the screen display that prompts the customer to
enter the PIN again. This screen is displayed each time the cus-
tomer enters an incorrect PIN until the retry value is reached as
specified by state entry 9 (or by the card). This screen must posi-
tion the screen cursor at the beginning of the area in which the Xs
are displayed.

Remote PIN check, next state number


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds if no local
PIN check is specified in FIT.

120 November 2012


Configuration Data States

Local PIN check, maximum PIN attempts


Entry number:9
Valid range: 000-009
Description: This entry specifies the maximum number of times that a custom-
er can enter an incorrect PIN before the terminal goes to the state
specified by state entry 6. This entry is used as the PIN retry count
if the PIN retry count is not on the card (FIT entry PRCNT = FF).

Camera Control State (N)

This state does not perform any operation. It just uses the next state exit when
the state is entered.
table 27: Camera Control State

ENTRY DEFINITION
1 state type
2 not supported
3 next state
4-9 reserved

November 2012 121


States Configuration Data

Enhanced Amount Entry State (R)

This state reads the amount entered by the cardholder, displays it on the
screen, and saves it in the buffers specified by the state table. Exit from the
Enhanced Amount Entry state occurs when an active FDK is pressed, the
Cancel key is pressed or a time-out occurs. The Enter key is equivalent to
FDK ‘A’. The Clear key is always active and clears the amount entered and the
screen echo field to allow data entry retries within the Amount Entry state.
The Digital Audio Service can echo the keys pressed on the keyboard.
table 28: Enhanced Amount Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 operation key A next state number
6 operation key B next state number
7 operation key C next state number
8 operation key D next state number
9 extension state number

122 November 2012


Configuration Data States

The Enhanced Amount Entry (R) state entries are defined as follows:

State type
Entry number:1
Valid range: R
Description: This state ID identifies this state table as an Enhanced Amount
Entry state table.

Screen number
Entry number:2
Valid range: 000-999
Description: This is the number of the screen display that prompts the consum-
er to enter an amount.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The number of the state to which the terminal proceeds if the con-
sumer fails to enter the amount within the specified time limit. En-
ter 255 if the time-out function is not required.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: This is the number of the state to which the terminal proceeds if
the consumer presses the Cancel key.

Operation key A next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the A operation key. Value "255" deactivates the A oper-
ation key during this state.

November 2012 123


States Configuration Data

Operation key B next state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the B operation key. Value "255" deactivates the B oper-
ation key during this state.

Operation key C next state number


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the C operation key. Value "255" deactivates the C oper-
ation key during this state.

Operation key D next state number


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number to which the terminal proceeds if the customer
presses the D operation key. Value "255" deactivates the D oper-
ation key during this state.

Normally one operation key is used to indicate whether the amount


entry is correct and another is used to indicate whether it is incorrect.
The other operation keys are inactive.

Extension State number


Entry number:9
Valid range: 000-254; 256-999, A00-ZZZ
Description: State number of the extension state.

124 November 2012


Configuration Data States

Extension to State (R)

This state is the Extension state for the Enhanced Amount Entry state (R).
table 29: Extension state entries

Entry Definition
1 state type
2 document amount buffer
3 display amount screen number
4 start CAV command
5-9 reserved

The Extension State entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as the Extension state to the
Enhanced Amount Entry state table.

Document amount buffer


Entry number:2
Valid range: 000-002
Description: This field determines which buffer the amount entered will be
stored in:

000 - Amount Buffer


001 - General Purpose buffer B
002 - General Purpose buffer C

November 2012 125


States Configuration Data

Display amount screen number


Entry number:3
Valid range: 000-999
Description: Overlay screen number that sets the screen cursor position. This
screen optionally defines the initial display format prior consumer
amount entry. The cursor should be set on the left- hand side of
the echo field on the screen. This is space filled until the required
start position for the currency character is reached.

Default echo field for eight digits:


bbbbb$ 0.00
(where b = space)

Default echo field for twelve digits:


bbbbbbbbb$ 0.00
(where b = space)

Start CAV command


Entry number:4
Valid range: 000-001
Description: This field determines whether to start CAV processing or not if a
document is available. ProCash/NDC or ProConsult/NDC only
supports value 000. If a non-zero value is downloaded, the cancel
next state is taken.

126 November 2012


Configuration Data States

Language Code Switch State (S)

In this state the flow of a transaction is switched depending on whether a


language code is present in the card data or not.
You can use this state to automatically select the language to be used from the
code on the card, or to allow manual selection for cards which either have no
language code, or an invalid language code.
This state is subject to the same restrictions as the language select state. See
section “Language Select from Card State (V)” for details.
table 30: Language Code Switch state entries

Entry Definition
1 state type
2 no language code, next state no.
3 language code = 0, next state
4 language code = 1, next state
5 language code = 2, next state
6 language code = 3, next state
7 language code = 4, next state
8 language code = 5, next state
9 extension state number

November 2012 127


States Configuration Data

The Language Code Switch state entries are defined as follows:

State type
Entry number:1
Valid range: S
Description: This state ID identifies this state table as a Language Code Switch
state table.

No Language Code, Next State No.


Entry number:2
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the language code is illegal
or cannot be read.

Language Code = 0, next state


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 0.

Language Code = 1, next state


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 1.

Language Code = 2, next state


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 2.

Language Code = 3, next state


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 3.

128 November 2012


Configuration Data States

Language Code = 4, next state


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 4.

Language Code = 5, next state


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 5.

Extension State number


Entry number:9
Valid range: 000-999
Description: State number of the extension state containing next states for lan-
guage code 6-9. A value of 255 means that there is no extension
state, and language code 6-9 cause the no language code next
state exit to be taken.

Extension to State (S)

This state is the Extension state for the Language Code Switch state (S).
table 31: Extension state entries

Entry Definition
1 state type
2 language code = 6, next state
3 language code = 7, next state
4 language code = 8, next state
5 language code = 9, next state
6 reserved
7 reserved
8 reserved
9 reserved

November 2012 129


States Configuration Data

The Extension state entries of the Language Code Switch state are defined as
follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as the Extension state to the
Language Code Switch state.

Language Code = 6, next state


Entry number:2
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 6.

Language Code = 7, next state


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 7.

Language Code = 8, next state


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 8.

Language Code = 9, next state


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to, if the language code is 9.

Reserved
Entry number:6-9
Valid range: 000
Description: Must be 000.

130 November 2012


Configuration Data States

Card Read - PIN Entry Initiation State (T)

You can use this state instead of the Card Read state (A), if you want to initiate
PIN entry by the consumer at the same time as the terminal reads the card. This
state performs the same functions as the card read state. This state also
enables the keyboard for PIN entry while the card is being read, and displays a
screen prompting the customer to enter the PIN. One difference between this
state and the Card Read state is that in this state the card is always returned
according to the instruction in the Transaction Reply command message.
See also section “Card Read State (A)” on page 69.
table 32: Card Read - PIN Entry Initiation state entries

Entry Definition
1 state type
2 screen number
3 good read next state number
4 error (misread) screen number
5 read condition 1
6 read condition 2
7 read condition 3
8 reserved
9 extension state number

The Card Read - PIN Entry Initiation (T) state entries are defined as follows:

State type
Entry number:1
Valid range: T
Description: This state ID identifies this state table as a Card Read -PIN Entry
Initiation state table with a parallel card read.

November 2012 131


States Configuration Data

Screen number
Entry number:2
Valid range: 000-999
Description: This is the number of the screen display which prompts the cus-
tomer to insert a card. This screen is displayed while the terminal
is awaiting card entry. This screen will be displayed on the screen.

Good read next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: The state number the terminal enters after the customer’s card is
read properly:

Following a good read of the card if FIT’s are not used.


(Table Entry 3 in Extension State = 000), or
if the FIT number on the card matches a FIT number in the FIT ta-
ble.
Normally the next state is a PIN entry state type.

Error (misread) screen number


Entry number:4
Valid range: 010-800
Description: This is the number of the screen displayed, if the card is not read
properly. Normally, this screen will prompt the customer to check
that the card is inserted correctly and to reinsert the card.

Read condition 1
Entry number:5
Valid range: 001-015
Description: This is one of the three entries (used with entry no. 6 and 7) that
tell the terminal which card track(s) must be read. This is the first
read condition. If this condition cannot be met, read condition 2 is
used next. Refer to table “Card read state entries” for the definition
of the card read conditions.

132 November 2012


Configuration Data States

Read condition 2
Entry number:6
Valid range: 001-015
Description: This is one of the three entries (used with entry numbers 5 and 7)
that tell the terminal which card track(s) must be read. This is the
second read condition used. This one is used if read condition 1
cannot be done. If read condition 2 cannot be met, read condition
3 is used. Refer to table “Card read state entries” for the definition
of the card read conditions.

Read condition 3
Entry number:7
Valid range: 001-015
Description: This is one of the three entries (used with entry numbers 5 and 6)
that tell the terminal which card track(s) must be read. If neither
read condition 1 or read condition 2 can be met, this read condi-
tion is used. Refer to table “Card read state entries” for the defini-
tion of the card read conditions.

Card return flag


Entry number:8
Valid range: 000-001
Description: This field is not used. The early card eject feature is not supported
by this state. Card is always returned as specified be the Trans-
action Replay command message.

Extension State number


Entry number:9
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number of the extension state containing information for
parallel PIN entry.

November 2012 133


States Configuration Data

Extension to State (T)

This state is the Extension state to the card read state (T).
table 33: Extension state entries

Entry Definition
1 state type
2 screen number
3 no fit match next state number
4 clear key mask (not supported)
5 accept key mask (not supported)
6 reserved, must be 000
7 reserved, must be 000
8 reserved, must be 000
9 reserved, must be 000

The card read extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as the extension state to the
card read state (T).

Screen number
Entry number:2
Valid range: 010-999
Description: Display screen that prompts cardholder to enter PIN. This screen
is displayed on card entry. The identified screen must leave the
screen cursor positioned at the beginning of the PIN entry display
area. An X is displayed for each key pressed. track 1 name cannot
be displayed at this time as card has not been read.

134 November 2012


Configuration Data States

No FIT match Next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to if the financial institution number on
the card does not match any FIT. If FIT’s are not used this entry
must be 000.

Language Select From Card State (V)

In this state you can set one of state tables to display screens in different
languages within the same transaction. This is determined by one character
(byte) on the cardholder’s card. This code is located using the Language Code
Index parameter (PLNDX) in the FIT. See chapter “Security Features” for more
details.
You can use up to six screen groups in this state, and you specify which
language is to be used in each group. You also specify in table entry 9 how
many screens each group will contain.
table 34: Language Select From Card state entries

Entry Definition
1 state type
2 next state number
3 language code for group 1
4 language code for group 2
5 language code for group 3
6 language code for group 4
7 language code for group 5
8 language code for group 6
9 screen group size (range 000-400)

November 2012 135


States Configuration Data

The Language Select From Card (V) state entries are defined as follows:

State type
Entry number:1
Valid range: V
Description: This state ID identifies this state table as a Language Select From
Card state table.

Next state number


Entry number:2
Valid range: 0-9
Description: State number terminal goes to after selecting the screen group.

Language Code
Entry number:3
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 1.

Language Code
Entry number:4
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 2.

Language Code
Entry number:5
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 3.

136 November 2012


Configuration Data States

Language Code
Entry number:6
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 4.

Language Code
Entry number:7
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 5.

Code
Entry number:8
Valid range: 0-9
Description: Decimal number in range 0-9 identifying code for screen group 6.

Screen Group Size


Entry number:9
Valid range: 000-400
Description: State number of the extension state containing information for
parallel PIN entry.

November 2012 137


States Configuration Data

FDK Switch State (W)

Data is placed in the FDK buffer during the FDK Selection state or the FDK
Information Entry state. This data is read by the FDK Switch state in order to
identify which next state the terminal should go to.
table 35: FDK Switch state entries

Entry Definition
1 state type
2 FDK A next state no.
3 FDK B next state no.
4 FDK C next state no.
5 FDK D next state no.
6 FDK F next state no.
7 FDK G next state no.
8 FDK H next state no.
9 FDK I next state no.

The FDK Switch (W) state entries are defined as follows:

State type
Entry number:1
Valid range: W
Description: This state ID identifies this state table as a FDK Switch state table.

FDK A Next state No.


Entry number:2
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

138 November 2012


Configuration Data States

FDK B Next state No.


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

FDK C Next state No.


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

FDK D Next state No.


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

FDK F Next state No.


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

FDK G Next state No.


Entry number:7
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

November 2012 139


States Configuration Data

FDK H Next state No.


Entry number:8
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

FDK I Next state No.


Entry number:9
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number terminal goes to depending on key code stored in
FDK buffer.

140 November 2012


Configuration Data States

FDK Information Entry State (X)

When the cardholder selects an FDK, this state places the corresponding value
in the general purpose buffer or amount buffer that you have specified in table
entry 7. Table entries 2-9 in the extension to this state contain values relating to
the FDK’s.
You can use this function, for example, where a screen offers a selection of fixed
amounts that the cardholder can select by pressing a particular FDK. This state
translates the FDK selected by the cardholder into a value that is placed in the
specified buffer.
The FDK key code is stored in the FDK buffer for use by an FDK Switch state.
table 36: FDK Information Entry state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number.
4 cancel next state number
5 FDK next state number
6 extension state number
7 buffer ID
8 FDK’s active mask
9 reserved

The FDK Information Entry (X) state entries are defined as follows:

State type
Entry number:1
Valid range: X
Description: This state ID identifies this state table as the FDK Information En-
try state.

November 2012 141


States Configuration Data

Screen number
Entry number:2
Valid range: 010-999
Description: Display screen that prompts key selection by the consumer.

Time-out Next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the consumer fails to respond
to the message on screen within the permitted time limit. Enter
255 if the time-out function is not required.

Cancel Next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the cancel key is pressed.

FDK Next state


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if an FDK is pressed.

Extension State Number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number of the extension state containing assigned values
for the 8 FDK’s.

142 November 2012


Configuration Data States

Buffer ID
Entry number:7
Valid range: 010-039
Description: Identifies which buffer is to be edited and the number of zeros to
add to the values specified in the extension state.
01X = general purpose buffer B
02X = general purpose buffer C
03X = amount buffer
X - specifies the number of zeros in the range 0-9.

If Amount buffer is used, the amount buffer will contain 8 or 12 digits,


depending on the option selected. If this state is followed by an
amount check state the amount entered is assumed to be a whole
amount.

FDK Active Mask


Entry number:8
Valid range: 000-255
Description: Specifies the FDK’s that are active during this state. Each bit re-
lates to an FDK. Bit 0 relates to FDK A, bit 7 relates to FDK I. If a
bit is ‘1’ the relative FDK is active. If a bit is ‘0’ the relative FDK is
inactive.
The eight bits the binary equivalent of an FDK active mask.

For example in the following mask:


b7 b6 b5 b4 b3 b2 b1 b0
0 1 0 1 1 1 0 1

the three decimal characters in table entry 8 are 093 and the ac-
tive FDK’s are A, C, D, F and H.

Reserved
Entry number:9
Valid range: 000
Description: Must be 000.

November 2012 143


States Configuration Data

Extension to State (X)

This state is the Extension state to the FDK Information Entry state (X).
table 37: Extension state entries

Entry Definition
1 state type
2 value stored if FDK A is pressed
3 value stored if FDK B is pressed
4 value stored if FDK C is pressed
5 value stored if FDK D is pressed
6 value stored if FDK F is pressed
7 value stored if FDK G is pressed
8 value stored if FDK H is pressed
9 value stored if FDK I is pressed

The Extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as the Extension state to the
FDK Information Entry state.

Value stored if FDK A is pressed


Entry number:2
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

144 November 2012


Configuration Data States

Value stored if FDK B is pressed


Entry number:3
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

Value stored if FDK C is pressed


Entry number:4
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

Value stored if FDK D is pressed


Entry number:5
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

Value stored if FDK F is pressed


Entry number:6
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDk Information Entry state (table entry 7) if the specified FDK is
pressed.

Value stored if FDK G is pressed


Entry number:7
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

November 2012 145


States Configuration Data

Value stored if FDK H is pressed


Entry number:8
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

Value stored if FDK I is pressed


Entry number:9
Valid range: 000-999
Description: Contains a value stored in the buffer specified in the associated
FDK Information Entry state (table entry 7) if the specified FDK is
pressed.

146 November 2012


Configuration Data States

Eight FDK Selection State (Y)

This state reads the FDK selected by the cardholder, stores the key code in an
FDK buffer for use by an FDK switch state, and updates the operation code
buffer. If you do not specify an extension state in table entry 6, the key code of
the FDK selected by the cardholder is stored directly in the operation code
buffer. If you do specify an extension state, the key code is translated into three
pseudo key codes, which are then stored in the operation code buffer.
You can specify a second extension state in table entry 9 to identify the screen
bases for multi-language screen displays. If you do not specify this extension
state, then multi-language is not used.
table 38: Eight FDK Selection state entries

Entry Definition
1 state type
2 screen number
3 time-out next state number
4 cancel next state number
5 FDK next state number
6 extension state number
7 buffer positions
8 FDK’s active mask
9 multi language extension state number

The Eight FDK Selection state (Y) state entries are defined as follows:

State type
Entry number:1
Valid range: Y
Description: The state type entry identifies this state table as the Eight FDK Se-
lection state table.

November 2012 147


States Configuration Data

Screen number
Entry number:2
Valid range: 000-999
Description: Display screen which prompts key selection by the cardholder.

Time-out next state number


Entry number:3
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the cardholder does not re-
spond to the message on screen within the specified time limit.
Enter 255 if the time-out function is not required.

Cancel next state number


Entry number:4
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the cardholder presses the
cancel key.

FDK next state number


Entry number:5
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number the terminal goes to if the cardholder presses an
FDK.

Extension state number


Entry number:6
Valid range: 000-254, 256-999, A00-ZZZ
Description: State number of extension state containing assigned operation
codes for the 8 FDK’s. If there is no extension state enter 255.

148 November 2012


Configuration Data States

Buffer positions
Entry number:7
Valid range: 000-777
Description: no extension state: This defines the operation code buffer position
to be edited by a value in the range ‘000’ to ‘007’.
extension state: This specifies three bytes of the operation code
buffer to be set to the values specified in the extension state.
Three numeric values, each in the range ‘0’ to ‘7’, are specified to
define three positions in the 8 byte operation code buffer to be ed-
ited. These three values must be ordered to correspond with the
edit characters in the extension state. If no buffer positions or less
than three buffer positions are to be edited, this is specified in the
extension state.

FDK’s active Mask


Entry number:8
Valid range: 000-255
Description: Specifies the FDK’s that are active during this state. Each bit re-
lates to an FDK. Bit 0 relates to FDK A, bit 7 relates to FDK I. If a
bit is 1 the relative FDK is active. If a bit is 0 the relative FDK is
inactive.

The eight bits represent the binary equivalent of an FDK active mask.
For example in the following mask, the three decimal characters in
the table entry are 183 and the active FDK`s are A, B, C, F, G, and I.

BIT mask:
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 1 0 1 1 1

Multi language Extension state number


Entry number:9
Valid range: 000-254, 256-999, A00-ZZZ
Description: If the state selects the multi language screen base, this contains
the extension state number. If there is no extension state, enter
000 or 255.

November 2012 149


States Configuration Data

Extension to State (Y)

This state is the Extension state to the Eight FDK Selection state (Y).
table 39: Extension state entries

Entry Definition
1 state type
2 operation code stored if FDK A pressed
3 operation code stored if FDK B pressed
4 operation code stored if FDK C pressed
5 operation code stored if FDK D pressed
6 operation code stored if FDK F pressed
7 operation code stored if FDK G pressed
8 operation code stored if FDK H pressed
9 operation code stored if FDK I pressed

The Extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: Identifies this state table as the Extension state for the Eight FDK
Selection state table.

150 November 2012


Configuration Data States

Operation Code stored if FDK pressed


Entry number:2-9
Valid range: ‘A’ - ‘I’, ’@’ or 1 - 9, 0
Description: This table entry contains the operation code characters to be writ-
ten to the operation code buffer if the specified FDK is pressed.
Three characters are specified for each code, which must be in
the range ‘A’ - ‘I’. They are written in order to the three positions
specified in the Eight FDK Selection state table (entry 7). Enter
‘@’ if no character is to be written to a specified position in the buf-
fer (fields are unchanged).
The values 1 to 9 and 0 represent the characters ’A’ - ‘I’, and ’@’.

Multi Language Extension to State (Y)

This state is the Multi Language Extension state to the Eight FDK Selection
state (Y).
table 40: Extension state entries

Entry Definition
1 state type
2 screen language offset if FDK A is pressed
3 screen language offset if FDK B is pressed
4 screen language offset if FDK C is pressed
5 screen language offset if FDK D is pressed
6 screen language offset if FDK F is pressed
7 screen language offset if FDK G is pressed
8 screen language offset if FDK H is pressed
9 screen language offset if FDK I is pressed

November 2012 151


States Configuration Data

The Multi Language Extension state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: Identifies this state table as the Multi Language Extension state
for the Eight FDK Selection state table.

Screen language offset if FDK pressed


Entry number:2-9
Valid range: 000-999
Description: Each table entry contains the screen number of the first screen for
each language group. The initial offset is 000, and all unused
fields should contain this value.

152 November 2012


Configuration Data States

Audio Control State (i)

The Audio Control State allows the consumer to set the volume for the voice
message that will be played for the duration of the current transaction.
Furthermore the consumer can switch between the audio channels of the sound
card. If the terminal has a sound card installed, the left of the two channels (left
and right channel) can be connected to a loudspeaker and the right channel can
be connected to a headphone jack (if physically installed). The state table sets
which audio channels are in use on entry to this state, and whether the
cardholder will be given the option to adjust the volume. If the cardholder is to
be given the option, then a message prompting the cardholder to adjust the
volume is played repeatedly. The message is not played if the option is not
offered.
The cardholder may press:
• FDKs to increase or decrease the volume
This functionality can be disabled by setting entry 7 in the state table. If
you map the FDKs to the numeric keyboard, the cardholder can adjust
the volume by pressing numeric keys instead of the FDKs
• ENTER to set the volume at its current level. The state takes the Function
Complete Next State exit
• CANCEL to return the volume to its default level. The state takes the
Function Complete Next State exit.
If the cardholder does not press any keys within the time specified by Timer 00,
then this state invokes the Time Out State. Make sure that the screen
associated with the Time Out State is helpful to cardholders with visual diffi-
culties. For example, you can map FDKs to the PIN pad and play an appropriate
message. The Audio Control State's prompt screen must not contain an audio
message.
The volume returns to its default level on exit from the Close State.

See Table 41 on the following page for state table entry definitions:

November 2012 153


States Configuration Data

table 41: Audio Control state entries

Entry Definition
1 state type
2 Prompt screen
3 Timeout next state
4 Function complete next state
5 Increase Volume FDK mask
6 Decrease Volume FDK mask
7 Audio control
8 Audio message
9 Reserved

The Audio Control (‘i’) state entries are defined as follows:

State type
Entry number:1
Valid range: ’i’
Description: This state ID identifies this state table as an Audio Control state.

Prompt screen
Entry number:2
Valid range: 000-999
Description: Prompts user to adjust volume. This screen is only displayed if ta-
ble entry 7 indicates that the volume is to be adjusted.

Timeout next state


Entry number:3
Valid range: 000-254; 256-999, A00-ZZZ
Description: State number to which the terminal proceeds if the cardholder has
responded within the time specified by Timer 00. Value 255 disa-
bles the time-out feature.

154 November 2012


Configuration Data States

Function complete next state


Entry number:4
Valid range: 000-254; 256-999, A00-ZZZ
Description: State number to which the terminal proceeds if:
- the cardholder selects Cancel or Enter
- table entry 7 selects a channel but disables volume adjustment
- there is no audio file present on the terminal

Increase Volume FDK mask


Entry number:5
Valid range: 000-255
Description: Specifies which FDKs will increase the volume in this state. Bit 0
relates to FDK A, bit 1 to FDK B etc. If a bit is 1 then the FDK re-
ferred to is active; otherwise it is inactive. The FDKs are not ena-
bled unless the least significant bit of table entry 7 is 1. A value of
000 disables this entry and is discouraged.

Decrease Volume FDK mask


Entry number:6
Valid range: 000-255
Description: Specifies which FDKs will decrease the volume in this state. Bit 0
relates to FDK A, bit 1 to FDK B etc. If a bit is 1 then the FDK re-
ferred to is active; otherwise it is inactive. The FDKs are not ena-
bled unless the least significant bit of table entry 7 is 1. A value of
”000” disables this entry and is discouraged. Where the same
FDK is specified as having both Increase Volume and Decrease
Volume functions, Decrease Volume takes precedence.

November 2012 155


States Configuration Data

Audio control
Entry number:7
Valid range: 000-015
Description: This entry is bitmapped:

Bit Definition
0 0 - volume adjust off
1 - volume adjust on
1 0 - disables effect of bits 2 and 3
1 - enables effect of bits 2 and 3
2 0 - disables loudspeaker (left channel)
1 - enables loudspeaker (left channel)
3 0 - disables audio jack (right channel)
1 - enables audio jack (right channel)

EXAMPLE:
For instance, a value of 007 enables volume adjustment and di-
rects audio output to the speaker; 015 enables volume adjustment
and enables both channels.

A value of 003 is discouraged in this entry: this would turn both


channels off but enable volume adjustment. If this entry does not
instruct a change to the audio channel in use, the current audio
channel(s) will remain in use.

Audio message
Entry number:8
Valid range: 000 or 999
Description: Specifies which audio message will be played. Provided that table
entry 7 indicates that the volume is to be adjusted, the message
will be played repeatedly until the state is exited. If there is no au-
dio file present on the terminal, it will take the Function Complete
Next State exit.

156 November 2012


Configuration Data States

Hardware Fitness State (‘h’)

The Hardware Fitness state is a special state designed by Wincor Nixdorf that
can be used for specific purposes on Wincor Nixdorf terminals. This state allows
to jump into another state flow depending on the actual hardware fitness of the
devices defined in the state table. Also an extension state can be defined which
allows additional decisions to jump to a defined next state.
If multiple conditions apply, the priority is top down; i.e. state ‘h’ entry 3 (reboot)
has the highest priority over all values. The value of the last table entry of the
extension state becomes active only if no previous condition was fullfilled.
The general order is: reboot, device fatal, device warning.
table 42: Hardware Fitness state entries

Entry Definition
1 state type
2 no error next state
3 next state if reboot requested (defined in CCERRMAP)
4 next state if CDM fatal error
5 next state if journal fatal error
6 next state if receipt fatal error
7 next state if deposit fatal error
8 reserved for future use
9 extension state number

The Hardware Fitness (‘h’) state entries are defined as follows:

State type
Entry number:1
Valid range: ‘h’
Description: This state ID identifies this state table as a Hardware Fitness
state.

November 2012 157


States Configuration Data

No error next state


Entry number:2
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if none of
the subsequent hardware conditions apply.

Next state if reboot requested


Entry number:3
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if a sys-
tem reboot has been requested. This reboot request can be is-
sued by errors of classes which have set the reboot flag. This can
be used to prevent offering other functions to the customer after
serious malfunctions requiring a system reboot have occurred.

Next state if Cash Dispenser fatal error


Entry number:4
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the cash
dispenser is fatal.

Next state if Journal fatal error


Entry number:5
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the jour-
nal printer is fatal.

Next state if Receipt fatal error


Entry number:6
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the re-
ceipt printer is fatal.

158 November 2012


Configuration Data States

Next state if Deposit fatal error


Entry number:7
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the de-
posit module is fatal.

Reserved for future use


Entry number:8
Valid range: 000 or 255
Description: Entry 8 is reserved and must be 000 or 255.

Extension state number


Entry number:9
Valid range: 000-999
Description: State number of the extension state (Z) containing additional de-
vice conditions.

November 2012 159


States Configuration Data

Extension to State (‘h’)

The Extension state to the Hardware Fitness state contains additional condi-
tions to go to the specified next state. Typically for NDC the Hardware Fitness
Extension state is a Z state.
table 43: Hardware Fitness Extension state entries

Entry Definition
1 state type
2 denomination type
3 next state if denomination not available
4 next state if journal warning
5 next state if receipt warning
6 next state if deposit warning
7 reserved for future use
8 reserved for future use
9 reserved for future use

The Hardware Fitness Extension (Z) state entries are defined as follows:

State type
Entry number:1
Valid range: Z
Description: This state ID identifies this state table as a Hardware Fitness Ex-
tension state.

160 November 2012


Configuration Data States

Denomination Type
Entry number:2
Valid range: 000-044
Description: The data field is divided in three digits:

First digit: Reserved, always zero.


Second Specifies the denomination type of cash cassettes which should
digit: be verified as not being GOOD or LOW (fatal condition).
The entry range 1-4 indicates denomination Type 1 to 4.
Third digit: Specifies which cassette position will be checked for low notes
(warning condition).
The entry range 1-4 indicates the denomination Type 1 to 4.

Next state if Denomination not available


Entry number:3
Valid range: 000-999
Description: The number of state to which the terminal proceeds if the Denom-
ination is not available.

Next state if Journal warning


Entry number:4
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the jour-
nal printer has a warning status.

Next state if Receipt warning


Entry number:5
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the re-
ceipt printer has a warning status.

November 2012 161


States Configuration Data

Next state if Deposit warning


Entry number:6
Valid range: 000-999
Description: The number of the state to which the terminal proceeds if the de-
posit module has a warning status.

Reserved
Entry number:7-9
Valid range: 000 or 255
Description: Entries 6-9 are reserved and must be 000 or 255.

162 November 2012


Configuration Data States

Smart FIT Check State (‘k’)

This state is only required when chip data is to be used in a FIT check. The
Smart FIT Check state should be entered after the chip data a read from the
smart card and stored in the magnetic track buffers of the application. The
Smart FIT Check state then performs a FIT check on the contents of the three
track buffers. It is possible to create more than one Smart FIT Check state to
accomodate multiple FIT checks. This would allow different FIT checks to be
performed on data from the same card.
table 44: Smart FIT Check State

Entry Definition
1 state type
2 reserved
3 good read next state number
4 error (misread) screen number
5 read Condition 1
6 read Condition 2
7 read Condition 3
8 card return flag
9 no FIT match next state

The Smart FIT Check (’k’) state entries are defined as follows:

State type
Entry number:1
Valid range: ’k’
Description: This state ID identifies this state table as a Smart FIT Check state.

November 2012 163


States Configuration Data

Reserved
Entry number:2
Valid range: 0
Description: Not used - set to 0. This is left blank to align the following table en-
tries to the same positions as those in the Card Read State, allow-
ing common FIT check procedures to be used.

Good read next state number


Entry number:3
Valid range: 000-999
Description: State number to which the terminal goes if the Financial Institution
number on the card matches a Financial Institution number in the
FIT.

Error (misread) screen number


Entry number:4
Valid range: 000-999
Description: If the read conditions are not satisfied due to a bad card or a
mechanism error, the card is ejected and this screen is displayed.

Read condition 1
Entry number:5
Valid range: see description
Description: First of three entries indicating which card track buffer(s) will be
read.
Bit Description
0 Read track 3
1 Read track 2
2 Read track 1
3-7 Reserved

164 November 2012


Configuration Data States

Read condition 2
Entry number:6
Valid range: see description
Description: Second of three entries indicating which card track buffer(s) will
be read.
Bit Description
0 Read track 3
1 Read track 2
2 Read track 1
3-7 Reserved

Read condition 3
Entry number:7
Valid range: see description
Description: Third of three entries indicating which card track buffer(s) will be
read.
Bit Description
0 Read track 3
1 Read track 2
2 Read track 1
3-7 Reserved

Card return flag


Entry number:8
Valid range: 000-999
Description: Tells the terminal when the card should be returned to the card-
holder:
000 - eject the card immediately
001 - return the card as specified by a transaction reply
message.

November 2012 165


States Configuration Data

No FIT match next state number


Entry number:9
Valid range: 000 or 999
Description: This is the state is executed if the FIT check fails. It may be a close
state or a return to another Chip exit state which places the chip
data in the read buffers before calling a different Smart FIT Check
state with different read conditions. If FITs are not used, this entry
must be 000.

166 November 2012


Configuration Data States

Barcode Read State (‘s’)

The Barcode Read State (’s’) enables the barcode scanner module to read a
barcode field. After the barcode scanner is enabled, a screen will be displayed
where the consumer is advised to place the barcode field under the red light of
the barcode scanning unit until a sound (device dependend) and a screen
change after a successful read is noticed. Then the Good Read Next state exit
will be taken. If the barcode field could not be detected by the barcode scanner,
the screen remains active until the timeout timer expires or the consumer
presses the CANCEL key. Valid formats of barcode data can be specified via
local configuration parameter READ_CODE (ACCEPT_CODE_FORMAT).
Refer to ProCash/NDC ProConsult/NDC Installation manual for detailed
parameter description.
table 45: Barcode Read State

Entry Definition
1 state type
2 screen number
3 timeout next state number
4 cancel next state number
5 good read next state number
6 error next state number
7 barcode evaluation flag
8 reserved
9 reserved

The Barcode Read (’s’) state entries are defined as follows:

State type
Entry number:1
Valid range: ’s’
Description: This state ID identifies this state table as a Barcode Read state.

November 2012 167


States Configuration Data

Screen number
Entry number:2
Valid range: 000; 010-999
Description: Screen number that will be displayed when the barcode reader is
activated. If this entry is 000, no screen will be displayed.

Timeout next state number


Entry number:3
Valid range: 255; 000-999
Description: Next state exit that is taken if a time-out occures before a barcode
field could be read. Enter value 255 if the time-out exit should not
be used. The keyboard response timer TIMER_00 together with
more-timer TIMER_01 is being used to determine time-out.

Cancel next state number


Entry number:4
Valid range: 255; 000-999
Description: Next state exit that is taken if the customer presses the CANCEL
key. Value 255 disables the CANCEL key.

Good read next state number


Entry number:5
Valid range: 000-999
Description: Next state that is taken if the barcode could be read successfully.

Error next state number


Entry number:6
Valid range: see description
Description: Next state that is taken if a device error has occurred or the bar-
code is invalid.

Barcode evaluation flag


Entry number:7
Valid range: 000, 001, 900-999

168 November 2012


Configuration Data States

Description: Defines how to process the barcode data.


Value Description
000 Barcode data is stored into the variable
DCMC_BCR_DATA prefixed with a buffer ID 's'
(0x53). This variable will later be sent to the host
in the transaction request message. Subsequent
characters below 0x20 (' '-space) are converted
to one single space.
001 Barcode data is stored into general purpose
buffer B and C. The first 32 bytes are put into
buffer B and the following 32 bytes are stored in
buffer C. With this a maximum of 64 bytes of
barcode data can be processed. Subsequent
characters below 0x20 (' '-space) are converted
to one single space.
002-899 reserved for future use
900-999 The barcode data is handled through an overlay
step DC_PROC_BCR_DATA. The barcode data
is stored into the variable DC_BCR_DATA
without conversion and then the step is called
with the entered number (900 - 999) as
parameter.The overlay can then decide how to
process the barcode data in specific customer
environments.

Reserved
Entry number:8-9
Valid range: 000
Description: Field entry numbers 8 and 9 are reserved for future use.

November 2012 169


States Configuration Data

Skip State step

The Skip state steps can be used to skip non supported states which can be just
ignored through a good next state number definition.
table 46: Skip state step

Step name Definition


DC_NEXT_1 uses field 1 for good state next operation
DC_NEXT_2 uses field 2 for good state next operation
DC_NEXT_3 uses field 3 for good state next operation
DC_NEXT_4 uses field 4 for good state next operation
DC_NEXT_5 uses field 5 for good state next operation
DC_NEXT_6 uses field 6 for good state next operation
DC_NEXT_7 uses field 7 for good state next operation
DC_NEXT_8 uses field 8 for good state next operation

170 November 2012


Configuration Data Screens

Screens
Screen data is also a type of configuration data. All screens are assigned to a
decimal number between 000 and 999. Furthermore the NDC+ protocol is using
reserved screen numbers like C00 through C06, Axx, Dxx, Exx, and so on that
can be used for specific functions. Restrictively ProCash/NDC and
ProConsult/NDC just can store the reserved screens in the registry if they are
downloaded from host. The only reserved screens supported, are C00 - C06.
For detailed descripton see section “Reserved Screens” on page 182.
Normally, the screen number and following data are down-line loaded to the
terminal using the Screens Table Load command message. Refer to
section “Screen Data Load” on page 264 for details. However, new screens can
be sent by the network in a Transaction Reply command message. Unused
screens do not need to be down-line loaded. The terminal stores the screen
data in the registry location “..\LYNXCI\SCREEN”.
Wincor Nixdorf terminals can display screens in the grid of 32 columns by 16
rows. See section “Screen Design Worksheet” on page 414.

Screen Control Characters

Nearly in all screens serveral control characters are included, like cursor
positioning, set an overlay screen, clear screen, display Track 1 information,
etc.. A global overview gives Table “Screen control characters” on page 173.
ProCash/NDC and ProConsult/NDC support following major control functions:
• Clears a screen
• Sets the screen cursor
• Delays then shows a character
• Shows inverse video characters
• Allows blinking

November 2012 171


Screens Configuration Data

4 Digit Screen Numbers

ProCash/NDC and ProConsult/NDC supports downloads of 4 digit screen


numbers. The format how the 4 digit screens are stored in the screen table can
be specified in the Screen Data Load message. Please refer to section section
”Screen Data Load” on page 264 for details.
Note: Screen numbers used in State Tables have to be in 3 digit format.
Screens can devided in Custumer groups:
• Screen group ’u’ is used for language independent screen numbers
• Screen group ’l’ is used for language dependent screen numbers

Screen group ’u’:


This group defines language independent numbers for example u2456. The full
number range for this group is 0000-9999. If multi language is used, the user
screens can be split in multi language groups. The size of each language group
can be variable where it is assumed that each group will contain a maximum of
1000 screens. A screen in group ’u’ can also be defined as a four-digit number
in double quotes, without the prefix letter, for example “2431”.

Screen group ’l’:


This group defines language dependent numbers for example l3254. This is
also a four-digit group, but will normally only define screens in the range 0000
to 0999. Screen group ’l’ maps onto the 1000 screens from group ’u’ which are
in use for the current language. If no language is defined, then group ’l’ will map
to the first language group.

172 November 2012


Configuration Data Screens

Screen delimiters
The field separator (FS) or group separator (GS) at the end of the message are
screen delimiters. Each screen data field must be terminated by one of these
two screen delimiters.
Normally, FS separates each screen data field in a Screens Table Load
command message. The end of the message terminates the last screen data
field in a Screens Table Load command message.
table 47: Screen control characters cross-reference

Control Code ASCII HEX Equivalent EBCDIC HEX Equivalent


CR 0D 0D
FF 0C 0C
HT 09 05
SI 0F 0F
SO 0E 0E
VT 0B 0B

table 48: Screen control characters

Control Description
Code
CR moves the cursor to the first position in the current row
FF clears the screen and positions the cursor to position @,@ on
the display grid
HT causes the customer’s name, encoded on track 1 of the
customer’s card, to be shown on the customer display, starting
at the current customer display cursor position
SI sets the cursor to the position specified by the two bytes
following SI. the first byte is the row, and the second byte is the
column. data shown on the screen remains unchanged.
SO overlays the screen specified by the three bytes following SO.
screen data can be nested or overlaid to five levels using the
control character SO.
VT shows an alternate character on the customer display. the
alternate character is specified by the byte following VT

November 2012 173


Screens Configuration Data

CR control character
The CR control character moves the cursor to column @ in the following row.

FF control character
The FF control character clears the screen with the default foreground and
background colors. The cursor is set to the top left hand corner (row @, column
@) of the screen. Screen blinking will be switched off.

HT control character
The HT control character inserts the name from track 1 of the customer’s
activator card into the screen data. The terminal displays the name starting at
the current cursor position.

SI control character
The SI control sequence moves the cursor to a specified row and column. The
format of the control sequence is as follows:
SI 1A
The terminal places the cursor at row 1, column A.
Any of the 16 rows can be selected by using a row select character from ’@’
through 3. Any of the 32 columns can be selected by using a column select
character ’@’ through ’?’. See also the grid graphic in section “Screen Design
Worksheet” on page 414.

VT control character
The VT control sequence is used to display characters from secondary
character set. ASCII codes in the range 20 - 7F hex, preceded by a ’VT’
character, forces displaying characters from the Customer Graphic 1 character
set.
The format of the control sequence is as follows:

VT C

174 November 2012


Configuration Data Screens

SO control character
The SO control sequence inserts a specified screen into the current screen. The
format of the control sequence is as follows:
SO nnn
The network uses the control character SO to call another screen. This
technique is called nesting. Nesting is accomplished by placing control
character SO followed by a three-digit screen number within a current screen.
The maximum number of nesting levels is five.
When using nested screens, the maximum number of characters per screen is
as follows:
• screen 1: 600 characters
• screens 2 through 6: 310 characters each
The network can use an SO control sequence along with an ESC [z control
sequence to show animated screens. In a typical animation sequence, the last
screen calls the first screen again. To prevent infinite nesting when using
animation, the ESC [z control sequence must be the last instruction in each
animation screen.
The SO control sequence can also be used for the reserved graphic picture
sequences as Gxx, Kxx,Lxx, Mxx, etc.
Example sequence:

\0eG01

November 2012 175


Screens Configuration Data

table 49: Screen escape sequences cross-reference

Escape Sequence ASCII HEX Equivalent EBCDIC HEX Equivalent


ESC P 1B 50 27 D7
ESC [ 1B 5B 27 63
ESC ( 1B 28 27 4D
ESC ) 1B 29 27 5D

table 50: Screen escape sequences

Escape Parameters Description


Sequence
ESC [...m kk;ff;bb Activates blinking characters and sets foreground
and background color.
Example: kk = 00 - blinking off; 10 - blinking on (max. 100
ESC characters per screen)
[10;67;71m ff = foreground color
bb = background color
ESC [...z ttt Display idle sequence. Displays the screen in the
specified time ttt.
ESC ( c Select primary character set; (c = font type)
ESC ) c Select secondary character set; (c = font type)
ESC P0... nnn Voice control; Defines a voice message number
;0ESC\ that is played when the screen is displayed. Voice
files have to be stored in the path locations defined
via parameter AUDIOx_PATH for each language
group (x = language group) in section
“..\LYNXCI\SCREEN”.
ESC P1.. nn Logo control; displays number nn logo. (e.g.
ESC\ ESCP199ESC\)
ESC P2... nnn Picture control; diplays number nnn picture. (e.g.
ESC\ ESCP2999ESC\)
ESC PE... path Picture control; diplays a graphic specified via
ESC\ path. (e.g. ESCPEC:\PICT\PICTURE.PCXESC\)

The backslash character (\) is stored in hexadecimal format (\5c) in


the registry. ESC is stored as \1b.

176 November 2012


Configuration Data Screens

Example entry for ESCPE:


CONTENTS = “\1bPEC:\5cPICT\5cPICTURE.PCX\1b\5c”

November 2012 177


Screens Configuration Data

Displaying Graphics as Icons

ProCash/NDC and ProConsult/NDC can display *.pcx, or *.bmp files which are
smaller than the whole screen as an icon. Therefore a cursor positioning is
required to fit the icon in the right place. You can add text above or below the
icon without modifying icon data. Also, text can share a row with an icon.
However, if text and the icon share a row, one cannot overlap on the other, and
one space must separate the text and the icon. Their combined lengths cannot
extend beyond the end of the row.
Non supported graphic extensions, for example specified in a downloaded
screen using the ESCPE control sequence can be mapped to another file
extension supported by ProCash/NDC via parameter “PICTURE_EXT_XXX”.
See ProCash/NDC ProConsult/NDC Installation manual section Graphic and
Video file extension mapping for detailed descriptions how to map graphic and
video files.

Full Screen graphics

Wincor Nixdorf terminals support full screen graphics as *.pcx, or *.bmp formats.
With these graphics it is possible to show animation’s and text together instead
of using icons and/or text using WIN-NT font files. Additionally the text from the
font files can be overlaid (transparent mode) onto full screen graphics. The
possibilities are endless. Mixtures of all kinds of graphics in one customization
image are possible, PCX’s, BMP’s with/without overlaid text.

Display resolutions
ProCash/NDC and ProConsult/NDC support following display resolutions and
color depths:

Mode Resolution color depths [1]


VGA 640x480 16
SVGA 640x480 256, 65535 (16 bit)
SVGA 800x600 256, 65535 (16 bit)
SVGA 1024x768 256, 65535 (16 bit)

[1] - PCX graphics are supported in 16 or 256 colors only.

178 November 2012


Configuration Data Screens

Displaying MacroMedia Flash executables

ProCash/NDC and ProConsult/NDC are able to display Flash video animations.


Flash files can be created via different utilities like MacroMedia Flash. A Flash
animation has to be stored as an executable file like “MyFlash.exe”. Please
refer to ProCash/NDC ProConsult/NDC Installation manual to get detailed infor-
mation how to configure Flash animations in ProCash/NDC and
ProConsult/NDC.
Important Note: You have to install Internet Explorer 5.5 or higher to be able
to display Flash files.

Displaying Video files

In addition to the graphics, ProCash/NDC and ProConsult/NDC are able to


display AVI and MPG video files. They can be configured in the same way as
the graphic files. The only difference is the file extension, which has to be *.avi,
*.mpg or *.mpeg. If a video file is specified within the screen flow, an external
program named “ccMciPly.exe” located in directory “C:\PROTOPAS\BIN” is
called that performs function calls to the API of the MCI player.

If you want to play video files it is necessary to check if the video file
can be played with the current installed codec on the ATM. This can
be easily tested if you double click the video file. After you have
double clicked the file, the Microsoft MCI player should come up
automatically to play the video. If you get an error or the MCI player
doesn’t come up, you have to install the correct Video Compression
Codec. Some codecs will be installed together with the Internet
Explorer or Media Player installation.
The current version of the Video Compression Codecs can be viewed
in the “Multimedia” dialog box in the Control Panel of Windows.
IMPORTANT NOTE:
Since version $MOD$ 020701 1009 of “ccMciPly.exe”, videos are
running in the topmost window. That means, videos are always
played in the foreground window. Other open windows behind
(previously accessed via ALT-TAB) cannot be reached any more.
The only chance to get access to other open windows is via key
combination ALT+F4 on the alpha keyboard. ALT+F4 terminates the
program “ccMciPly.exe”.

November 2012 179


Screens Configuration Data

Voice Control

If the terminal has installed a sound card and the path of the voice files are
configured via AUDIOx_PATH (see ProCash/NDC ProConsult/NDC Installation
manual for detailed definition of this parameter), the terminal attempts to play
pre-recored messages in some states. Make sure that the pre-recorded
message is brief enough to play completely before the state is timed out. The
terminal attempts to play messages at following times:

Auto Voice Feature

The following voice messages are spoken if the Auto Voice Feature option 02
is set to 001 in the “Enhanced Configuration Parameters Load” message. See
also Table 51 for the message description.
• PIN Entry (Message 7) The message starts during a PIN Entry state or
Enhanced PIN Entry state when the card has been read and recognized.
• Transaction Request (Message 1) The message starts when a Trans-
action Request message is sent to the host.
• Card Taken (Message 8) The message starts as soon as a card is taken
in the Close state. If the card has already been taken, the message starts
on entry to the Close state.
table 51: Default Voice Message files

Audio Message Message


(*.WAV) file Number
1.WAV 1 “your transaction is being processed”
7.WAV 7 “please enter your personal identification number”
8.WAV 8 “thank you for using this atm”
NOTE: The three WAVE message files are recorded as male voice

180 November 2012


Configuration Data Screens

Audible Echo on Keyboard

ProCash/NDC and ProConsult/NDC also support Audio Echo on Keyboard if


Option 31 is enabled in the “Enhanced Configuration Parameters Load”
message (see Table 52).
Table 52 lists the wave files used if Audio Echo on Keyboard is enabled:
table 52: Default WAVE files for Audio Echo on Keyboard

Audio (*.WAV) file Phrase


ZERO.WAV “zero”
ONE.WAV “one”
TWO.WAV “two”
THREE.WAV “three”
FOUR.WAV “four”
FIVE.WAV “five”
SIX.WAV “six”
SEVEN.WAV “seven”
EIGHT.WAV “eight”
NINE.WAV “nine”
NOTE: The WAVE files are recorded as female voice

November 2012 181


Screens Configuration Data

Reserved Screens

Wincor Nixdorf terminals contain reserved screens C00 through C06 stored in
the registry location “..\LYNXCI\SCREEN”. These screens contain default data
which is displayed when no reserved screen is downloaded with its own data.
table 53: Downloaded reserved screens supported by Wincor Nixdorf terminals

Screen Function
No.
C00 More time screen; This screen prompts the customer who has
failed to respond to a request for keyboard input within the
specified keyboard response time.
C01 Offline screen; This screen appears on the customer display
when the terminal is offline. The screen’s characters default to
offline at terminal power up or reset.
C02 Out of Service screen; This screen appears on the customer
display when the terminal is in out-of-service mode. The screen’s
characters default to out-of-service at terminal power-up or reset.
C03 Supply screen. This screen is displayed while the terminal is in
supervisor mode.
C04 Card capture screen; This screen is displayed when the terminal
captures a card as a result of a card reader failure
C05 Cardholder tampering screen; This screen is displayed when
cardholder tampering is suspected and the terminal enters
suspend mode.
C06 Temporarily Out of Service screen

182 November 2012


Configuration Data Screens

General use of default reserved C screens


The reserved screens C00-C06 can be downloaded from host. If one of those
screens is not downloaded, the following defaults are used:

Default screen Downloaded screen


C00 000
C01 001
C02 002
C03 003
C04 none
C05 C02 / 002
C06 C02 / 002

If one or more of the reserved screens are not downloaded by the


host you can create your own reserved screens in PARAC configu-
ration file ’CUSTOM.PPF’. In Registry section ”..\LYNXCI\SCREEN”
the new subsections of your new defined C screens will be created
and updated if you start the PARAC run. See ProCash/NDC
ProConsult/NDC Installation manual for details.

Screen C00
Screen C00 prompts customers who fail to respond within a specified time
interval. Screen C00 must be defined and must conform to the following
operation key A and B requirements:
• if operation key A is pressed, the terminal returns to the original state in
which the time-out occurred. The customer presses this key to request more
time.
• if operation key B is pressed, the terminal returns to the time-out next state
entry of the original state in which the time-out occurred. Normally, this time-
out next state is a close state.

Screen C01
Screen C01 is displayed when the terminal is in offline mode.

November 2012 183


Screens Configuration Data

Screen C02
Screen C02 is displayed when the terminal is in out-of-service mode.

Screen C03
Screen C03 is the supply screen. This screen is displayed when the terminal is
in supervisor mode.

Screen C04
Screen C04 is displayed when the terminal captures the card in case of a card
reader failure. When this occurs, the next state is executed. This screen is
displayed as long as in the value of Timer 2 specified.

Screen C05
Screen C05 is displayed when cardholder tampering is suspected and the
terminal enters Suspend mode. The Suspend mode condition as an error
Severity 3 can be configured in CCERRMAP. See ProCash/NDC
ProConsult/NDC Installation manual for details.

Screen C06
Screen C06 is displayed when the terminal is temporarily in out of service mode.
This screen is displayed under following conditions:
• When specified in a go out of service comand from host
• On exit supervisor mode to out of service if supervisor mode was entered
from in service and the auto return to previous mode is not set.
• If supply mode is entered from out of service while displaying screen
C06.

184 November 2012


Configuration Data Screens

Reserved Pictures (G00-G06)

ProCash/NDC provides a set of standard pictures (icons) that can be inserted


via the SO control sequence. The are configured as reserved pictures G00
through G06 in registry location “..\LYNXCI\SCREEN”. The following table
describes the meaning of each picture.
table 54: Reserved pictures G00-G06

Picture Description
No.
G00 Card Insert
G01 PIN keypad
G02 Scan document
G03 Make deposit
G04 Take receipt
G05 Take Money
G06 Take statement

November 2012 185


Screens Configuration Data

Language Selection

You can create multi language customer screens to be displayed as requested


from one set of state tables. This can be defined via group definitions for each
language, in which the equivalent screen for all languages has the same relative
position within the group. Make sure that all the screens for which a choice of
languages can be made are in the group. Note that nested screens must have
absolute positions.
The first group must start at ’000’, and contain thos screens fro which language
selection is not possible. That is, screens displayed from the Card Read state
and Language Select from Card state. Screens normally associated with not in
service conditions, such out of service, supervisor or offline, should also be in
this group if the ’Cxx’ default screens are used.
You do not need to cahnge the state tables, but you must include an Eight FDK
Selection Function state, or Language Select from Card state, in order to select
the language.

EXAMPLE:
If four languages are required, the screen group bases could be:
– Language A - ’000’
– Language B - ’100’
– Language C - ’200’
– Language D - ’300’
If a screen ’055’ is displayed from a state table, the screen is downloaded as:
– ’055’ for Language A
– ’155’ for Language B
– ’255’ for Language C
– ’355’ for Language D

186 November 2012


Configuration Data Miscellaneous Configuration Data

Miscellaneous Configuration Data


Miscellaneous configuration data is down-line loaded via (Enhanced) Customi-
sation Table Load command message from network to terminal. Refer to section
”Configuration Parameters Load” on page 267 and to section ”Enhanced
Configuration Parameters Load” on page 271 for the message format. The
(Enhanced) Customisation Table Load command message has three data
fields:
• terminal parameters
• logical unit number
• timer data
Each field is preceded by a field separator (FS). The following sections describe
the contents of these data fields.

Terminal Parameters

The terminal parameters data fields are described in section ”Configuration


Parameters Load” on page 267 and section ”Enhanced Configuration Param-
eters Load” on page 271.

Logical Unit Number (LUNO)

The second piece of information in the miscellaneous configuration data is


called the Logical Unit No. (LUNO). The LUNO is a unique number that
indicates which terminal has transmitted a message. If the key-entry person
enters a machine number, the terminal places the terminal number at the end
of the LUNO in the transaction request, solicited status, and unsolicited status
messages (except the power failure unsolicited status message).

November 2012 187


Miscellaneous Configuration Data Configuration Data

Timer Data

The third piece of information in the miscellaneous configuration data is called


timer data. Some timers must be down-line loaded by the network because they
do not have default times. Other timers may be down-line loaded, but they do
not have to be as they have default settings.
The time-out intervals are specified as a number of 0.8 second segments
(ticks). The number of ticks assigned to a timer can be 000 to 255. This gives
each timer a time-out range of 0 to 204 seconds.

Unless otherwise stated in the timer descriptions that follow, speci-


fying a time-out interval of 000 causes the terminal to never take the
time-out next state exit from a state.
The data for each timer is down-line loaded in the sequence the timer number
(2 bytes) then the number of 800-millisecond ticks (3 bytes).
Timers are stored in registry location “..\LYNXCI\TIMER”. The timer values are
stored in seconds.

188 November 2012


Configuration Data Miscellaneous Configuration Data

table 55: Timer values

Timer Default value in PPF Timer Default value in PPF


number (seconds / ticks) number (seconds / ticks)
00 030 / 038 86 018 / 023 (not used)
01 015 / 019 87 030 / 038 (not used)
02 005 / 006 94 030 / 038 (not used)
03 030 / 038 95 030 / 038
04 040 / 050 96 000 / 000
05 040 / 050 97 010 / 013 (not used)
06 030 / 038 98 030 / 038 (not used)
07 001 / 001 99 030 / 038
08 040 / 050
09 020 / 025
10 001 / 001
11 -
12-14 -
15 -
16-17 -
18 -
19 -
20 -

Timer 00
Timer 00 sets the keyboard response timeout interval. When a screen is
displayed that prompts the customer to make a keyboard entry, the customer
must respond within the timeout interval specified for timer 00. Otherwise, the
terminal will exit its present state, display screen number 000, and start timer 01.

November 2012 189


Miscellaneous Configuration Data Configuration Data

Timer 01
Timer 01 sets the consumer response extension timeout interval. If the
customer exceeds the timeout interval allowed for keyboard entry (timer 00), for
deposit envelope insertion (timer 04, 08 or timer 20), or for securomatic
insertion (timer 08), screen 000 is displayed. Screen 000 asks if the customer
needs more time. Timer 01 is the timeout interval for the customer’s response
to screen 000. The keyboard beeper sounds while this timer is active. If this
timer expires for the keyboard, the terminal advances to timeout next state; if
the timer expires for the deposit, the terminal sends a solicited status message
to the network.

Timer 02
Timer 02 sets the close state screen time-out interval. At the end of this interval,
the terminal proceeds to the next state number specified in the close state.

A timeout interval of 000 is not permitted for timer 02.

Timer 03
Timer 03 sets the communication message timeout interval. When the terminal
is ready to transmit a Transaction Request message to the network, the terminal
starts Timer 03. If the terminal does not receive a Transaction Reply command
before Timer 03 expires, the terminal exits the transaction request state by
going to the network response time-out next state number.

Timer 04
Timer 04 sets the envelope insertion time-out interval for the depository. When
a screen is displayed that prompts the customer to insert an envelope into the
depository, the customer must respond within the time-out interval specified by
timer 04; otherwise, the terminal exits its present state, displays screen 000 and
starts timer 01. The keyboard beeper sounds while this timer is active.

Timer 05
Timer 05 sets the withdrawal time-out interval for terminals with a withdrawal
door. The maximum amount of time that the terminal waits for a customer to
remove the cash is the sum of timers 05 and 07. After the cash has been
counted and placed in the delivery mechanism, the terminal unlocks the delivery
door and starts timer 05.

190 November 2012


Configuration Data Miscellaneous Configuration Data

• If the customer fails to fully open the withdrawal door and clear the rear
withdrawal area sensors before timer 05 expires (or to just fully open the
door on terminals with a manual door), the terminal transmits the withdrawal
door solicited status to the network indicating a fault and waits for a new
Transaction Reply command message from the network.
• If the customer fully opens the withdrawal door and clears the rear
withdrawal area sensors before timer 05 expires (or just fully opens the door
on terminals with a manual door), the terminal proceeds to timer 07.

Timer 06
Timer 06 sets the communications offline timeout interval. This timer is started
each time the terminal receives a poll or select sequence from the network. If
the terminal has not been polled or selected within the interval specified for
timer 06, the terminal proceeds to offline mode (out-of-service to customers)
and displays screen 001.

A timeout interval of 000 is not permitted for timer 06.

Timer 07
Timer 07 sets the withdrawal door open timeout interval. This timer specifies the
amount of time that the terminal waits after the withdrawal door is fully opened
before going to the next specified state. On all terminals with a delivery door,
this timer starts after the withdrawal door is fully opened and either the sensors
are cleared or timer 05 expires. On all terminals without a delivery door, this
timer starts after timer 10 expires.

A timeout interval of 000 is not permitted for timer 07.

Timer 08
Timer 08 sets the envelope insertion timeout interval for the night safe depos-
itory. When a screen is displayed prompting the insertion of a deposit, the
customer has to respond within the timeout interval specified by timer 08.
Otherwise, the terminal exits its present state, displays screen 000 and starts
timer 01.

November 2012 191


Miscellaneous Configuration Data Configuration Data

Timer 09
Timer 09 sets the customer timeout interval before a card capture attempt. If,
during a close state, the card is presented to the customer and not removed
within this time period, a card capture attempt is made. This timer starts after
the terminal executes the card return function ID and at the beginning of the
close state if the card was not returned at the card read state. Timers 02 and 09
start at the same time. When the card is removed, timer 09 stops. The default
setting for timer 09 on power-up is 30 seconds (38 ticks).

A timeout interval of 000 is not permitted for timer 09.

Timer 10
Timer 10 sets the withdrawal timeout interval for terminals without a withdrawal
door. Timer 10 sets the amount of time the beeper beeps while waiting for the
customer to take the cash. After the terminal counts and places the cash in the
withdrawal area, the terminal displays a Take Cash screen, starts timer 10, and
activates the beeper. After timer 10 expires, the terminal stops the beeper and
starts timer 07. Therefore, the total amount of time that the terminal waits for a
customer to remove the cash is the sum of timers 10 and 07. A value of 000 in
timer 10 will result in no beeping and zero time. The default setting for timer 10
on power-up is 006 ticks.

Timer 11 (CSC450 with vandal shield only)


Timer 11 sets the vandal shield delay time before closing. Timer 11 sets the
amount of time the vandal shield delays before it begins to close. The vandal
shield uses this timer if a value of 004 is in state entry 3 of the vandal shield
state. Timer 11 defaults to 080 ticks on power-up.

192 November 2012


Configuration Data Miscellaneous Configuration Data

Timer 15
Timer 15 is used with the card read ‘T’ state (not used by Wincor Nixdorf
terminals).

Timer 18
Timer 18 sets the swipe card reader error screen timer (not used by
ProCash/NDC and ProConsult/NDC application).

Timer 20
Timer 20 sets the insertion timeout interval for the depository. If timer 20 is
configured to a non-zero value, it is used instead of timer 04. Timer 20 allows
seven seconds of silent time, after which the beeper starts at a slow rate for the
remainder of the specified time.

Timer 94
Timer 94 sets the Document/Envelope eject timeout. This timer gives the length
of time the Document/Envelope remains accessible to the cardholder before it
is retracted. If the cardholder takes the Document/Envelope before the timer
expires, the timer is cancelled.

Timer 95
Timer 95 sets the statement retract timeout. This timer is used during the Close
State processing. It determines when to retract a statement that has not been
taken by the customer. The default value is 30 ticks and the timer is not used if
you set a zero value. This timer is also used when Transaction Reply command
’S’ is sent in the transaction reply and the statement is laying in the collection
tray of the statement printer. The timer will be started when this condition is
detected. If the timer expires the statement is retracted and Transaction Reply
command ’S’ commences. If the statement is taken before the timer expires,
Transaction Reply command ’S’ commences without retract attempt.

Timer 96
Timer 96 sets the statement present timeout. This timer is used only in the
statement and continue function and is started regardless of whether or not a
statement has been delivered. When the timer expires, the next state specified
by the transaction reply command is entered. Timer value zero means no wait.

November 2012 193


Miscellaneous Configuration Data Configuration Data

Timer 99
Timer 99 specifies after what time the vandal guard close operation should be
started when the consumer transaction has been finished.

194 November 2012


Configuration Data Local download feature

Local download feature


The local download feature is useful if you want to overload the downloaded
customization image (CI) from host with local defined settings. With local
downloads you can skip unsupported functions or overwrite non legal values in
states or screens and it allows to enhance the host configuration with new
functions locally. In addition to the download modifications you can also change
local ATM settings (e.g. graphic file locations or printer settings).

Configure local download

Local download procedures can be called after following two situations:


• ATM has received Config ID (Set Config ID command) from host
• ATM has received Go in Service command from host
The local download process can be evaluated via two batch files. Depending on
the existing file name the local download is called after the ATM has received
the Config ID and/or a Go in Service command.
The following table describes the filenames, location and in which situations the
files are called:

Filename Directory Called when


dcCfgId.cmd C:\PROTOPAS\CONF after Config ID received
dcInServ.cmd C:\PROTOPAS\CONF after Go in Service received

The contents of the files can be any command which is supported in a Windows
command line window.
Contents of dcCfgId.cmd or dcInServ.cmd:
regedit -s stt010.reg

Description:
Calls regedit silent (no screen appears) to update contents of stt010.reg.
The contents of stt010.reg could contain following entries:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\ProTopas\CurrentVersion\LYNXCI\STATE\010]
"STEP_PARAM"="113217217013211012013003"
overloads values of state 010.
Note: The command job must return within 30 seconds.

November 2012 195


Local download feature Configuration Data

196 November 2012


Security Features

General Overview
To understand and use the information in this section, you should understand
some basic terms and concepts, which are defined below.

Algorithm An algorithm is a structured mathematical procedure for


solving a specific problem. The DES algorithm is designed to
encrypt and decrypt blocks of data. The DES algorithm is not
confidential and can be obtained by the general public. The
keys used as part of the algorithm are what provides the
confidentially
Data The Data Encryption Standard (DES) specifies an algorithm
Encryption to be used in electronic hardware devices for the purpose of
Standard [DES] cryptographic protection of computer data.
Encryption Encryption keys are numbers that are used as part of the PIN
keys verification process and also for encrypting messages to and
from the terminals. As the DES algorithm is available to the
general public, the keys must be kept secret to ensure the
confidentiality of the data being encrypted.
Personal The Personal Identification Number (PIN) is the customer’s
Identification way of verifying his or her identity as established by an
Number [PIN] activator card. By entering this PIN, the customer is identified
and can access the relevant accounts.
PIN verification PIN verification is the method of ensuring that the PIN
entered on the ATM is the proper PIN for the card inserted in
the ATM.

November 2012 197


PIN and PIN Verification Security Features

Financial The Financial Institution Table (FIT) provides the following


Institution items to the network:
Table [FIT]
– capacity of using multiple card formats and multiple insti-
tutions
– the type of PIN verification
– the encryption key (if PEKEY is used) that is used to
encrypt a PIN, which is sent to the network
– control of the transaction sequence of the terminal via FIT
switch indexes. FIT can also be used to allow the institu-
tions to define the exact operation flow of the terminal.
This is done by supplying state flow through the FIT.
Message Message Authentication Code (MAC) provides a method of
Authentication ensuring that messages sent between the terminal and the
Code network are authentic and have not been modified.
[MAC]

PIN and PIN Verification


In order to access a Wincor Nixdorf customer service terminal, the customer
must enter a Personal Identification Number (PIN). Typically, a request for PIN
entry is made after the customer has inserted an activator card into the terminal.
The terminal and/or the network must then verify the PIN before the transaction
can continue. The processes for this verification are called PIN verification
processes. This section describes both the PIN and the processes required to
verify the PIN.

198 November 2012


Security Features Personal Identification Number (PIN)

Personal Identification Number (PIN)


The PIN is generally derived from an account number. In most PIN verification
methods that account number is the Primary Account Number (PAN). The
examples and explanations in this document assume that the PAN is the
account number associated with the PIN. It is not necessary to use the entire
PAN; it is possible to use only those PAN digits that vary from customer to
customer.
The local PIN verification process is based on an algorithm, a sequence of
mathematical steps. Usually, some type of key governs the algorithm sequence.
Generally, the process that generates the customer’s PIN also verifies that PIN.
A particular key and a set of PAN’s correspond to a set of PIN’s. Some of the
PIN’s may be duplicated; that is, one PIN may be derived from several PAN’s,
but any given PAN has only one possible PIN.

PIN Entry

The first step in the PIN verification process is the customer’s PIN entry. This is
done through a PIN entry state. If local PIN verification is being used, the
terminal verifies the PIN and goes to the next state required.
When remote PIN verification is used instead of local PIN verification, one of
two transaction request messages is usually sent to the network. In the first
method, the terminal can accept any PIN and continue with a transaction
selection to the customer. The terminal then sends both the unverified PIN and
the transaction request to the network in the same message. Then, the network
can authorize or deny either the PIN or transaction.
In the second way, the terminal forwards the PIN to the network in one request
message, then awaits the go-ahead before giving a transaction selection to the
customer. The second request message holds the current transaction infor-
mation.

November 2012 199


Personal Identification Number (PIN) Security Features

Variable length PIN Entry

Using FIT, the terminal can accept a variable-length PIN. The FIT field PMXPN
indicates the maximum number of PIN digits that a customer may enter. As
soon as the customer enters the maximum number of PIN digits, the terminal
automatically completes the PIN entry state. For example, the maximum
number of PIN digits may be nine. On entry of the ninth digit, the terminal
automatically completes the PIN entry state.
The institution may issue PIN’s shorter than the maximum PIN length defined in
a FIT. Customers receiving shorter PIN’s must press operation key A (which is
active on PIN entry) to signal the end of the entry. After the customer presses
operation key A, the terminal automatically completes the PIN entry state. For
example, if the maximum PIN length is nine digits and the customer has a five-
digit PIN, the customer must press operation key A after the five-digit PIN is
entered.
If the customer inadvertently presses operation key A before entering all of the
required PIN digits, the terminal automatically attempts to verify the digits
entered. The PIN verification will fail and a retry or error state occurs (depending
on the configuration of the states).

PIN Offset Number (DES verification)

For DES PIN verification, the PIN offset number allows an institution to let
customers choose any PIN they wish. To accomplish this, an offset is added to
or subtracted from the customer’s generated PIN to obtain the desired PIN. This
is not, however, ordinary addition or subtraction, but modulo 10. In modulo 10,
no figures are carried. The following example shows the difference between
these two mathematical systems.

2716 2716
+ 3329 + 3329
5035 (modulo 10) 6045 (regular addition)

Note: Diebold PIN and VISA/ABA PIN verification is not supported by


ProCash/NDC and ProConsult/NDC.

200 November 2012


Security Features Personal Identification Number (PIN)

In the DES PIN verification process, the offset is added to the generated PIN to
obtain the customer PIN. For example, if the GPIN is 5646 and the offset is
1507, the CPIN would be calculated as follows:

5646 GPIN
+ 1507 OFFSET
6143 CPIN

An activator card data track stores the offset. FIT entry POFDX tells the terminal
where to find the offset on the activator card data track. If an institution does not
wish to use the offset, it may be set to zero.

PIN Verification Processes

ProCash/NDC and ProConsult/NDC support following types of PIN verification:


• DES local
• DES remote
These PIN verification processes are the steps that either the terminal or the
network performs to verify that a customer-entered PIN is valid. The type of
terminal you have and the data security equipment installed may dictate the
processes that are available to you. For Wincor Nixdorf cash terminals, the
following equipment is available to control PIN handling:
• DES PIN algorithm
• Encryption Decryption Module (EDM)

November 2012 201


PIN Verification Security Features

The following paragraphs describe this equipment and list the PIN verification
processes that the equipment supports.
DES PIN DES PIN encryption provides for local DES PIN verification and
remote network PIN verification. This feature also encrypts the
PIN before sending it to the network. This type of encryption pro-
vides increased security for the PIN.
EDM The Encryption Decryption Module (EDM) (available in all cash
out systems) provides all the features of the DES PIN Verification/
Encryption option and the following additional features:
•Message Authentication (MAC)
•PIN encryption using Diebold or ANSI format
DES PIN requires Financial Institution Table (FIT) entries. These FIT entries tell
the terminal what PIN verification process to use and where to find the infor-
mation that the terminal needs to perform the verification process.
Remote PIN
Verification The terminal can also send the PIN to the network for verification
rather than verifying the PIN at the terminal. The EDM encrypts
the PIN before sending it to the network for verification. The fol-
lowing sections describe some of the essentials for PIN verifica-
tion and each verification process.

PIN Verification
Wincor Nixdorf terminals support local or remote PIN verification. Depending on
the FIT entries the terminal determine if the PIN should be checked locally or
remote by the host.

202 November 2012


Security Features PIN Verification

Local PIN Verification

In the DES PIN verification process, the key is the PIN key. This PIN key is
stored at the terminal. The PIN key serves the same purpose as the ALGO. The
PIN key governs a sequence of operations in the DES ALGO. This algorithm is
a standard procedure available to the public. Security is achieved by keeping
the PIN key confidential. To obtain greater security, the PIN key is encrypted
using the DES algorithm and another secret key. The resulting encrypted PIN
key (PEKEY) is put into a FIT entry. During PIN verification, the terminal (or
network) decrypts PEKEY to restore the PIN key.
Before adding the generated PIN to the offset, DES PIN verification must go
through two algorithm procedures. The first procedure decrypts PEKEY from
the FIT using the Master key. In the second procedure, the decrypted PEKEY
is the PIN key that is used to encrypt the PAN. The encrypted PAN is
decimalized using the decimalization table in the FIT. Decimalization ensures
that the PIN digits are decimal.

Network PIN Verification

Network PIN verification requires that the PIN be padded to 16 digits and
encrypted before sending it to the Network. The terminal can encrypt the
customer-entered PIN once or twice, then send it to the Network with
unencrypted PAN and offset. The PIN may be send unencrypted, but this is not
recommended only for system testing. When the encrypted PIN reaches the
verification point in the network, a single (or double) decryption restores the
customer entered PIN. Then the generated PIN will be compared with the calcu-
lated PIN. If the PIN is correct the transaction can be continued. The institution
may choose to verify the encrypted PIN without performing decryption. This can
be done by comparing the encrypted PIN to a table of encrypted PIN values.
Therefore the PAN is used as a table look-up key.
For remote PIN verification, the PIN is sent to the network in two different forms:
• ANSI PIN/PAN Block
• Diebold PIN Block
• BANKSYS PIN Block
The terminal encrypts the block and sends it to the network. The network then
handles the PIN verification. The FIT field PMXPN tells the terminal which form
to use. See section ”Maximum PIN Entry Digits (PMXPN)” on page 213 for more
details on PMXPN.

November 2012 203


PIN Verification Security Features

ANSI PIN/PAN Block

The ANSI PIN/PAN block is a 16-hex digit block that contains the result of exclu-
sively ORing the ANSI PIN block and the Primary Account Number (PAN) block.
The ANSI PIN block is 16 hex digits and appears as follows:

PIN digits PIN digits or hex F depending Filled with


on length of PIN hex digit F

Length of PIN (4-12)

Control field (presently 0)

The PAN block is 16 hex digits and appears as follows:

PAD digits PAN digits

The PAD digits are always hex 0. The PAN digits are the least significant digits
of the PAN. The number of digits is determined by the FIT parameters PANLN,
PANDX, and PINDX. If the PAN digits are less than 12, hex 0’s are used to fill
the remaining slots.
The PIN block and PAN block are then exclusively ORed together to create the
PIN/PAN block. This block is then encrypted according to the FIT field PINPD
and sent to the network.

204 November 2012


Security Features PIN Verification

Diebold PIN Block

The Diebold PIN block is 16 hex digits and appears as follows:

PIN digits PIN or PAD digits PAD digits


depending on PIN length

Refer to section ”PIN Pad Character (PINPD)” on page 216 for more details on
the Diebold PIN block. The Diebold implementation of DES uses 16 hex digits,
0-F. The encryption process results in 16 hex digits that are converted to ASCII
by prefixing each hex digit with a hex 3 to convert the 16 hex digits to 16 ASCII
digits. These 16 ASCII digits are sent to the host if the protocol is ASCII. If the
communication protocol is EBCDIC, the 16 ASCII digits are converted prior to
transmission.
The host must reconvert the received 16 digits to 16 hex digits prior to
decrypting PIN buffer A. If the protocol is ASCII, the only conversion required is
removing the prefixed hex 3 from each digit and combining the resultant into
eight bytes. If the host protocol is EBCDIC, each digit must be converted by
using the conversion prior to combining the digits into eight bytes.
The following table shows the conversion from ASCII to EBCDIC.
HEX DIGIT ASCII (HEX) GRAPHIC DIGIT EBCDIC (HEX)
0 30 0 F0
1 31 1 F1
2 32 2 F2
3 33 3 F3
4 34 4 F4
5 35 5 F5
6 36 6 F6
7 37 7 F7
8 38 8 F8
9 39 9 F9
A 3A : 7A
B 3B ; 5E
C 3C < 4C
D 3D = 7E
E 3E > 6E
F 3F ? 6F

November 2012 205


ID Card and FIT Definitions Security Features

For example assume that the PIN is encrypted and F is used to pad the PIN. If
the entered PIN is 4512, the 16 hex digits internal to the terminal before
encryption are:
45 12 FF FF FF FF FF FF
These 16 hex digits are internal to the terminal after encryption as follows
(example only):
7A 4C F2 97 31 6E 51 33
These hex digits are then converted to ASCII by prefixing each hex digit with a
hex 3:
373A 343C 3F32 3937 3331 363E 3531 3333
If the host protocol is ASCII, the PIN buffer contains these ASCII digits.
If the host protocol is EBCDIC, the PIN buffer will contain the following 16 bytes:
F77A F44C 6FF2 F9F7 F3F1 F66E F5F1 F3F3
The graphic presentation in a line trace of these bytes will be as follows:
7:4<?297316>5133

ID Card and FIT Definitions


This section describes each FIT byte and the associated identification card
magnetic data tracks.

206 November 2012


Security Features ID Card and FIT Definitions

ID Card Data Tracks

A customer card has one, two or three magnetic data tracks. These tracks retain
sufficient information to identify a corresponding customer's account. FIT allows
a terminal to find the information on the data tracks.
Industry standards designate the three tracks as follows: Track 1, Track 2 and
Track 3. Wincor Nixdorf terminals can be equipped to read each track and to
write to Track 1/2 and 3. Normally, Track 1 contains the customer's name.
Depending on the terminal programming, the name can be shown on the
terminal screen during a transaction.
Each track has a common set of reference delimiters that are specially encoded
digits. The delimiters locate three positions: the start sentinel (SS), the end
sentinel (ES), and the field separator (FS). If the track contains more than one
separator, the separators are designated as the first field separator, second field
separator, and so on. For error checking, there is one other digit on a track. This
digit is the longitudinal redundancy digit (LRC). The start sentinel is the first
track digit. The end sentinel and LRC are the last two digits.
Track 1 can be encoded with up to 79 digits, including the sentinels, separator,
and LRC. Track 2 can be encoded with up to 40 digits and track 3 can be
encoded with up to 107. The tracks have the same physical length; they differ
in capacity because of different encoding densities (bits per inch). The terminal
reads the magnetic data digits of each track and stores the information in three
data buffers. The data on a track is found by counting forward from the start
sentinel or first field separator or backward from the end sentinel.

November 2012 207


FIT (Financial Institution Table) Security Features

FIT (Financial Institution Table)


The FIT table contains data that specifies institution IDs, information required
for PIN verification, and routing information for multi-institution terminal use. A
FIT can also contains card formats and indexes indicating where to find specific
information on a card. FIT data is down-line loaded to a terminal.
Each of the FIT table bytes falls under following categories:
• institution identification
• indexes and lengths related to the ID card format
• counts, digits, codes and keys for PIN verification and related security
• reserved for future use

Configuration Data

Before processing transactions, a terminal must receive configuration data from


the host. Configuration data is down-line loaded into the Windows registry
location “..\LYNXCI\FIT”. The Financial Institution Tables are part of the config-
uration data which are added to the personality of the terminal. FIT data are
down-line loaded in a Financial Institution Table Load command message, see
section ”FIT Data Load” on page 280 for details.
ProCash/NDC or ProConsult/NDC stores FIT data in the Windows registry
location “..\LYNXCI\FIT”, which represents the FIT library. ProCash/NDC and
ProConsult/NDC can store a maximum of 1000 FIT entries (000-999). The
highest numbered FIT entry received in a Financial Institution Table Load
command message marks the end of the FIT library.
After reading an identification card, the terminal scans the FIT library, trying to
match the card institution ID field with a particular FIT entry. If the terminal finds
a match, it then proceeds to the PIN entry state table.
See section ”PIN Entry State (B)” on page 74 in manual part 1 for details.
An institution identification scan always begins with FIT 000 and continues until:
• the terminal matches a FIT institution ID
• the terminal finds a null FIT (a FIT which is not completed during a configu-
ration down-line load)
• the terminal reaches the end of the FIT library

208 November 2012


Security Features FIT (Financial Institution Table)

FIT Library Restrictions

A FIT library has four restrictions. Violating these restrictions may cause unpre-
dictable terminal operation.
FIT gap A FIT library should not have any gaps. A gap is one or more zero
FIT’s between filled FIT’s. For example, if any sample application
requires 27 FIT entries, they must be consecutively numbered
from 000 to 026. The terminal then recognizes only FIT 000 to FIT
026 since any scan will find a zero FIT at FIT 027. The sample ap-
plication could not use FIT 000 to FIT 013 followed by FIT 020 to
FIT 032 because of the gap beginning with FIT 014 through FIT
019.

Modifying The financial institution can modify the FIT configuration data. For
the example, institution E has FIT’s 006 through 010. If, for some
FIT library reason, institution E wishes to add another FIT, for example, be-
tween 008 and 009, the current FIT’s 009 through 011 must shift
one position ahead to become 010 through 012. The inserted FIT
becomes the new 009.

On the other hand, if institution E wishes to drop a card format, for


example, FIT 007, FIT’s 008 through the end of the library must
shift back one position. Thus, 008 becomes 007, 009 becomes
008, and so forth. Never delete a FIT by omitting that FIT from a
down-line load. This creates a gap in the FIT library at which FIT
scanning will stop. Instead of deleting a FIT, renumber them.

A FIT may contain all zeros (a zero FIT). The zero FIT must be
last, because its PIDDX, PFIID, PSTDX and PINDX fields are not
the same as those in the base FIT.

An institution may include several zero FIT’s or groups of zero


FIT’s within the down-line load. These zero FIT’s may be given
values at a later date.

Switch FIT’s A FIT entry that has a PFIID of all Fs will match any card. This en-
try must be the last FIT in the table. No FIT entry with a higher
number will be checked.

November 2012 209


FIT Data Definitions Security Features

Multi Card, Multi Institution Capability

An activator card has one to three magnetic data tracks (section ”ID Card and
FIT Definitions” on page 206). Several FIT bytes indicate the size and location
of the data fields on the tracks. These bytes specify the following:
• on which track the specific data fields can be found
• the direction of the data field, relative to a track delimiter
• the number of track positions occupied

Alternate Transaction Sequences

A FIT may contain information that causes the terminal to follow alternate
sequences of states and screens. This allows the use of transaction sets specif-
ically designed for different activator card formats. This method uses the FIT
switch state table. Refer to section ”FIT Switch State (K)” on page 110 for
detailed description of this state.

FIT Data Definitions


The bytes that make up a FIT entry are divided into 16 fields. Many of the fields
contain only one byte. A FIT byte represents one of the following:
• two hex digits with hex values 0 to F for each digit
• two hex digits with each digit restricted to the decimal values 0 to 9
• eight bits possibly divided into bit fields one to seven bits wide
Table 56 shows the 16 fields listed by mnemonic, in alphabetical order;
Table 57 shows these fields listed according to their positions in the FIT.

210 November 2012


Security Features FIT Data Definitions

An index indicates how many digit positions should be skipped over between a
track delimiter and the first data digit. Throughout this section, the term
displacement means the number of digits to be skipped. A displacement equal
to zero means skip no positions; the first data position is adjacent to the track
delimiter. A displacement equal to three means skip three positions; the data
begins in the fourth position.
The following two tables give a short description about the FIT fields:
table 56: Alphabetical FIT references

Field Description Length Byte


Mnemonic Position
PAGDX ALGO number index (not used) 1 8
PANDX PAN index 1 12
PANLN PAN length 1 13
PANPD PAN pad character 1 14
PCKLN PIN check length 1 10
PDCTB decimalization table 8 17-24
PEKEY encrypted PIN key 8 25-32
PFIID institution identification 5 2-06
PIDDX institution index 1 1
PINDX data track locator 3 33-35
PINPD PIN pad character 1 11
PLNDX language code index 1 36
PMXPN maximum PIN entry digits 1 9
POFDX offset number index 1 16
PRCNT PIN retry count index 1 15
PSTDX indirect next state index 1 7
reserved (not used) 2 37-38

November 2012 211


FIT Data Definitions Security Features

table 57: FIT fields listed by data track position

Byte Length Field Description


Position Mnemonic
1 1 PIDDX institution index
2-06 5 PFIID institution identification
7 1 PSTDX indirect next state index
8 1 PAGDX ALGO number index (not used)
9 1 PMXPN maximum PIN entry digits
10 1 PCKLN PIN check length
11 1 PINPD PIN pad character
12 1 PANDX PAN index
13 1 PANLN PAN length
14 1 PANPD PAN pad character
15 1 PRCNT PIN retry count index
16 1 POFDX offset number index
17-24 8 PDCTB decimalization table
25-32 8 PEKEY encrypted PIN key
33-35 3 PINDX data track locator
36 1 PLNDX language code index
37-38 2 reserved (not used)

Institution Index (PIDDX)

PIDDX is the displacement from the delimiter specified by PINDX


(byte 0, low-order digit) to the start of the activator card institution identification
field. PIDDX comprises two hex digits with values 00 to 7F.

212 November 2012


Security Features FIT Data Definitions

Institution Identification (PFIID)

PFIID is the institution identification number. After reading an activator card, the
terminal scans its FIT library for a PFIID that matches the institution identifi-
cation number on the activator card. PFIID contains ten hex digits (two per
byte). Each digit must have a hex value of 0 to 9 or F (A, B, C, D and E are not
permitted). An F in any position means “match all”; that is, any value on the
activator card at that position matches. FIT's that have Fs in PFIID should be at
the higher numbered positions in the FIT library. For example, a PFIID that is all
Fs should be the last FIT in the library because all activator cards match the
PFIID.

FIT Switch Index (PSTDX)

PSTDX indicates the next state location in the FIT Switch state table. See
section ”FIT Switch State (K)” on page 110 for details. PSTDX comprises two
hex digits with values 00 to 06 and . (PSTDX is not a displacement on the ID
card.)

Maximum PIN Entry Digits (PMXPN)

PMXPN is the maximum number of PIN digits that the terminal accepts from a
customer on any one PIN entry. PMXPN must be greater than or equal to the
value of the five low-order bits of PCKLN. PMXPN comprises two hex digits with
values of 04 to 10 for Diebold PIN block or 84 to 8C for ANSI PIN block. With
the data security module installed, the PMXPN values are 04 to 0F. Pro-
Cash/NDC or ProConsult/NDC identifies a null FIT if PMXPN = 0.
The highest order bit of PMXPN indicates whether Diebold or ANSI PIN block
is used. The bit definitions are as follows:
0 - Diebold PIN block
1 - ANSI PIN block

An institution may issue PIN's shorter than PMXPN. These are variable-length
PIN's. Customers with variable-length PIN's enter their PIN digits, then press
operation key A to signal the end of the PIN entry.

November 2012 213


FIT Data Definitions Security Features

PIN Check Length (PCKLN)

PCKLN provides the following information to the terminal:

The number of PIN digits to be verified. This number must be less than or equal
to the maximum PIN length (PMXPN). If this number is less than PMXPN, the
Diebold PIN verification process checks the last digits entered up to the number
indicated by the PCKLN field. For example, if the customer has a PIN of
1346875 and the PCKLN is 4, the process will check the last four digits entered,
6875.

The number of digits in the offset number. This number is always equal to the
number of PIN digits verified.

The PIN verification algorithm to be used for terminal PIN verification.


This information is in two bit fields:

3 BITS 5 BITS

The high-order three-bit field indicates the type of local terminal PIN verification
to be used.

BITS ALGORITHM
000 DES
001 not supported
010 Diebold (not supported)
011 reserved
100 not supported
101 reserved
110 reserved
111 reserved

214 November 2012


Security Features FIT Data Definitions

DES and Diebold - The low order five-bit field is the number of PIN digits verified
and the number of digits in the offset. The value must be less than or equal to
PMXPN. If the entire PCKLN byte is zero, the terminal does not perform local
PIN verification.

TERMINAL VERIFICATION HEX VALUE RANGE


none 00
DES 04-10
DES (EDM) 04-0F
Diebold 40, 44

November 2012 215


FIT Data Definitions Security Features

PIN Pad Character (PINPD)

PINPD is only used for DES encryption of PIN’s in messages sent to the net-
work. PINPD is reserved and equal to zero for other PIN verifications. PINPD
comprises two hex digits.

The high-order digit indicates the message encryption type, the key(s), and the
use of the message coordination number.

HIGH-ORDER HEX TYPE OF USE AS USE AS USE


BITS ENCRYPTION KEY 1 KEY 2 COORD.NO.

0000 0 single COM none no


0010 2 double MASTER COM no
0011 3 double PIN* COM no
0100 4 none none none no
1000** 8 single COM none yes
1010** A double MASTER COM yes
1011** B double PIN* COM yes
1100 C none none none yes
* PIN key is PEKEY decrypted by master key
** Not applicable with ANSI PIN block

The low-order digit pads the PIN to the right in the PIN buffer of the terminal.
When ANSI PIN block has been selected, PINPD is not used to pad the PIN.
PINPD must be used to select the type of ANSI PIN block encryption.
The PIN buffer stores the customer-entered PIN digits in an equal number of
positions. Then, the pad digits concatenate to the PIN digits to yield 16 PIN
buffer positions. When the message coordination number is not in the message
sent to the network, the terminal encrypts (either single or double) these 16 PIN
buffer digits before transmission. The 16 PIN buffer digits can also be sent
without encryption, but this is not recommended.
When the message coordination number is in the message to the network, the
message coordination number is inserted in the PIN buffer before encryption.
In effect, the PIN and pad shift right one position, loosing one pad digit.
The valid range of hex values for PINPD includes 00 to 0F, 20 to 4F, 80 to 8F,
and A0 to CF.

216 November 2012


Security Features FIT Data Definitions

PAN Index (PANDX)

PANDX is the displacement from the delimiter specified by PINDX (byte 1, low-
order digit) to the start of the ID card PAN field (those PAN digits used for PIN
verification). PANDX comprises two hex digits with values 00 to 7F.

PAN Length (PANLN)

PANLN is the number of PAN digits to be used for terminal PIN verification.
Depending on PIN verification, PANLN has the following value limits:
• DES - PANLN comprises two hex digits with values 00 to 10.
• Diebold - PANLN comprises two hex digits with values 04 to 13 or 1F.
PANLN must be greater than or equal to the value of the five low-order bits
in PCKLN. When PANLN equals 1F, the terminal uses all PAN digits from the
PANDX starting position to the field separator that follows.
• ANSI PIN block - PANLN comprises two hex digits with values from 00 to 0C
or 1F. When PANLN equals 1F, the PAN is obtained as follows:
– locate the first field separator on the specified track.
– count back 13 digits or to the first digit before the start sentinel, whichever
count is the least.
– the PAN will include all the digits from this point up to but not including
the last digit before the first field separator.
– the delimiter and direction specified in PINDX and PANDX do not apply.

November 2012 217


FIT Data Definitions Security Features

PAN Pad Character (PANPD)

PANPD has three definitions (depending on the PIN verification scheme used):

DES - PANPD comprises two hex digits. The low-order digit pads those PAN
digits specified by PANLN (to 16 positions). The 16-position padded PAN is
then encrypted to produce a generated (natural) PIN. The high-order PANPD
hex digit specifies which of the following encryption keys is used:

0 = use the PIN key (decrypted PEKEY)


8 = use the master key
Other hex values of either 00 to 0F or 80 to 8F.

DIEBOLD - PANPD is the algorithm number (ALGO) when PAGDX equals hex
FF. When PAGDX does not equal FF, PANPD is not used and is, thus, equal to
zero. PANPD comprises two hex digits with each digit restricted to values 0 to
9 (hex values A to F not permitted). The PANPD values are 00 to 99.

PIN Retry Count Index (PRCNT)

The low-order seven bits of PRCNT are the displacement from the delimiter
specified by PINDX (byte 1, high-order digit) to the ID card PIN entry count field.
The high-order bit of PRCNT indicates the retry count conditions.

HI-ORDER CARD RETRY COUNT CONDITION


BIT FORMAT
1 ISO Count down on each retry; stop at zero.
0 MINTS Count up on each retry; stop at the retry value in
PIN entry state table.

PRCNT comprises two hex digits with values 00 to 7F (MINTS) or 80 to FE


(ISO) or FF. When PRCNT is hex FF, the PIN entry count is not on the ID card,
but in the PIN entry state table.

218 November 2012


Security Features FIT Data Definitions

Offset Number Index (POFDX)

POFDX is the displacement from the delimiter specified by PINDX (byte 2, low-
order digit) to the start of the ID card offset field. POFDX comprises two hex dig-
its with values 00 to 7F or FF. When the value of POFDX equals hex FF, the
offset is not used.

Decimalization Table (PDCTB)

PDCTB is the DES decimalization table containing a pattern of decimal digits


(two per byte, hex values A to F not permitted). The institution is responsible for
producing values for PDCTB. A sample value follows:
01 23 45 67 89 AB CD EF (standard hex digits)
01 23 45 67 89 01 23 45 (decimalized digits)
The digit positions map the corresponding hex digits from the DES process to
ensure that only decimal digits result. Each decimal digit (0 to 9) should appear
at least once, but not more than twice.

Encrypted PIN Key (PEKEY)

PEKEY is the encrypted PIN key. The master key encrypts the PIN key. The PIN
key encrypts the PAN digits specified by PANDX and PANLN to yield a
generated PIN for DES terminal PIN verification. PEKEY comprises 16 hex
digits (two per byte), with each digit having a hex value of 0 to F.
For non-DES operation PEKEY is reserved and all bytes must be hex 00.
The institution is responsible for providing PEKEY values.

November 2012 219


FIT Data Definitions Security Features

Data Track Locator (PINDX)

PINDX comprises six hex digits (two per byte). Five of the six PINDX digits
specify the ID card data track delimiter to be used in conjunction with five cor-
responding indexes (PAGDX, PIDDX, PRCNT, PANDX, PLNDX and POFDX).

PINDX Byte Hi-Order HEX digit LO-Order HEX digit


FIT byte 33 PAGDX (ALGO) PIDDX (ID)
FIT byte 34 PRCNT (RETRY) PANDX (PAN)
FIT byte 35 PLNDX (LANGUAGE) POFDX (OFFSET)

The four bits of each non-reserved digit define a track, a delimiter and a
direction from that delimiter.

Digit Bits Bit Pair Definition


00XX Start sentinel, count forward
01XX First field separator, count forward
10XX End sentinel, count backward
11XX Reserved
XX00 Track 2
XX01 Track 3
XX10 Track 1
XX11 Reserved

Language Code Index (PLNDX)

The Language Code Index specifies the offset for the language code on the ID
card. This field can be used in conjunction with state V (Language Select from
Card state). The V state sets the screen group of multi language screens that
should be displayed during transactions.
PLNDX is in range of 01-7F hex. The value of 00 hex is not allowed if the
language code is used. The value 7F hex means zero if the language code is
used and the search is backwards from an end sentinel only.

220 November 2012


Security Features Message Authentication (MAC)

Message Authentication (MAC)

Overview

Message authentication minimizes the risk of unauthorized tampering with the


messages sent between the terminal and the network. Message modification
and message replay are two methods of message tampering. Message modifi-
cation is where the data communication lines between the terminal and next
node are tampered with so that values in a message can be changed for fraud-
ulent purposes. Message replay is where entire messages are copied from a
previous transaction and retransmitted later for fraudulent purposes.
To help minimize the risk of message tampering, two fields are added to the
messages, a time variant number and a Message Authentication Code (MAC).
The time variant number is a randomly-generated eight-digit hex number. This
number is generated by the terminal for each transaction request message. The
MAC is an eight-digit hex number containing the result of a MAC calculation on
the message.
For example, the transaction request message is formed and includes a time
variant number. Once this is done, a DES operation is performed on the
message using the master key and the DES algorithm. The result of this
operation is the MAC. The MAC is placed in the MAC data field at the end of the
message. Upon receiving the message, the network performs the same DES
operation on it. The network then compares the result of this DES operation with
the MAC contained in the MAC data field. If the two match, the network is
assured that the message is from a valid terminal and that it has not been
tampered with. The network then returns the time variant number with its Trans-
action Reply command. The ATM can check that this is the same time variant
number sent in the transaction request. This ensures that the entire process is
authentic.
Messages that can be authenticated are as follows:
• Transaction Request command
• Transactioen Reply command
• State Table Load command
• FIT Table Load command
• MAC Field Selection Load command
• Solicited Status messages

November 2012 221


Message Authentication (MAC) Security Features

The ANSI standard X9.9 describes the procedures and provides the algorithm
used to calculate the MAC data. A MAC master key is used with this algorithm
to perform the MAC calculation. This master key is down-line loaded from the
network in an Encryption Key Load command message.

MAC flags

Message Authentication is controlled by some configuration parameters which


have to be set in PARAC configuration file ’CUSTOM.PPF’.
The following table shows the MAC flags to be activated:
table 58: MAC flags definition

NDC PARAMETER in VALUE DESCRIPTION


FLAG CUSTOM.PPF
1 CHECK_TVN_MAC 0 Do not check TVN in Transaction reply messages, or
MAC in Transaction reply, State Table or FIT Load
messages.

1 Check TVN in Transaction reply messages, or MAC in


Transaction reply, State Table or FIT Load messages.
2 SEND_TVN_MAC 0 Do not send the TVN and MAC data in Transaction
Request messages

1 Send the TVN and MAC data in Transaction Request


messages
8 CHECK_MACHINE_NO 0 Do not check the Security Terminal Number in Tran.
Reply messages

1 Check the Security Terminal Number in Tran. Reply


messages
9 MAC_FLD_SELECTED 0 The MAC calculation is performed on the whole message

1 The MAC calculation is performed on the fields that are


specified in the MAC field selection table downloaded
from host.
10 SEND_TVN_MAC_SOL 0 Do not send the TVN and MAC on solicited device status
messages

1 Send the TVN and MAC on solicited device status


messages
SEND_MACHINE_NO 0 Do not include the Security Terminal Number in terminal
(not configurable via to host messages
ProTopas/SOP-NDC 1 Include the Security Terminal Number in terminal to host
messages
MAC_ASCII 0 Calculate the MAC in EBCDIC
(not configurable via
ProTopas/SOP-NDC 1 Calculate the MAC in ASCII

222 November 2012


Security Features Message Authentication (MAC)

Security Terminal Number (Machine Number)

Message Authentication uses a six digit Security Terminal Number in the


messages which has to be included to build the MAC field.
The Security Terminal Number can be entered in the User Exit functions item
’Enter Machine no.’ of ProSop.
If you have configured the ProTopas/SOP-NDC, refer to the ProTopas/SOP-NDC
Operator Manual for details.

See also ProCash/NDC ProConsult/NDC Installation manual section


[HARDWARE_CONFIGURATION] about MACing activation.

MAC data field

There are two additional fields in the messages for message authentication.
The first field, the MAC data field, contains the result of a MAC calculation per-
formed on the message. This MAC calculation uses the MAC master key and
the DES algorithm to obtain its result. The MAC data field is calculated by per-
forming a MAC calculation on the message from the first field after the protocol-
dependent header (on a Transaction Reply command this is the Transaction
Reply command identifier) up to but not including the field separator preceding
the MAC data field. The MAC data field is always the last field of the message
preceding the end of text (ETX). The digits on which the MAC calculation is per-
formed are the same digits that appear on the communications line. For exam-
ple, if the protocol is IBM 3275 EBCDIC, the digits that are authenticated will be
EBCDIC; if the protocol is IBM 2265 ASCII, the digits will be ASCII.

Time variant number

If the message is a transaction request or Transaction Reply command, another


field, the time variant number, is also included in the message. The time variant
numbers are generated randomly by the terminal. If a terminal expects a MAC
in a message and does not receive it, the terminal will reject the message. On
the other hand, if a terminal does not expect a MAC but receives it, the terminal
operation is not guaranteed. Refer to section ”Messages” on page 227 for more
details on the messages.

November 2012 223


Message Authentication (MAC) Security Features

Typical Message Authentication Procedure

The following steps describe a typical message authentication procedure.


• If the terminal is sending a transaction request message, it first generates a
time variant number and inserts the number after the third field separator of
the message.
• The terminal performs a MAC calculation on the transaction request
message. The result of this calculation is placed at the end of the message
in the MAC data field.
• When the network receives the transaction request message, it performs a
MAC calculation on the message.
• The network compares the result of the MAC calculation with the data in the
MAC data field. If the two are the same, the network generates a Transaction
Reply command message instructing the terminal to perform the desired
transaction. If not, a Transaction Reply command message is sent directing
the customer to try another transaction.
• The network inserts the time variant number received in the transaction
request message into the Transaction Reply command message.
• The network performs a MAC calculation on the Transaction Reply
command message. The result of this calculation is placed at the end of the
message in the MAC data field.
• When the terminal receives the Transaction Reply command message, it
performs a MAC calculation on the message.
• The terminal compares the result of the MAC calculation with the data in the
MAC data field of the Transaction Reply command message. If the two are
the same, the terminal then continues to step 9. If not, the terminal sends a
command reject in a solicited status message.
• The terminal then compares the time variant number sent in the transaction
request message to the time variant number received in the Transaction
Reply command message. If the two are the same, the terminal services the
Transaction Reply command. If not, the terminal sends a command reject in
a solicited status message.

224 November 2012


Security Features Triple DES operation

MACing for State and FIT Table Load commands

For the State Table Load and FIT Table Load command messages, only the
MAC data field is used for message authentication. The network performs a
MAC calculation on the Load command message being sent and puts the result
in the MAC data field. When the terminal receives the message, it performs a
MAC calculation on the message. The terminal then compares the result of the
MAC calculation with the MAC data field. If the two are the same, the terminal
accepts the Load command message. If not, the terminal transmits a command
reject in the solicited status message.

Triple DES operation


Since release 1.2/10 ProCash/NDC is able to operate in triple DES mode. For
triple DES operation, following minimum conditions are required:
• The EPP hardware of the system must be able to operate with double
length triple DES keys (minimum firmware version 4.23).
• Triple DES mode has to be enabled in the installation dialog of
ProCash/NDC at the beginning of the installation process. Refer to
ProCash/NDC Installation manual for details about Triple DES
configuration.
• The host system must be able to download double length triple DES keys
to the terminal.
• Local security keys (Master-Key , COM-Key) have to be entered via
Triple DES key entering method.

EMV capability
Since release 1.3/00 ProCash/NDC supports transactions with EMV data.
Please refer to Wincor Nixdorf / Diebold D91x Message Format Extension for EMV
for detailed descriptions how to integrate EMV support.

November 2012 225


Remote Key Loading (RKL) capability Security Features

Remote Key Loading (RKL) capability


Since release 1.3/00 ProCash/NDC supports Remote Key Loading (RKL).
Please refer to Wincor Nixdorf / Diebold D91x Message Format Extension for RKL
for detailed descriptions how to integrate RKL.

Payment Card Industry (PCI) compliance


ProCash/NDC and ProCash/DDC follows the european PCI Data Security
Standard (DSS). The PCI DSS is a multifaceted security standard that includes
requirements for security management, policies, procedures, network archi-
tecture, software design and other critical protective measures. The application
hides security relevant user data (exp. track data, PIN data, etc.).

PCI PA DSS support and documentation

Please contact the international support refering to


ProCash/NDC and ProCash/DDC Payment Card Industry Payment Application -
Data Security Suite v1.2 Implementation Guide.

226 November 2012


Messages
This section describes the messages that make up the communications
interface between the Wincor Nixdorf terminals and the controlling network.
Unless otherwise indicated, information refers to all versions.
The terminal gathers all the necessary information for a transaction request.
Typically this information consists of the following:
• account card data including the Primary Account Number (PAN)
• the Personal Identification Number (PIN)
• various terminal keyboard inputs
figure 2: “Transaction message flow” on page 228 is an example of a typical
message exchange sequence.
The Transaction Request message is sent to the network.
The network responds to a Transaction Request message with a Transaction
Reply command message. The Transaction Reply command message tells the
terminal how to accomplish the requested transaction.
After the terminal completes the transaction with the customer, it sends a
solicited status message to the network.
The basic message formats used in the system are fixed. These formats contain
the necessary control characters to conform with most protocol formats. This
section shows the format for each message type used in the system. Messages
can travel either from the terminal to the network, or from the network to the
terminal.

Messages from Terminal to Network


The terminal transmits three message types.
• Solicited Status messages
• Unsolicited Status messages

September 2012 227


Messages from Terminal to Network Messages

• Transaction Request messages


figure 2: Transaction message flow

TERMINAL NETWORK
Consumer enters
card and PIN

Consumer enters Transaction Request message Make decision to allow


request data; terminal or disallow transaction
formats request

Complete transaction Transaction Reply message


as directed; format
status message

Solicited Status message


Record completed
transaction

The following subsections illustrate these messages in tabular form. The notes
in the following table apply to all tables.
table 59: Code conventions

Code Description
Symbols
X This symbol indicates that the terminal ignores the data. The
data for this code must be a valid character as described in this
manual. An example of an invalid Wincor Nixdorf terminal
character for this code is a zero (hex 00).
--- Three dashes indicate that the field data is dependent on the
specific transaction performed and the valid entries for the field.
Refer to the field descriptions in this manual.
: The colon symbol indicates that the following two digits are a
hexadecimal number.
‘ ‘ Single quotation marks indicate that the characters enclosed
within them are graphic characters from an ASCII or EBCDIC
code set.

228 September 2012


Messages Messages from Terminal to Network

[ ] Brackets indicate that the field is optional. The field can be


deleted completely from the message without affecting the
format or meaning of the message. The data for this code must
be a valid character as described in this manual. An example of
an invalid Wincor Nixdorf terminal character for this code is a
zero (hex 00). It will be skipped by the emulation.
VAR VAR indicates that the length of the field is variable. Numeric
(Numeric) parenthetic expressions following VAR show the maximum
number of characters allowed in the field.

figure 3: Terminal to network messages

Terminal to network messages

Solicited Status

Unsolicited Status
TERMINAL HOST
Transaction Request

September 2012 229


Messages from Terminal to Network Messages

Transaction Request message

This message contains data which the network needs to authorize a customer
transaction at the terminal. The maximum length of this message is 2000
characters (bytes). The network answers a Transaction Request with a
Transaction Reply command to the terminal. The following table shows the data
fields and sequence of fields for a Transaction Request message.
table 60: Transaction Request message

Description Code No. of Characters


solicited/unsolicited ID ’1’ 1
message identifier ’1’ 1
field separator (FS) :1C 1
logical unit number (LUNO) --- 3 or 9
field separator (FS) :1C 1
field separator (FS) :1C 1
time variant number [---] 8
field separator (FS) :1C 1
top-of-form flag --- 1
message coordination number --- 1
field separator (FS) :1C 1
track 2 data [VAR] Var (40 max)
field separator (FS) :1C 1
track 3 data [VAR] Var (106 max)
field separator (FS) :1C 1
operation code buffer [---] 0 or 8
field separator (FS) :1C 1
whole-amount/cents keyboard entry [---] 0, 8 or 12
field separator (FS) :1C 1
PIN buffer (Buffer A) [VAR] Var (16 max)
field separator (FS) :1C 1
general purpose buffer B [VAR] Var (32 max)
field separator (FS) :1C 1

230 September 2012


Messages Messages from Terminal to Network

Description Code No. of Characters


general purpose buffer C [VAR] Var (32 max)
field separator (FS) [:1C] 1
track 1 data buffer (1) identifier [1] 1
track 1 data buffer [VAR] Var (79 max)
field separator (FS) [:1C] 1 [1]
Transaction status identifier [2] 1 [1]
Last transaction status data [VAR] 25 [1]
field separator (FS) [:1C] 1
CSP data ID ’U’ [:1C] 1
CSP data [VAR] Var (16 max)
field separator (FS) [:1C] 1
confirmation CSP data ID ’V’ [:1C] 1
confirmation CSP data [VAR] Var (16 max)
field separator (FS) [:1C] 1 [2]
MAC data [---] 8 [2]
[1] These bytes are only sent if the download option is selected in the „Enhanced
Configuration Parameters“ load message.

[2] These bytes are only sent if MACing is used

The following paragraphs describe the fields in the Transaction Request


message.

Solicited/unsolicited message field


Field size: 1 character
Valid range: 1-2
Description: This field tells the network whether the message is solicited or un-
solicited. The valid entries for this field are as follows:

1 - unsolicited message
2 - solicited message

In case of a Transaction Request message, this field will be 1.

September 2012 231


Messages from Terminal to Network Messages

Message identifier field


Field size: 1 character
Valid range: 1
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Transaction Request
message is 1.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number used for MACing. See section
”Message Authentication (MAC)” on page 221 for further informa-
tion.

Time variant number


Field size: 8 characters
Valid range: See description
Description: This is an eight-character field, containing hexadecimal charac-
ters, randomly generated by the ATM.
See chapter ”Security Features” from page 197 for further infor-
mation.

232 September 2012


Messages Messages from Terminal to Network

Top-of-form (TOF) flag


Field size: 1 character
Valid range: 0-1
Description: This data field informs the network if this transaction is printing at
the top of the transaction record form. The valid values are as fol-
lows:

0 - not printing this transaction at the top of the transaction


record form.
1 - printing transaction at the top of the transaction record
form.

Message coordination number


Field size: 1 character
Valid range: ASCII 31-3F (or extended range 31-7E)
Description: This is a character assigned by the terminal to each transaction
request message. The terminal assigns a different coordination
number to each successive transaction request on a rotating ba-
sis. The valid range for the coordination numbers is graphic ‘1’
through ‘9’, ‘:’, I ;’, <" =, , ‘>‘, and ‘?’ (ASCII 31 through 3F). If the
extended range for the message coordination number field is en-
abled (Enhanced Configuration Parameters Load message), the
valid range is ASCII 31 trough 7E. The host or controller must in-
clude the corresponding coordination number when responding
with a transaction reply message. If the coordination numbers do
not match, the terminal sends a solicited status message with a
command reject status.

Track 2 data field


Field size: Variable
Valid range: See description
Description: This variable length data field contains up to 40 characters of data
from track 2 of the magnetic stripe on the customer’s account
card. This field includes the data from the start sentinel to the end
sentinel inclusive.

September 2012 233


Messages from Terminal to Network Messages

Track 3 data field


Field size: Variable
Valid range: See description
Description: This is variable length field contains up to 106 characters of data
from track 3 of the magnetic stripe. This field includes the data
from the start sentinel to the end sentinel inclusive.

Operation code buffer


Field size: 0 or 8 characters
Valid range: See description
Description: The operation code buffer field contains the data collected in the
operation code buffer as a result of function display keys (FDK’s)
pressed. States D, E and Y determines the contents of this field,
which identifies the transaction selected by the consumer. The
field can be either zero or eight characters long.

The Preset Operation Code state can clear and preset any of the
positions in the operation code buffer. State E or Y determine in
which position and how many graphics are stored in the operation
code buffer when an FDK is pressed.

For detailed descriptions refer to following sections:

“Pre-Set Operation Code Buffer State (D)” on page 82


“Four FDK Selection Function State (E)” on page 88
“Eight FDK Selection State (Y)” on page 147

234 September 2012


Messages Messages from Terminal to Network

Whole-amount and Cents keyboard entry field


Field size: 0 or 8, 0 or 12
Valid range: See description
Description: If the amount buffer size feature is not selected, the whole-amount
and Cents keyboard entries field can be either zero or eight char-
acters long. If the amount buffer size feature is selected, this field
can be either zero or twelve characters long. This field identifies
the whole-amount and cent amount entered at the keyboard. The
content of this field is determined by the Amount Entry state. The
data is right-aligned with zeros to fill unused positions on the left.

PIN buffer
Field size: 0 or up to 16 characters
Valid range: See description
Description: The variable-length PIN buffer field will contain either no charac-
ters (if local PIN check is used) or the 16-character encrypted or
decrypted PIN (if remote PIN check is used). The PIN buffer is
also known as general purpose buffer A.

General purpose buffer B


Field size: Up to 32 characters
Valid range: See description
Description: The contents of the variable-length general purpose buffer B field
depend on whether the consumer message is being sent in re-
sponse to an interactive transaction screen.
If it is not being sent in response to an interactive transaction
screen, this field only contains up to 32 digits that were entered by
the customer.
If it is being sent in response to an interactive transaction screen,
this field contains up to 32 digits that were entered by the custom-
er, and, if less than 32 digits were entered, this field also contains
the character representing the operation key pressed or a time-
out (A, B, C, D, E (cancel) or T (time-out)).

September 2012 235


Messages from Terminal to Network Messages

General purpose buffer C


Field size: Up to 32 characters
Valid range: See description
Description: The variable-length general purpose buffer C field contains up to
32 digits that were entered by the customer, if so selected by the
information entry state.

Track 1 data buffer identifier (1)


Field size: 1 character
Valid range: 1
Description: This one-character field identifies the data that follows in the next
field as track 1 data.

Track 1 data field


Field size: Variable (79 maximum)
Valid range: See description
Description: This variable-length field contains up to 79 characters of data from
the track 1 magnetic stripe. This field includes the data from the
start sentinel to the end sentinel inclusive.

Transaction status data identifier


Field size: 1
Valid range: 2
Description: Identifies the following data in the next fields as Transaction status
data of the previous transaction.

236 September 2012


Messages Messages from Terminal to Network

Last transaction status data


Field size: 25
Valid range: See description
Description: Contains status data relating to the previous transaction per-
formed by the terminal.

It contains the following data:


•Last transaction serial number - 4 bytes
Contains the four-digit serial number of the last transaction
processed by the terminal.
•Last status issued - 1 byte
Contains one byte identifying what the last known
status message sent from the terminal was.
The field can contain the following values:
’0’ - none sent
’1’ - good termination sent
’2’ - error status sent
’3’ - transaction reply rejected
•Last transaction notes dispensed - 20 bytes
Contains four five-digit decimal counts defining the
notes dispensed on the last transaction.
The following fields are included only if a coin dispenser module
is installed:
•Last transaction coinage amount dispensed. It is included
for migration purposes for Central Applications which
support third generation coinage dispensing.
It is set to ‘00000’.
•Last transaction coins dispensed contains four five-digit
decimal counts defining the coins dispensed from each
hopper on the last dispense transaction. These will be zero
if the last function command was not a coin dispense type
function or if this is the first transaction from a ‘cold’ start.

September 2012 237


Messages from Terminal to Network Messages

CSP data ID ’U’


Field size: 1 character
Valid range: ’U’
Description: The value ’U’ in this field identifies the following field as the first
Customer selected PIN data. If this field is selected in the transac-
tion request state table and no CSP has been requested only this
field will be present.

CSP data
Field size: 16 characters
Valid range: See description
Description: This field contains an encrypted 16 character PIN.

Confirm CSP data ID ’V’


Field size: 1 character
Valid range: ’V’
Description: Confirmation CSP data ID ’V’ is the field that identifies the follow-
ing field as the second Customer selected PIN data. If this field is
selected in the transaction request state table and no CSP has
been requested only this field will be present. If the CSP state in-
dicates that loacal verification of the two CSP’s is to be carried out
only the identifier will be sent if requested by the transaction re-
quest state.

Confirmation CSP data


Field size: 16 characters
Valid range: See description
Description: Confirmation CSP data. This field contains an encrypted 16 char-
acter PIN.

238 September 2012


Messages Messages from Terminal to Network

MAC data field


Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the transaction request mes-
sage. See the section ”Message Authentication (MAC)” on page
221 for additional details.

September 2012 239


Messages from Terminal to Network Messages

Solicited Status messages

Solicited Status messages are sent from the terminal as the response to
command messages received from the network. The maximum length of this
message is 256 characters. The network expects a reply concerning the results
of the last function performed through a Solicited Status message. If an error is
detected during the last function performed, error status data pertaining to the
terminal is inserted into the status message. If the functions are performed as
commanded, a ready status indicator is inserted into the status message. The
following tables list the data field associated with the Solicited Status message
and shows field positions.
The following table contains the fields of the solicited status message:
table 61: Solicited Status message

Description Code No. of Characters


solicited/unsolicited ID ‘2’ 1
message identifier ‘2’ 1
field separator (FS) :1C 1
logical unit number (LUNO) --- 3 or 9
field separator (FS) :1C 1
field separator (FS) :1C 1
status descriptor --- 1
field separator (FS) [:1C] 1
status information [---] VAR
field separator (FS) [:1C] 1 [1]
MAC data field [---] 8 [1]
[1] These bytes are only sent if MACing is activated for the solicited message.

240 September 2012


Messages Messages from Terminal to Network

The following paragraphs describe the fields for the solicited status message.

Solicited/unsolicited message field


Field size: 1 character
Valid range: 1-2
Description: This field tells the network whether the message is solicited or un-
solicited. The valid entries for this field are as follows:

1 - unsolicited message
2 - solicited message

In the case of the solicited status message, this field will be 2.

Message identifier field


Field size: 1 character
Valid range: 2
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Solicited Status message
is 2.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See chapter ”Security Features”
from page 197 for additional details.

September 2012 241


Messages from Terminal to Network Messages

Status descriptor
Field size: 1 character
Valid range: See description
Description: This one-character field describes the terminal status as it re-
sponded to the command. The valid values are as follows:

‘8’ - device fault or configuration information. This character indi-


cates a terminal device is reporting an abnormal status or that
configuration information follows.
‘9’ - ready. This character indicates the successful completion of
either a terminal command or a Transaction Reply command
when the separate ready for Transaction Reply command is not
selected.
‘A’ - general command reject. This character indicates the unsuc-
cessful completion of either an terminal command or a Transac-
tion Reply command. For example, a graphic ‘A’ can be inserted
into the status descriptor if the terminal receives any of the follow-
ing:
- an illegal command
- illegal data from the network
- configuration data while “In Service” mode
Some additional general command reject conditions are listed in
section ”Specific Command Reject Conditions” on page 302.

‘B’ - ready. When separate ready for Transaction Reply com-


mands is selected, this character indicates successful completion
of the Transaction Reply command.
‘C’ - specific command reject. The terminal sends this character if
the specific command reject option is enabled. This character in-
dicates the unsuccessful completion of a message because of a
message authentication code (MAC) failure or a time variant
number failure, Message Format or Field errors. The terminal can
send this character in response to any of the following messages:
- a Transaction Reply command message
- a State Tables Load command message
- a FIT Data Load command message
‘F’ - Terminal State. This is sent in response to terminal com-
mands requesting Tallies, Logs, Supply Counters or terminal con-
figuration information.

242 September 2012


Messages Messages from Terminal to Network

Status information (status descriptor ‘F’ - Terminal State)


Field size: VAR
Valid range: See description
Description: The status information will vary according to which of the following
terminal commands has been received by the terminal:
•send configuration information

•send supply counters


•send error log information
•send date/time information
•send configuration ID
•send Software ID and release number
See section ”Solicited Status (terminal state)” on page 326 for de-
tailed description of status information.

September 2012 243


Messages from Terminal to Network Messages

Status information (status descriptor ‘8’ - Device Fault)


Field size: 1 character
Valid range: See description
Description: If the status descriptor = ’8’, this field identifies device reporting
abnormal status of following devices:
‘D’- card reader/writer
‘E’- cash dispenser
‘F’- deposit
’G’- receipt printer
’H’- journal printer
‘V’- statement printer
’\’- envelope dispenser
’Y’- coin dispenser

See section ”Solicited Status (device fault)” on page 361 for de-
tailed description of status information.

MAC data field


Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the transaction request mes-
sage. See the section ”Message Authentication (MAC)” on page
221 for additional details.

244 September 2012


Messages Messages from Terminal to Network

Unsolicited Status messages

This message is transmitted to the network when a change of status occurs at


the terminal. Maximum length is 256 characters.
The following table contains the status fields of unsolicited messages:
table 62: Unsolicited Status message

Description Code No. of Characters


solicited/unsolicited ID ‘1’ 1
message identifier ‘2’ 1
field separator (FS) :1C 1
logical unit number (LUNO) --- 3 or 9
field separator (FS) :1C 1
field separator (FS) :1C 1
status information --- VAR

The following paragraphs describe the fields in the unsolicited status message.

Solicited/unsolicited message field


Field size: 1 character
Valid range: 1-2
Description: This field tells the network whether the message is solicited or un-
solicited. The valid entries for this field are as follows:

1 - unsolicited message
2 - solicited message

In the case of the Unsolicited Status message, this field will be 1.

September 2012 245


Messages from Terminal to Network Messages

Message identifier field


Field size: 1 character
Valid range: 2
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the unsolicited status mes-
sage is 2.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See chapter ”Security Features”
from page 197 for additional details.

Status information
Field size: Variable
Valid range: See description
Description: This field contains the device identifier and device status informa-
tion. For details of this field, refer to section ”Unsolicited Device
Status” on page 369 of NDC device status.

246 September 2012


Messages Network to Terminal messages

Network to Terminal messages


There are three basic message types transmitted from the network to the
terminal.
1. Transaction Reply command (message ID ‘4’)
2. Terminal command (message ID ‘1’)
3. Load command (message ID ’3’)

See the following figure for an overview.


There are several download commands used in communications between
network and terminal. States, Screens, FIT’s, and terminal configuration data
download commands are part of configuration data during terminal startup.
Load commands can be sent as interactive transaction responses that are used
during system operation to satisfy transaction requests. Encryption Key Load
commands are used during terminal startup (or for dynamic key exchange used
by some customers) to load new encryption keys. The Configuration ID Number
Load command is used to change the configuration ID after terminal startup and
whenever new configuration data is sent to the terminal.
figure 4: Network to terminal commands

Network to terminal messages

Load commands

Transaction Reply commands


TERMINAL HOST
Terminal commands

September 2012 247


Network to Terminal messages Messages

Transaction Reply command (message ID ‘4’)

The Transaction Reply command message is sent to the terminal in response


to a Transaction Request message. Two conditions must be fullfilled for the
transmission of the Transaction Reply command message to the terminal.
• The customer has entered all the required data for a specific transaction
request.
• The request has been sent to the network.
The Transaction Reply command acts as an authorization to the terminal to
complete the transaction. The Transaction Reply command message is
restricted to a length of 2000 characters.
It is prohibited to transmit a Transaction Reply command message without the
end of text character. table 63: “Transaction Reply command message” on
page 248 lists the fields of the Transaction Reply command message.
The paragraphs following the tables describe the fields in the Transaction Reply
command message.
table 63: Transaction Reply command message

Description Code No. of Characters


Transaction Reply command identifier ‘4’ 1
response flag [X] 1
field separator (FS) :1C 1
logical unit number (LUNO) [X] 3
field separator (FS) :1C 1
message sequence number [X] 3[1]
field separator (FS) :1C 1
next state ID (000-254, 256-999, A00-ZZZ) [---] 3
field separator (FS) :1C 1
number of bills to dispense [---] VAR
group separator (GS) [:1D] 1
number of coins to dispense [---] VAR
field separator (FS) :1C 1
transaction serial number --- 4
function identifier --- 1

248 September 2012


Messages Network to Terminal messages

Description Code No. of Characters


screen number (010-999) [---] 3
screen display update data [---] VAR
field separator (FS) :1C 1
message coordination number --- 1
card return/retain flag --- 1
printer flag (0 - 4) (8) (=) --- 1
printer data --- VAR (580 max)
group separator (GS) [:1D] 1
printer flag (0 - 4) [---] 1
printer data [---] VAR
group separator (GS) [:1D] 1
printer flag (0 - 4) [---] 1
printer data [---] VAR
group separator (GS) [2] [:1D] 1
printer flag (0 - 4) [2] [---] 1
[2]
printer data [---] VAR
field separator (FS) :1C 1
buffer identifier (4) [‘4’] 1
track 3 data [---] VAR (106 max)
field separator (FS) :1C 1
buffer identifier (E) [‘E’] not supported
document destination [---] not supported
lift front/rear image(s) [---] not supported
archive lifted front/rear image(s) [---] not supported
lift zones in image list [---] not supported
archive lifted image list zones [---] not supported
check magnetism [---] not supported
check zone verification [---] not supported
report candidates/identify [---] not supported

September 2012 249


Network to Terminal messages Messages

Description Code No. of Characters


document entry retries [---] not supported
field separator (FS) [:1C] 1 [3]
buffer identifier (F) [‘F’] not supported
document enable code [---] not supported
group separator (GS) [:1D] not supported
document name [---] not supported
track 1 buffer identifier (K) ’K’ 1
track 1 data [---] VAR (max 78)
track 2 buffer identifier (L) ’L’ 1
track 2 data [---] VAR (max 39)
field separator (FS) [:1C] 1 [3]
MAC data [---] 8 [3]
[1] If message authentication is used, the three-byte message sequence number is
replaced by an eight-byte time variant number, and the optional field separator and
MAC data are included in the message.
[2] This fields can be repeated up to nine further times.
[3] This group of fields (FS/MAC Data) is used only when MAC is configured. The following
paragraphs describe the fields in the State Table Load command message.

The following paragraphs describe the fields in the Transaction Reply command
message.

Message identifier field


Field size: 1 character
Valid range: 4
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Transaction Reply com-
mand message is 4.

250 September 2012


Messages Network to Terminal messages

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).
If the terminal uses MACing, this field is replaced by an eight-byte
Time Variant Number. See chapter ”Security Features” from
page 197 for details.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See chapter ”Security Features”
from page 197 for additional details.

Next state ID data field


Field size: 3 characters
Valid range: 000-511
Description: This three-character data field contains a decimal number from
000 to 511 in three bytes of graphic code. This field defines the
state number which the terminal should execute after the normal
completion of the specified Transaction Reply command.

Number of bills to dispense


Field size: Variable
Valid range: See description
Description: This field contains the two digit number of bills to dispense for log-
ical cassette type 1 through 4.

If the number of bills requested by the host are higher than the cash
dispenser is able to dispense in one bundle, the terminal responds
with a command reject or a specific command reject.

September 2012 251


Network to Terminal messages Messages

Number of coins to dispense


Field size: Variable
Valid range: See description
Description: This field contains the two digit number of coins to dispense for
coin hopper 1 through 4. Valid range is 00-50 for each hopper.

Transaction serial number


Field size: 4 characters
Valid range: 0000-9999
Description: The transaction serial number data is four characters of graphic
code which identify the transaction to the network. This number
originates at the network when a transaction request message is
received. The depository printer prints this number on the deposit
envelope.

Function identifier field


Field size: 1 character
Valid range: See description
Description: The contents of this one-character data field instruct the terminal
as to what functions it is to perform. The valid characters are listed
as follows:

Function ID Short description of the function


’1’ or ‘7’ instructs a deposit + print
’2’ or ‘8’ instructs a dispense + print
’3’ or ‘9’ instructs a display + print
‘4’ instructs a print immediate. A graphic ‘4’ instructs the
terminal to print the information sent down-line to the
terminal. This function ID is often used when the operator
requests to balance the terminal.
‘5’ instructs a set next state + print. A graphic ‘5’ instructs the
terminal to print the information sent down-line to the
terminal; the terminal proceeds to the next state defined in
the Transaction Reply command. This function ID is often
used when the consumer requests an inquiry, when a
transaction is disallowed, or for any print operation.
‘6’ Night safe deposit and print

252 September 2012


Messages Network to Terminal messages

‘A’ eject card and dispense and print (card before cash)
‘F’ card before parallel dispense and print
‘P’ instructs a print statement and wait
‘B’ or ‘C’ parallel dispense and print and card eject
‘Q’ Print statement and next state

Screen number
Field size: 3 characters
Valid range: 000-999
Description: This field contains either a three-digit decimal value from010 to
999, or a five-character value containing a four-digit screen
number prefixed with the letter ’u’ or ’l’. The screen number de-
fines the screen to be displayed on the terminal during execution
of the specified function. To select a screen from the current lan-
guage group, use either group ’l’ or a three-digit screen number.
To select a screen independently of language group, use group
’u’.

Screen display update


Field size: Variable
Valid range: See description
Description: This variable-length field contains screen numbers and new
screen data which can replace existing screen data. The new
screen data can be displayed when this screen number is refer-
enced during transaction processing.
The screen update data have the following format:

No. of Bytes Content


3 screen number
VAR screen data
1[1] group separator
4[1] reserved field (should be 4 spaces)
[1]
3 screen number
[1]
VAR screen data
[1] These fields are repeated if multiple screens are updated within one reply message.

September 2012 253


Network to Terminal messages Messages

Message coordination number


Field size: 1 character
Valid range: ASCII 31-3F (or extended range 31-7E)
Description: This is a character assigned by the terminal to each transaction
request message. The terminal assigns a different coordination
number to each successive transaction request on a rotating ba-
sis. The valid range for the coordination numbers is graphic ‘1’
through ‘9’, ‘:’, I ;’, <" =, , ‘>‘, and ‘?’ (ASCII 31 through 3F). If the
extended range for the message coordination number field is en-
abled (Enhanced Configuration Parameters Load message), the
valid range is ASCII 31 trough 7E. The host or controller must in-
clude the corresponding coordination number when responding
with a transaction reply message. If the coordination numbers do
not match, the terminal sends a solicited status message with a
command reject status.
A graphic ‘0’ overrides the message coordination number. As a result,
the terminal cannot verify that the transaction authorization corre-
sponds to the last consumer message.

Card return/retain flag field


Field size: 1 character
Valid range: 0-1
Description: This one-character field instructs the terminal to either return or
retain the customer’s account card during the close state. The val-
id values are as follows:

‘0’ - return card


‘1’ - retain card

254 September 2012


Messages Network to Terminal messages

Printer flag field


Field size: 1 character
Valid range: 0-4; 8; =
Description: This one-character field tells the terminal which printer or printers
to use. The valid graphic characters for this field are as follows:

‘0’ - do not print


‘1’ - print on journal printer only
‘2’ - print on customer printer only
‘3’ - print on both printers
‘4’ - print on deposit if function ID is ‘1’ or ‘7’.
’8’ - print on statement printer only
’=’ - print on receipt printer in landscape mode

Printer data field


Field size: Variable (580 characters maximum)
Valid range: See description
Description: This is a variable-length data field with a maximum of 580 charac-
ters. Inserted data is printed by the printer indicated in the printer
flag field.

Track 3 buffer identifier


Field size: 1 character
Valid range: ’4’
Description: This one-character track 3 buffer identifier field tells the terminal
that track 3 data follows in the buffer data field.

Track 3 data
Field size: Variable (106 characters maximum)
Valid range: See description
Description: This field contains the data to be written onto track 3 as instructed
by a Transaction Reply command. This data replaces any data
previously located in the track 3 buffer of the terminal. The track 3
data consists of up to 106 characters including the start and end
sentinels.

September 2012 255


Network to Terminal messages Messages

Track 1 buffer identifier


Field size: 1 character
Valid range: ’K’
Description: This one-character buffer identifier field tells the terminal that track
1 data follows in the buffer data field.

Track 1 data
Field size: Variable (78 characters maximum)
Valid range: See description
Description: This field contains the data to be written to track 1. This data re-
places any data previously located in the track 1 buffer of the ter-
minal. The track 1 data consists of up to 78 characters including
the start and end sentinels.

Track 2 buffer identifier


Field size: 1 character
Valid range: ’L’
Description: This one-character buffer identifier field tells the terminal that track
2 data follows in the buffer data field.

Track 2 data
Field size: Variable (39 characters maximum)
Valid range: See description
Description: This field contains the data to be written to track 2. This data re-
places any data previously located in the track 2 buffer of the ter-
minal. The track 2 data consists of up to 39 characters including
the start and end sentinels.

MAC data field


Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the transaction request mes-
sage. See chapter ”Security Features” from page 197 for addi-
tional details.

256 September 2012


Messages Network to Terminal messages

Terminal Command message

This message is transmitted by the network to startup or shutdown the terminal,


or to request a configuration ID. table 64: “Terminal Command message” on
page 258 shows the format of the Terminal Command message. The following
paragraphs describe each Terminal Command message type.

Startup
When the terminal is powered on the first time, all configuration data from the
host must be downloaded to the terminal. This requires a startup sequence that
loads the ProCash/NDC or ProConsult/NDC frameworks with a predefined
configuration from the WIN-NT Registry. In the next step the terminal is ready
to receive download commands from the host.
The startup command can also put the terminal into service after shutdown or
exit from maintenance mode.

Shutdown
This is an Terminal Command message from the network that places the
terminal temporarily out-of-service. All pending messages are sent and current
transactions completed, before the terminal executes the shutdown. The
terminal then indicates that it has successfully completed the shutdown proce-
dures by sending a ready status in a solicited status message.

Configuration information request


This Terminal Command message requests the terminal to send a solicited
status message containing configuration information.

September 2012 257


Network to Terminal messages Messages

The following table shows the fields of the Terminal Command message:
table 64: Terminal Command message

Description Code No. of Characters


Terminal Command identifier ‘1’ 1
response flag [X] 1
field separator (FS) :1C 1
logical unit number (LUNO) [X] 3
field separator (FS) :1C 1
message sequence number [X] 3
field separator (FS) :1C 1
command code --- 1

The following paragraphs describe the fields in the Terminal Command


message.

Message identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field defines the type of message being
transmitted. The only valid value for Terminal Command messag-
es is 1.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

258 September 2012


Messages Network to Terminal messages

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The Message Sequence Number field is part of the logical proto-
col in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).
If the terminal uses MACing, this field is replaced by an eight-byte
Time Variant Number. See chapter ”Security Features” from
page 197 for details.
The Message sequence number is ignored by ProCash/NDC and
ProConsult/NDC.

Command code
Field size: 1 character
Valid range: See description
Description: This one-character field is used to identify the type of command.
The valid values for this field are as follows:

‘1’ - Go in service to customers (startup).


‘2’ - Go out-of-service to customers (shutdown).
This code optionally contains a one digit modifier. This modifier
specifies what OOS screen has to be displayed when the terminal
goes out of service. If no modifier is included, the default Tempo-
rary Out-of-Service screen (C06) is displayed.
The defined values for the modifier are:
‘0’ - display Out-of-Service screen (C02)
‘1’ - display Temporary Out-of-Service screen (C06)
’3’ - Send Configuration ID.
The host requests the configuration ID number. The ATM re-
sponds with a Terminal State message (Status Descriptor ‘F’,
Message Identifier ‘6’). See section ”Configuration ID Load” on
page 291 and section ”Send Configuration ID” on page 345.
‘4’ - Send Supply Counters.
The host requests the Supply counters. The ATM responds with a
Terminal State message (Status Descriptor ‘F’, Message Identifi-
er ‘2’). See also section ”Solicited Status (terminal state)” on page
326.
’5’ - Send Tally Information (not supported)

September 2012 259


Network to Terminal messages Messages

‘6’ - Send Error Log Information.


The Send Error Log command asks the terminal to send the error
log information for the device groups specified by the Device Iden-
tifier. (Status Descriptor ‘F’, Message Identifier ‘4’). See also sec-
tion ”Solicited Status (terminal state)” on page 326.
‘7’ - Send Configuration Information.
The host requests Configuration ID, Hardware Status, and Sensor
Status. The ATM responds with a Terminal State message (Sta-
tus Descriptor ‘F’, Message Identifier ‘1’). See also section ”Solic-
ited Status (terminal state)” on page 326.
‘8’ - Send Date and Time information (Status Descriptor ‘F’, Mes-
sage Identifier ‘5’), see section ”Solicited Status (terminal state)”
on page 326.

Command modifier
Field size: 1 character
Valid range: See description
Description: This field must be present for command code ’6’. For command
code ’7’ this field is optional.
Error Log Information (Command code ’6’)
Modifier Description
’A’ Processor and system
’B’ High order communications
’C’ SST devices
NOTE: In ProCash/NDC or ProConsult/NDC the solicited status response for
modifier ’A’ and ’B’ is the same as for modifier ’C’.
Configuration Information (Command code ’7’)
Modifier Description
’1’ Send hardware configuration only
’2’ Send supplies data only
’3’ Send fitness data only
’4’ Send tamper and sensor status data only
’5’ Send software ID and release number data only
’6’ Send enhanced configuration data
’7’ Send local configuration option digits

260 September 2012


Messages Network to Terminal messages

State Tables Load

This type of message is used to load state tables to the terminal. The maximum
message length for this command is 2000 characters. Each message contains
a portion of the state tables. The following paragraphs describe the fields that
can be included in the State Tables Load command message.
table 65: State Tables Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ‘1’ 1
Modifier (states) ‘2’ 1
Field separator (FS) [:1C] 1
State number --- 3
State data --- 25
Field separator (FS) [:1C] 1 [1]
State number [---] 3 [1]
State data [---] 25 [1]
Field separator (FS) [:1C] 1 [2]
MAC data 8 [2]
[1] This group of fields (FS/state number/state data) can be repeated, as necessary, to a
maximum of 600 bytes per State Tables Load command message.
[2] This group of fields (FS/MAC Data) is used only when MAC is configured. The following
paragraphs describe the fields in the State Tables Load command message.

September 2012 261


Network to Terminal messages Messages

The following paragraphs describe the fields in the State Tables Load command
message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for a download command mes-
sage is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

262 September 2012


Messages Network to Terminal messages

Modifier field
Field size: 1 character
Valid range: 2
Description: This one-character field identifies the configuration data to follow
as state table data. The valid value is ‘2’.

State number
Field size: 3 characters
Valid range: 000-254, 256-999, A00-ZZZ
Description: This is a three-character field from 000 to 254, 256-999, A00-ZZZ.
It identifies the state number for the state data that follows.

State data
Field size: Variable
Valid range: See description
Description: The first entry identifies the state type. The rest of the characters
are associated state data.

State number, state data, and field separator fields can be repeated
as required to a maximum of 2000 bytes (total message length).

MAC data field


Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the transaction request mes-
sage. See section ”Message Authentication (MAC)” on page 221
for additional details.

September 2012 263


Network to Terminal messages Messages

Screen Data Load

This type of message is used to download screen configuration data to the


terminal where the data are stored in the WIN-NT registry sub section
“..\LYNXCI\SCREEN”.
table 66: Screen Data Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ’1’ 1
Modifier (screens) ‘1’ 1
Field separator (FS) :1C 1[1]
Screen number --- 3[1]
Screen data --- VAR[1]
[1] This group of fields can be repeated, as required, to a maximum of 2000 bytes per
Screen Data Load command message.

264 September 2012


Messages Network to Terminal messages

The following paragraphs describe the fields in the Screen Data Load command
message.

Load Command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Screen Data Load com-
mand message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

September 2012 265


Network to Terminal messages Messages

Modifier field
Field size: 1 character
Valid range: 1
Description: This one-character field identifies the configuration data to follow
as screen data. The valid value is ‘1’.

Screen number
Field size: 3 characters
Valid range: 000-999
Description: This is a three, or four-character field that identifies the screen
number for the screen data that follows. Screen numbers can be
specified as three decimal digits (123), four decimal digits in dou-
ble quotes (“0123“), a group letter and two digits or a group letter
and four digits. The groups with four digit numbers are ‘E’, ‘X’, ‘Y’,
‘Z’ and ‘u’. A screen defined in group ‘l’ is also accepted, mapping
directly onto group ‘u’ (l0123 is equivalent to u0123).

Screen data
Field size: Variable
Valid range: See description
Description: The variable-length screen data field represents the data to be
shown on the screen. This field always follows a screen number
entry.
Screen numbers, screen data, and field separator fields can be
repeated as required to a maximum of 2000 bytes (total message
length).

266 September 2012


Messages Network to Terminal messages

Configuration Parameters Load

The Configuration Parameters Load command message configures terminal


parameters, the LUNO and terminal timers. The format of the Configuration
Parameters Load message is shown in table 67: “Configuration Parameters
Load” on page 267. This message down-line loads the logical unit number
(LUNO), parameters and timers into the WIN-NT Registry. This configuration
message should be used first after a power-up because it defines the LUNO
and communications timers.
The following table contains field definitions of the Configuration Parameters
Load command message:
table 67: Configuration Parameters Load

Description Code No. of Characters


Load Command Identifier ‘3’ 1
Response Flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ‘1’ 1
Modifier (parameters+LUNO+timers) ‘3’ 1
Field separator (FS) :1C 1
Camera control X 1 (not supported)
Card reader error threshold --- 3
Reserved ’000’ 3
Reserved ’000’ 3
Track 3 write error threshold X 3 (not supported)
Optional parameters --- 3
Reserved ‘000’ 3
Reserved ’000’ 3
Reserved ’000’ 3
Field separator (FS) :1C 1

September 2012 267


Network to Terminal messages Messages

Description Code No. of Characters


Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Timer number --- 2
Number of ticks --- 3
Timer number [---] 2[1]
Number of ticks [---] 3[1]
[1] This field can be repeated with the number of timers that are requested to be loaded.

The following paragraphs describe the fields in the Configuration Parameters


Load message.

Load Command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Configuration Parameters
Load command message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

268 September 2012


Messages Network to Terminal messages

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

Modifier field
Field size: 1 character
Valid range: 3
Description: This one-character field identifies the configuration data to follow
as LUNO, parameters and timer data. The valid value is ‘3’.

Optional Parameters
Field size: 3 characters
Valid range: 000-255
Description: The value in the optional parameters field is the sum of the
weights of the selected features.
Weight Features
’008’ 12 digit amount buffer size
’002’ automatic return to previous mode
’001’ separate ready (’B’) response to transaction reply

September 2012 269


Network to Terminal messages Messages

Timer number
Field size: 2 characters
Valid range: 00-20
Description: This two character field contains the timer number. See section
”Timer Data” on page 188 for details on timers. The valid values
are as follows:
00 keyboard response time-out interval
01 consumer response extension time-out interval
02 close state screen time-out interval
03 communication message time-out interval
04 envelope insertion time-out interval (depositor)
05 withdrawal time-out interval
06 communications off-line time-out interval
07 withdrawal shutter open time-out interval
08 not used
09 consumer time-out interval before card capture attempt
10 additional cash present time-out interval
11 vandal shield timer
82-83 not used
86 rear settlement time-out interval
87 not used
88-90 reserved
91-93 not used
94 envelope eject time-out interval
95 Statement retract time-out interval
96 Statement present time-out interval
97 vestibule door open time-out interval
98 reserved
99 vandal close timer

Number of ticks
Field size: 3 characters
Valid range: 000-255
Description: This three-character decimal data field determines the time-out in-
tervals for the timers in 800 millisecond ticks. The number of ticks
can be 000-255; this gives a time-out range from 0 - 204 seconds.
Timer number and number of ticks fields can be repeated as required.
Any timers with default values may be, but do not have to be, down-
line loaded.

270 September 2012


Messages Network to Terminal messages

Enhanced Configuration Parameters Load

The Enhanced Configuration Parameters Load command message


(modifier ’A’) contains additional options and parameters which are not included
in the Configuration Parameters Load command message (modifier ’3’).
table 68: Enhanced Configuration Parameters Load

Description Code No. of Characters


Load Command Identifier ‘3’ 1
Response Flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ‘1’ 1
Modifier (parameters+LUNO+timers) ‘A’ 1
Field separator (FS) :1C 1
Logical unit number (LUNO) --- 3
Field separator (FS) :1C 1
Option number --- 2
Option code --- 3
Option number [---] 2
Option code [---] 3
Field separator (FS) :1C 1
Timer number --- 2
Number of seconds --- 3
Timer number [---] 2[1]
Number of seconds [---] 3[1]
[1] This field can be repeated with the number of timers that are requested to be loaded.

September 2012 271


Network to Terminal messages Messages

The following paragraphs describe the fields in the Enhanced Configuration


Parameters Load command message.

Load Command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Enhanced Configuration
Parameters Load command message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

272 September 2012


Messages Network to Terminal messages

Modifier field
Field size: 1 character
Valid range: A
Description: This one-character field identifies the configuration data to follow
as LUNO, parameters and timer data. The valid value is ‘A’.

Logical Unit Number (LUNO)


Field size: 3 characters
Valid range: 000-999
Description: This three-character field defines the three-character LUNO
number.

Option number
Field size: 2 characters
Valid range: 00-99
Description: This two-character field defines the option number of the three-
character option code. See Table 69 “Option codes” for detailed
description of these codes.
table 69: Option codes

Option Option Description


number code
00 Camera Control (not supported)
01 Ready/Supply options
000 No options selected (not supported)
001 Separate READY (B) status sent in response to Transaction Reply
002 Auto return to previous mode from supply mode (not supported)
008 12 digit amount buffer
02 001 Auto Voice on (default)
002 Auto Voice off
03 Date format for supervisor/journal messages
001 MMDD(YY)
002 DDMM(YY)
04 001-040 Roll width. Defines the number of receipt and journal columns used to print
messages from the host. (Default is 025)
05 001-040 Left print column (Defines the leftmost print column for receipt and journal
messages. Default is ’008’)

September 2012 273


Network to Terminal messages Messages

06 Vandal Guard Open Condition


000 Open vandal guard when card detected (default condition)
001 Open vandal guard when keyboard is enabled
07 Track 1 format
001 ISO format (default condition)
002 VISA format
08 Reserved for future use
09 Diebold status reporting for vandal guard (not supported)
10 Tamper Indicator Control option (not supported)
11 Extended status control (not supported)
12 Specific Command Reject option
000 Do not transmit Specific Command Reject (default condition)
001 Transmit Specific Command Reject
13 001-255 Card reader error thresholds (Default value is 010)
14 Track 3 write error thresholds
15 Last Transaction Status information
000 Do not append information (default condition)
001 Append information
16-17 Not supported by ProCash/NDC
18-20 Codes reserved for future use
21-22 Not supported by ProCash/NDC
23 Envelope dispenser status option
000 Do not send unsolicited envelope dispenser messages (default)
001 Send unsolicited envelope dispenser messages
24-28, 30 Not supported by ProCash/NDC
31 Enable Audio Echo on Keyboard
000 Do not echo the keyboard (default condition)
001 Echo the keyboard,except in PIN states or/and when ’*’ is pressed
32-33 Codes reserved for future use
34 Message Coordination Number range. Default range is 31(Hex) - 3F(Hex). This
parameter allows to extend the MCN range up to 7E(Hex).
000 31H - 3FH (default condition)
001 31H - 7EH
35-49 Codes reserved for future use
50-99 Codes reserved for private use

274 September 2012


Messages Network to Terminal messages

Timer number
Field size: 2 characters
Valid range: 00-20
Description: This two character field contains the timer number. See section
”Timer Data” on page 188 for details on timers. The valid values
are as follows:
00 keyboard response time-out interval
01 consumer response extension time-out interval
02 close state screen time-out interval
03 communication message time-out interval
04 envelope insertion time-out interval (depositor)
05 withdrawal time-out interval
06 communications off-line time-out interval
07 withdrawal shutter open time-out interval
08 not used
09 consumer time-out interval before card capture attempt
10 additional cash present time-out interval
11 vandal shield timer
82-83 not used
86 rear settlement time-out interval
87 not used
88-90 reserved
91-93 not used
94 envelope eject time-out interval
95 Statement retract time-out interval
96 Statement present time-out interval
97 vestibule door open time-out interval
98 reserved
99 vandal close timer

Number of seconds
Field size: 3 characters
Valid range: 000-255
Description: This three-character decimal data field determines the time-out in-
tervals for the timers in seconds. The number of seconds can be
000-255.
Timer number and number of seconds fields can be repeated as
required. Any timers with default values may be, but do not have to
be, down-line loaded.

September 2012 275


Network to Terminal messages Messages

Interactive Transaction Response

This message may be sent in response to a Transaction Request in order to


obtain more information from the cardholder. This facility allows Central to
communicate directly with the keyboard and display in those situations where
state table sequencing is inappropiate. For example, a cardholder account
selection can be handled in this way. Central can establish which accounts are
available to the cardholder and build the screen accordingly. The message
defines screen data and active keys. Key data is returned in a Transaction
Request message. After the Interactive Transaction Response message, the
terminal waits for a consumer response or time-out. When an FDK or cancel key
is pressed or the screen timer expires, the terminal responds with a Transaction
Request message containing key data usually in general purpose buffer B.
table 70: Interactive Transaction Response

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (ITR) ‘2’ 1
Display flag --- 1
Active keys --- 6, 10
Field separator (FS) :1C 1
Screen timer --- 3
Field separator (FS) :1C 1
Screen data --- VAR

The following paragraphs describe the fields in the Interactive Transaction


Response command message.

276 September 2012


Messages Network to Terminal messages

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Interactive Transaction
Response command message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See chapter ”Security Features”
from page 197 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 2
Description: This one-character data field tells the terminal that screen data of
an ITR follows. The valid value is ‘2’.

September 2012 277


Network to Terminal messages Messages

Display flag
Field size: 1 character
Valid range: 0-2
Description: This one-character field instructs the terminal display as follows:
‘0’ - display Xs as consumer response
‘1’ - display consumer response
‘2’ - display Xs as consumer response. (NCR displays ’*’)
The keyed response is stored in general purpose buffer B for later
transmission in a Transaction Request message.

Active keys
Field size: 6 or 10 characters
Valid range: 0-1
Description: This 10-character field either activates or deactivates keyboard
keys for consumer responses. A graphic 0 will deactivate, while a
graphic 1 will activate, the selected key(s) as follows:

Character Declaration
first selects all numeric keys
second selects FDK ’A’
third selects FDK ’B’
fourth selects FDK ’C’
fifth selects FDK ’D’
sixth selects the Cancel key
seventh selects FDK ’F’
eighth selects FDK ’G’
ninth selects FDK ’H’
tenth selects FDK ’I’

278 September 2012


Messages Network to Terminal messages

Screen timer
Field size: 3 characters
Valid range: 000-255
Description: This three-character field determines time-out intervals for the
CRT display. Graphic characters represent 001 to 255 800-milli-
second ticks to give a time-out range from 0.8 to 204 seconds. If
the terminal "timed out" waiting for the consumer to respond (via
keyboard entry) to a screen command, the last character in gen-
eral purpose buffer B is “T”.
Entering 000 gives an infinite display time.

Screen data
Field size: Variable
Valid range: See description
Description: This is a variable-length field which represents data to be dis-
played on the consumer screen.

September 2012 279


Network to Terminal messages Messages

FIT Data Load

This type of message down-line loads Financial Institution Tables (FIT's) to the
terminal. Each message can include up to four tables. The terminal can store
up to 1000 FIT's. One FIT is required for each member financial institution.
Refer to chapter ”Security Features” from page 197 for details on FIT. table 71:
“FIT Data Load” on page 280 illustrates the message format. The following
paragraphs describe the message fields.
table 71: FIT Data Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ‘1’ 1
Modifier (FIT) ‘5’ 1
Field separator (FS) :1C 1
FIT number --- 3
FIT data (38 bytes) --- 114
Field separator (FS) [:1C] 1 [1]
FIT number [---] 3 [1]
FIT data (38 bytes) [---] 114 [1]
Field separator (FS) [:1C] 1
MAC data [---] 8
[1] This group of fields (FS/FIT number/FIT data) can be repeated, as required, to a
maximum of four FIT's per FIT Data Load command message.

The following paragraphs describe the fields in the FIT Data Load command
message.

280 September 2012


Messages Network to Terminal messages

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the FIT Data Load command
message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

Modifier field
Field size: 1 character
Valid range: 5
Description: This one-character field identifies the configuration data to follow
as FIT data. The valid value is ‘5’.

September 2012 281


Network to Terminal messages Messages

FIT number
Field size: 3 characters
Valid range: 000-509
Description: This three-character field designates the number assigned to the
FIT in the following field.

FIT data
Field size: 38 bytes
Valid range: See description
Description: The FIT data specifies control words for processing the PIN. FIT
is also used for indirect next state and remote PIN encryption. FIT
is down-line loaded to the terminal.

MAC data
Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the FIT Data Load command
message. Refer to section ”Message Authentication (MAC)” on
page 221 for additional details.

282 September 2012


Messages Network to Terminal messages

Encryption Key Load

The Encryption Key Load message carries encrypted encryption keys to


replace the current keys. This message also includes a control word (in the
modifier field) that identifies the key in the message and the means of
decrypting it (see chapter ”Security Features” from page 197 for a detailed
description of data encryption).
The Encryption Key Load message can be used only for single lengths keys (24
characters). For double lengths keys (48 characters), the Extended Encryption
Key Load message has to be used.
table 72: “Encryption Key Load” on page 283 illustrates the message format.
table 72: Encryption Key Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (encryption key change) ‘3’ 1
Key change [---] 1
Field separator (FS) :1C 1
New key data [---] 24

September 2012 283


Network to Terminal messages Messages

The following paragraphs describe the fields in the Encryption Key Load
message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Encrypion Key Load com-
mand message is ‘3’.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 3
Description: This one-character data field tells the terminal that encryption key
data follows. The valid value is ‘3’.

284 September 2012


Messages Network to Terminal messages

Key change
Field size: 1 character
Valid range: 1-9
Description: This one-character field tells the terminal what key(s) to use for
encryption and message authentication. The valid values for this
field are as follows:
‘1’ - decrypt new master key with current master key
‘2’ - decrypt new COMM key with current master key
‘3’ - decrypt new COMM key with current COMM key
‘4’ - use power-up COMM key (B key) as current COMM key
‘5’ - decrypt MAC key with current master key
‘6’ - decrypt MAC key with current COMM key
‘7’ - use power-up COMM key (B key) as current MAC key
‘8’ - decrypt new VISA master key with current VISA master key
(not supported by Wincor Nixdorf terminals)
‘9’ - send VISA key table to terminal (not supported by Wincor
Nixdorf terminals)

New key data


Field size: Variable
Valid range: See description
Description: The terminal receives, decrypts and stores new key data inputs
for future use. The size of this field varies, depending on the key
change field. The field sizes are as follows:
If the key change field is 4 or 7, there is no new key data; this field
is not included in the message.
If the key change field is 1, 2, 3, 5, 6 or 8, the new key data field
is 24 characters. It is eight hex bytes transmitted as eight 3 deci-
mal characters with a range of 000-255.

September 2012 285


Network to Terminal messages Messages

Extended Encryption Key Load

The Extended Encryption Key Load message allows to carry encrypted


encryption keys in double length (48 characters) or single length (24 characters)
to replace the current keys. Double lengths keys usually are used if triple DES
verification is enabled. This message also includes a control word (in the
modifier field) that identifies the key in the message and the means of
decrypting it (see chapter ”Security Features” from page 197 for a detailed
description of data encryption).
If this message is sent with a single length key and the terminal is configured to
work with double length keys, a command reject is issued indicating an
Encryption Key Change message of the wrong length has been issued.

Table 73 “Extended Encryption Key Load” illustrates the message format.


table 73: Extended Encryption Key Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (encryption key change) ‘4’ 1
Key change [---] 1
Field separator (FS) :1C 1
Key data size [---] 3
New key data [---] 24 or 48

286 September 2012


Messages Network to Terminal messages

The following paragraphs describe the fields in the Extended Encryption Key
Load message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Extended Encrypion Key
Load command message is ‘3’.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 4
Description: This one-character data field tells the terminal that encryption key
data in single length or double length follows.
The valid value is ‘4’.

September 2012 287


Network to Terminal messages Messages

Key change
Field size: 1 character
Valid range: 1-9
Description: This one-character field tells the terminal what key(s) to use for
encryption and message authentication. The valid values for this
field are as follows:
‘1’ - decrypt new master key with current master key
‘2’ - decrypt new COMM key with current master key
‘3’ - decrypt new COMM key with current COMM key
‘4’ - use power-up COMM key (B key) as current COMM key
‘5’ - decrypt MAC key with current master key
‘6’ - decrypt MAC key with current COMM key
‘7’ - use power-up COMM key (B key) as current MAC key
‘8’ - decrypt new VISA master key with current VISA master key
(not supported by Wincor Nixdorf terminals)
‘9’ - send VISA key table to terminal (not supported by Wincor
Nixdorf terminals)
‘H’ - Send Key Verification Values (KVVs)

Key data size


Field size: 3
Valid range: 018 or 030
Description: The key data size specifies the size of the following key data field.
For a single length key the size is 018 (24 characters).
For a double length key the size is 030 (48 characters).

288 September 2012


Messages Network to Terminal messages

New key data


Field size: Variable
Valid range: See description
Description: The terminal receives, decrypts and stores new key data inputs
for future use. The size of this field varies, depending on the key
change field. The field sizes are as follows:
If the key change field is 4 or 7, there is no new key data; this field
is not included in the message.
If the key change field is 1, 2, 3, 5, 6 or 8, the new key data field
is 24 characters for single length keys or 48 characters for double
length keys (Triple DES mode). It is eight or sixteen hex bytes
transmitted where the terminal receives each byte as a 3 digit dec-
imal value in range of 000-255.

Dispenser Currency Mapping Table Load

This message contains a table that is used to define currency types, which is
mapped to the configuration settings in table entry 7 of the Amount Check State
defined in the Amount Check State Table.
Table 74 “Dispenser Currency Mapping Table Load” illustrates the message
format.
table 74: Dispenser Currency Mapping Table Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration) ‘1’ 1
Modifier (Dispenser Currency Mapping ‘E’ 1
Table)
Field separator (FS) :1C 1

September 2012 289


Network to Terminal messages Messages

Dispenser Currency Mapping Table --- VAR


data
Number of Mapping Entries --- 2[1]
(range 01-FF)
Currency Type (range 01-FF) --- 2[1]
used for mapping to state ’G’
table entry 7
Cassette Type. Single digit ASCII hex --- 1[1]
value (range 0-F)
Denomination for Cassette. Five-digit --- 5[1]
ASCII numeric value
(e.g. 00010 for $10)
[1] If the Number of Mapping Entries a greater than 01, the following fields are repeated with
the specified number of Mapping Entries

The Dispenser Currency mapping Table Load is expected at the terminal only
when the terminal is in out-of-service mode or supply/supervisor mode.
If Central transmits a Dispenser Currency mapping Table Load message and it
does not conform to the format above, or is sent at a time when it is not expect-
ed, a solicited error message is generated, identifying a specific command re-
ject value for the failure reason (or simply 'A' if specific command reject
processing is not activated). If a specific command reject value is generated
then the message content will be ignored.

See also section “Amount Check State (G)” on page 94 for detailed configura-
tion description.

290 September 2012


Messages Network to Terminal messages

Configuration ID Load

This message contains an identifier for the configuration data sent to the
terminal, i.e. the configuration data in a given terminal. At terminal startup, or
any time that configuration data is sent to the terminal, the configuration ID is
set to 0000. The Configuration ID Load command message must be included
as the last of the down-line loaded configuration data to set the configuration ID
to the desired number. Thus, the Configuration ID Load command message
acts as an “authorization signature” for the preceding data. The configuration ID
number can be any number from 0000 to 9999. After the terminal has received
a new configuration ID all downloaded parameters are stored into the WIN-NT
Registry.
The Configuration ID can be used to verify configuration data. When properly
configured, the WIN-NT Registry contains the configuration ID number
assigned by the Configuration ID Load command message during configu-
ration. To verify the configuration data, the network sends a configuration ID
request terminal command (section ”Terminal Command message” on page
257). The terminal responds by sending the configuration ID number to the
network. If the configuration data has been changed without the “authorization
signature”, the terminal had been powered down and has not been recon-
figured, or if the encryption keys have been changed, the terminal sends 0000
to the network.
The terminal can respond, as described above to the configuration ID request
message only when it is in supply mode or out-of-service mode. When not in
one of these conditions, the terminal responds with a command reject (section
”Specific Command Reject Conditions” on page 302).

September 2012 291


Network to Terminal messages Messages

table 75: Configuration IDLoad

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration data) ‘1’ 1
Modifier (configuration ID number) ‘6’ 1
Field separator (FS) :1C 1
Configuration ID number --- 4

The following paragraphs describe the fields in the Configuration ID Load


command message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Configuration ID Load
command message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

292 September 2012


Messages Network to Terminal messages

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999). If the terminal uses MAC-
ing, this field is replaced by an eight-byte time variant number.
See chapter ”Security Features” from page 197 for details.

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

Modifier
Field size: 1 character
Valid range: 6
Description: This one-character field tells the terminal that the configuration
data that follows is the configuration ID. The only valid value is ‘6’.

Configuration ID number
Field size: 4 characters
Valid range: 0001-9999
Description: This four-character field contains the configuration ID Number.
The configuration ID number must be in the range of 0001 to
9999. 0000 indicates that the terminal is not configured.

September 2012 293


Network to Terminal messages Messages

Date And Time Load

This message is used to set the date and time in the terminal.
table 76: Date And Time Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (customisation data) ‘1’ 1
Modifier (date and time) ‘C’ 1
Field separator (FS) :1C 1
Date/Time data VAR 10

The following paragraphs describe the fields in the Date And Time Load
command message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Date And Time Load com-
mand message is 3.

294 September 2012


Messages Network to Terminal messages

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that customisation
data follows. The valid value is ‘1’.

Modifier
Field size: 1 character
Valid range: C
Description: This one-character field tells the terminal that the customisation
data that follows is date and time data. The only valid value is ‘C’.

September 2012 295


Network to Terminal messages Messages

Date and time data


Field size: 10 characters
Valid range: See description
Description: The date and time specified by the is formatted as follows:„YYM-
MDDHHMM“.

Description Range
YY = Year ‘00’ - ‘99’
MM = Month ‘01’ - ‘12’
DD = Day ‘01’ - ‘31’
HH = Hour ‘00’ - ‘23’
MM = Minute ‘00’ - ‘59’

296 September 2012


Messages Network to Terminal messages

Message Authentication Field Selection Load

This type of message is used to set the messages and fields specified for full or
selective MAC verification. The following paragraphs describe the message
fields.
table 77: Message Authentication Field Selection Load

Description Code No. of Characters


Load command identifier ‘3’ 1
Response flag [X] 1
Field separator (FS) :1C 1
Logical unit number (LUNO) [X] 3
Field separator (FS) :1C 1
Message sequence number [X] 3
Field separator (FS) :1C 1
Load identifier (configuration data) ‘1’ 1
Modifier (configuration ID number) ‘B’ 1
Field separator (FS) :1C 1
Transaction request field VAR 37 (only 17 supported)
Field separator (FS) :1C 1
Transaction reply field VAR 23 (only 17 supported)
Field separator (FS) :1C 1
Solicited status field --- 11 (not supported)
Field separator (FS) :1C 1
Other messages field VAR 4
Field separator (FS) :1C 1
Track 1 field VAR 6
Field separator (FS) :1C 1
Track 2 field VAR 6
Field separator (FS) :1C 1
Track 3 field VAR 11
Field separator (FS) [:1C] 1
MAC data [---] 8

September 2012 297


Network to Terminal messages Messages

The following paragraphs describe the fields in the Message Authentication


Field Selection Load command message.

Load command identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Message Authentication
Field Selection Load command message is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number. See section ”Message Authenti-
cation (MAC)” on page 221 for additional details.

Message sequence number


Field size: 3 characters
Valid range: 000-999
Description: The message sequence number field is part of the logical protocol
in a network message. It is a reserved entry and contain any
three-digit decimal number (000-999).

Load identifier
Field size: 1 character
Valid range: 1
Description: This one-character data field tells the terminal that configuration
data follows. The valid value is ‘1’.

298 September 2012


Messages Network to Terminal messages

Modifier
Field size: 1 character
Valid range: B
Description: This one-character field tells the terminal that the configuration
data that follows is the configuration ID. The only valid value is ‘B’.

Transaction request field


Field size: 0-37 (17 fields supported only)
Valid range: 0 or 1 (for each field)
Description: The following table shows the fields which can be verified:

Field Description
Position
0 0 - MAC complete message; 1 - Selective MACing
1 Solicited/Unsolicited ID and Message identifier
2 Logical unit number
3 Reserved
4 Time variant number
5 top-of-form flag
6 Message coordination number
7 Track 2 data
8 Track 3 data
9 Operation code data
10 Amount entry field
11 PIN buffer
12 General Purpose Buffer B
13 General Purpose Buffer C
14 Track 1 data buffer identifier
15 Track 1 data
16 Transcation status Data identifier and Last transaction status

Transaction reply field


Field size: 0-23 (17 supported only)
Valid range: 0 or 1 (for each field)
Description: The following table shows the fields which can be verified:

September 2012 299


Network to Terminal messages Messages

Field Description
Position
0 0 - MAC complete message; 1 - Selective MACing
1 Transaction Reply command identifier and response flag
2 Logical unit number
3 Message sequence number / Time variant number
4 Next state ID
5 Number of bills to dispense from denomination 1-4
6 Transaction serial number
7 Function identifier
8 Screen number
9 Screen display update data
10 Message coordination number
11 Card return / retain flag
12 Printer flag field and Printer data
13 Printer flag field and Printer data after the first group separator
14 Printer flag field and Printer data within the next group separators
15 Track 3 buffer identifier
16 Track 3 data field

Solicited status field


Field size: 11
Valid range: 0 or 1
Description: This field contains the MAC selection data for the solicited status
message. This field is ignored by the application.
ProCash/NDC and ProConsult/NDC always performs a full MAC
for solicited status messages.

Other messages field


Field size: 4
Valid range: 0 or 1
Description: This field conains the MAC selection data for FIT load, State Table
load, Terminal State status and Dispenser Currency Mapping Ta-
ble messages. MAC verification of Terminal State and Dispenser
Currency Mapping Table messages are not supported.

300 September 2012


Messages Network to Terminal messages

Track 1 field
Field size: 6
Valid range: 0 or 1
Description: This field contains the MAC selection data for Track 1 data.
Offset Description
0 0 - MAC full track. Ignore bytes 1-5
1 - Selectively MAC the fields below
1 Sub field 1 until ’=’ (including start sentinel)
2-5 Sub field 2-5 that should be MACed

Track 2 field
Field size: 6
Valid range: 0 or 1
Description: This field contains the MAC selection data for Track 2 data.
Offset Description
0 0 - MAC full track. Ignore bytes 1-5
1 - Selectively MAC the fields below
1 Sub field 1 until ’=’ (including start sentinel)
2-5 Sub field 2-5 that should be MACed

Track 3 field
Field size: 11
Valid range: 0 or 1
Description: This field contains the MAC selection data for Track 3 data.
Offset Description
0 0 - MAC full track. Ignore bytes 1-10
1 - Selectively MAC the fields below
1 Sub field 1 until ’=’ (including start sentinel)
2-10 Sub field 2-10 that should be MACed

MAC data field


Field size: 8 characters
Valid range: See description
Description: This eight-character field contains hexadecimal characters that
represent the MAC calculation of the Message Authentication
Field Selection Load message. See the section ”Message Au-
thentication (MAC)” on page 221 for additional details.

September 2012 301


Network to Terminal messages Messages

Specific Command Reject Conditions

The terminal will return a specific command reject status if an error is detected
in any command sent from the network to the terminal. The situations which
cause a command reject are as follows:
• Illegal message class (legal classes are 1, 2, 3 or 4)
• Illegal message sub class
• Illegal message identifier
• Illegal terminal command code
• Illegal terminal command modifier
• Field separator in illegal position
• Insufficient fields in the message
• Insufficient Registry space to store configuration data
• The dispense amount request is to large
• The message coordination number in a Transaction Reply message does
not match the number in the Transaction Request, and is not ’0’.
• Illegal function ID in Transaction Reply command. An illegal function ID is a
non supported ID by ProCash/NDC or ProConsult/NDC.
• An encryption key change message is received before the original key has
been entered at the terminal.
• More than 13 print fields in aTransaction Reply command
• Date and Time data are invalid in a date and time load command

Default operations include the following:


• Entry to default close state. For example , non existent state number
• Illegal characters for data convertion received
• Default display, for example if a screen does not exist the screen number is
displayed on the consumer screen

302 September 2012


Messages Network to Terminal messages

The following table shows under which conditions the specific command reject
value/qualifier combinations are produced:
table 78: Specific Command Reject Conditions

Value Qualifier Description


1 MAC Failure
Result of MAC verification did not equal the MAC
2 Time Variant Number Failure
The time variant number received in the last Transaction
Reply message is not the same as the lasttransmitted value.
3 Security Terminal Number Mismatch
The number received in the last transaction reply security
terminal number is not the same as the number held in the
terminal
A Message format errors
01 Message length error. An incomplete message is found
under the following conditions:
– Report logs missing the group number
Load of configuration ID incomplete or missing ID
field.
– Diebold PIN mode message - missing or incomplete
data.
– Option /timer - incomplete number/value field in
configuration message
– Truncated MAC field selection load, with expected
MAC data missing.

September 2012 303


Network to Terminal messages Messages

02 Field separator not found or found unexpectedly in the


following circumstances:
– Found in the middle of an option / timer number and
value field in configuration message.
– Not found when skipping the first three field
separators in a Transaction Reply message.
– Not found at the end of the coinage field.
– Not found in MAC Field Selection Load Data.
– Mandatory last field separator not found or found
unexpectedly in a Transaction Reply message.
– Found unexpectedly in the Override Reserved Screen
command.
03 Too many print groups in the Transaction Reply message.
More than 13 print groups are present in a Transaction
Reply message.
04 A group separator is missing or found unexpectedly.

B Field value errors


01 Illegal Message Class. Message class was not 1, 2, 3, 4
or 7, or message class was 7 and exit support was not
detected.
02 Illegal Message Sub-Class or Identifier on a Configu-
ration Load message with class '3' . The following will
cause this report:
– Message sub-class outside the range '1' - '4'
– Message identifier outside the range '1' - '6' or 'A' -'C'.
03 Illegal Load Key Message Identifier. Within a load
encryption key data message:
– The modifier field is outside the range '1' - '9'
04 Illegal Terminal Command Code:
– Returned if the command code is outside the
range '1' - '?'.

304 September 2012


Messages Network to Terminal messages

05 Illegal Terminal Command Modifier. Within a legal


terminal command, if a modifier is required:
– Report tallies modifier outside the range 'A' - 'N' or 'V'
or 'Y' or '\' or'[' .
– Report error log modifier outside the range 'A'' - 'C'
– The terminal command code is 7 and the command
modifier is outside the range 0-7.
– The command code is '?' but the modifier is not 0 or 1.
06 Illegal Function ID in Transaction Reply command:
– Function ID outside the range 'l'- '9', 'A', 'B', 'C', 'F', 'P',
'Q', 'S' or 'T'
07 Data Field contains non-numeric data. This is found in the
following circumstances:
– Encryption key change message key data.
– Coinage field has at least one non-numeric character
present.
– Option/Timer number or value in configuration
message.
08 Numeric value out of range.
– In a FIT message, FIT data value is greater than 255
– message contain a value exceeding their maximum
values.
– The zone name length in the printer fields of a Trans-
action Reply message is out of range.
09 Invalid Message Co-Ordination Number. In a Transaction
Reply message, the co-ordination number is not zero and
does not match the transmitted value.
10 Illegal FIT number. A FIT in a FIT load message is not in
the range of the reserved pool size.
11 Too many notes in Transaction Reply command. The total
number of notes requested exceeds the limit of 40 or 20.
13 Unrecognised document destination. Returned if the
document destination (field in the the Transaction Reply)
is not one of the allowed values or if the field is null.

September 2012 305


Network to Terminal messages Messages

14 Too many coins in Transaction Reply command. Total


number of coins requested exceeds the limit of 25.
15 Unrecognised buffer identifier. Returned if the Trans-
action Reply contains a buffer identifier not currently
supported.
16 Buffer identifier 'E' missing. Returned if the Transaction
Reply command ID is 'S' (Process Document with Cash)
but there is no mandatory field 'ae' in the Transaction
Reply message.
17 Document name error. Returned if the data present in a
printer field in the Transaction Reply message is shorter
than the zone name length given.
18 The screen identifier in an Override Reserved Screen
Command is not in the range 'D0000' to 'D0010'.
C Illegal Message Type for Current Mode.
01 Message type only accepted while terminal Is in In
Service mode and is expecting a Transaction Reply. The
reject is caused by receipt of a Transaction Reply at other
times while the terminal is in service.
02 Message cannot be accepted while diagnostics and clear
SOH programs for Level 2 and Level 3 are in progress.
This reply is designed to draw attention to the fact that
these programs are being executed.
It applies to the following messages:
– Download messages for customisation.
– Transaction Replies (not Print Immediate).
03 Message cannot be accepted while in Out-of-Service or
Supply modes. The following messages cannot be
accepted in these modes:
– Transaction Replies (not Print Immediate).
– Interactive Transaction Response.

306 September 2012


Messages Network to Terminal messages

04 Message unacceptable in current mode.


The following messages cannot be accepted while in In-
Service mode:
– Terminal commands '4', '5', '6', '9'.
– Interactive Transaction Response when not in Trans-
action Request State.
– Also applies to terminal command when attempting to
enable Supervisor 'Dump Images' but terminal is
performing a transaction.
05 Reserved
06 Reserved
07 Reserved
08 Security key initialise message rejected. The key is
already in a legal state.
09 Reserved
10 Message not accepted while processing a Transaction
Reply.
11 not used
12 Cannot process a document while a statement print
function is being carried out.
13 Cannot perform a statement print function while
processing a document.
14 not used
D Hardware failure
01 Encryption failure during key change message.
02 Time of day clock failure during data/time set command or
invalid data sent.
03 Reserved
04 Key initialisation command not accepted, due to encryption
failure during initialisation.
05 Reserved
06 Insufficient disk space.
E Not supported

September 2012 307


Network to Terminal messages Messages

01 Not supported by software:


– The requested function is not supported by current
ProCash/NDC or ProConsult/NDC release.
– VISA PIN verfication key table load via encryption key
load message.
– MAC field selection load.
02 Not supported by hardware:
A dispense function has been issued which requests coins
but there is no Coin dispenser present.
Sideways printing on receipt is requested and the option is
not available.
03 Reserved
04 Reserved
05 Journal printer backup is inactive

308 September 2012


Messages Network to Terminal messages

figure 5: Transaction Reply message accept/reject flowchart

Network sends a Transaction


Reply message or host generated
screen to the terminal

Terminal
Terminalinin No
inservice
service
mode?
mode?

Yes

Terminal
Terminal inin No
No Is
Is message
message
transaction
transaction aaprint
print
request
request immediate
immediate??
state?
state?

Yes Yes

Yes Terminal
Terminal inin
Process message out-of-service
out-of-service
mode ?
mode ?

No

Terminal in
Yes Terminalmode
supervisor in
and MISC_PRINT
supervisor mode
Flag is set
to 8 ?

No

Reject message

September 2012 309


Terminal operations in Transaction Replies Messages

Terminal operations in Transaction Replies


This section describes the operation of the terminal in response to Transaction
Reply command messages. Each Transaction Reply command message
identifies a particular function for the terminal to perform. How the terminal
responds to each of these function identifiers is the subject of this section.
The following table lists NDC function ID’s and the assignment to the internal
ProCash/NDC or ProConsult/NDC step function:
table 79: NDC function ID’s assigned to step functions

Function description ID Step function


Print Immediate ‘4’ DC_F_PRINT_IMMEDIATE
Set Next State and Print ‘5’ DC_F_SET_NEXT_STATE
Night Safe Deposit and Print ’6’ DC_F_NIGHT_SAFE_DEPOSIT
Deposit and Print ’1’ or ’7’ DC_F_DEPOSIT
Dispense, Deliver and Print ‘2’ or ‘8’ DC_F_DISPENSE
Display and Print ‘3’ or ‘9’ NDC_F_DISPLAY
Eject Card Dispense and Print ‘A’ NDC_F_CBC_DISPENSE
(Card Before Cash)
Parallel Eject/Dispense and ‘B’ or ‘C’ NDC_F_PARALLEL_DISPENSE
Print (Fast Cash)
Eject Card Dispense and Print ‘F’ NDC_F_CBC_PARALLEL
Parallel
Print Statement and Set Next ’Q’ NDC_F_PRINT_STM_NEXT
State
Print Data and Stay in Present ’P’ NDC_F_PRINT_STM_WAIT
State
Ignore Reply Function DC_F_IGNORE

310 September 2012


Messages Terminal operations in Transaction Replies

Print Immediate (‘4’)

The terminal handles the Print Immediate function ID as follows:


1. Shows the screen specified in the Transaction Reply command message.
2. Initializes for printing.
3. Tells the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.
4. If a fault occurs while the printer is printing the terminal sends a printer
unsolicited status message indicating a fault.

Set Next State and Print (‘5’)

The terminal handles the Set Next State and Print function ID as follows:
1. Initializes for printing.
2. Tells the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.
3. If a fault occurs while the printer is printing, the terminal sends a printer
unsolicited status message indicating a fault.
4. Initializes for printing.
5. Tells the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.
6. If a fault occurs while the printer is printing, the terminal sends a printer
unsolicited status message indicating a fault.

September 2012 311


Terminal operations in Transaction Replies Messages

Night Safe Deposit and Print (‘6’)

The terminal handles the Night Safe Deposit and Print function as follows:
1. Shows the screen specified in the Transaction Reply command message
2. Starts the Timer 08 and waits for the deposit to be completed. The deposit
is completed when the deposit shutter has been safety closed.
• If Timer 08 expires before the deposit is completed, the terminal starts
timer 1 and shows screen ’000’. If timer 1 expires before the deposit is
completed, the terminal sends a deposit solicited status message
indicating a fault and waits for a new Transaction Reply command.
• If the cancel key is pressed while Timers 01 or 08 are active, the terminal
sends a deposit solicited status message indicating a fault and waits for
a new Transaction Reply command.
• If Timer 08 does not expire and the cancel key is not pressed while Timer
01 or 08 is active, the terminal goes to step 3.
3. Tells the journal and/or receipt printers defined in the printer flag field of the
Transaction Reply command message to print.
4. If a fault occurs while the printer is printing, the terminal sends a printer
unsolicited message indicating a fault.

Deposit and Print (‘1’ or ‘7’)

The terminal handles the Deposit and Print function ID as follows:


1. Shows the screen specified in the Transaction Reply command message.
If the envelope should be given in the host replay, the screen “please take
the envelope” will be displayed.
2. Starts Timer 04 (envelope insertion timer).
3. Checks for envelope insertion.
• If Timer 04 expires before the customer inserts the envelope, the terminal
starts timer 01 (consumer time-out response) and shows screen ’000’. If
Timer 01 expires before the customer inserts the envelope, the terminal
returns a depository solicited status message indicating a fault and waits
for a new Transaction Reply command message.

312 September 2012


Messages Terminal operations in Transaction Replies

• If the cancel key is pressed while the terminal is checking for the insertion
of the envelope, the terminal returns a depository solicited status
message indicating a fault and waits for a new Transaction Reply
command message.
• If an envelope is inserted, the terminal goes to step 5.
4. Initializes for envelope entry.
5. Transports the deposit envelope.
• If a fault occurs during transport, the terminal returns a depository
solicited status message indicating a fault and waits for a new
Transaction Reply command message.
• If a fault does not occur, the terminal goes to step 7.
6. Increases the deposit envelope count by one.
7. Prints the transaction serial number, the contents of the amount buffer, and
the first 20 characters of track 2 data on the envelope.
8. Initializes for finishing the deposit.
9. Waits for the deposit to finish.
• If a fault occurs while the terminal is waiting for the deposit to finish, the
terminal returns a depository solicited status message indicating a fault
and waits for a new Transaction Reply command message.
• If a fault does not occur, the terminal checks for an additional function
identifier in the Transaction Reply command message.
10. Initializes for printing.
11. Tells the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.
12. If a fault occurs while the printer is printing the terminal returns a printer
unsolicited status message indicating a fault.

September 2012 313


Terminal operations in Transaction Replies Messages

Dispense, Deliver and Print (‘2’ or ‘8’)

The terminal handles the Dispense, Deliver and Print function ID as follows:
1. Shows the screen specified in the Transaction Reply command message.
2. Initializes for the dispense function.
3. Starts dispensing.
4. If a fault occurs during dispense, the terminal proceeds as follows.
• Returns a dispenser solicited status message indicating a fault .
• Waits for a new Transaction Reply command message.
5. Wincor Nixdorf retract able terminals proceeds as follows:
• Starts Timer 10 (doorless terminal withdrawal time-out interval).
• Turns on the beeper.
6. Informs the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.
7. If a fault occurs while either printer is printing, the terminal proceeds as
follows:
• Returns a printer unsolicited status message indicating a fault.
• Waits for a new Transaction Reply command message.
8. If a fault does not occur while the printer is printing, the terminal waits for
printing to finish and then checks for an additional function identifier in the
Transaction Reply command message.

Display and Print (‘3’ or ‘9’)

The terminal handles the Display and Print function ID as follows:


1. Shows the screen specified in the Transaction Reply command message.
2. After the screen is displayed the terminal does the following:
• Starts Timer 10 (withdrawal time-out interval).
• Turns on the beeper.
3. Informs the printer(s) (receipt or journal) defined in the printer flag field of the
Transaction Reply command message to print.

314 September 2012


Messages Terminal operations in Transaction Replies

4. If a fault occurs while the printer is printing, the terminal proceeds as follows:
• Sends a printer unsolicited status message indicating a fault.
• Waits for a new Transaction Reply command message.
5. If a fault does not occur while the printer is printing, the terminal waits for
printing to finish and then checks for an additional function identifier in the
Transaction Reply command message.

Eject Card, Dispense and Print (‘A’) (Card before Cash)

The terminal handles the Eject Card, Dispense and Print function ID as follows:
1. Dispense the money and ejects the card.
2. Shows first the “Please take your card“ screen, which is the first nested
screen configured in the base screen specified in the Transaction Reply
command message. the screen is displayed as long as the customer takes
the card or it will be captured after the Timer 09 has expired.
3. If card was taken, cash will be delivered and the second nested screen
„Please wait for Cash and receipt“ which is configured in the base screen
from Transaction Reply is shown. If the card was not taken, card will be
retained, the dispensed money will be rejected and the terminal enters the
next state specified in the Transaction Reply.
4. Prints the receipt and journal data.
5. Cut and deliver receipt if necessary.
6. Shows the „Take receipt and Cash“ or „Take Cash“ screen as long as Timer
02 is active. Timer 02 is in use to determine the length of time that the Close
screen is displayed.

For retract terminals Timer 05 is started the cash has been


dispensed. Also the beeper is active during Timer 05 is running. If the
notes have not been taken when the timer expires, a retract is
attempted. If some notes are retracted, the message „Cash retracted“
is logged to the journal and an unsolicited error is reported to the host.
If the notes are taken within the time frame of Timer 05 the timer is
canceled. In both cases, Timer 07 is started, and the next state is
entered on expiry.

September 2012 315


Terminal operations in Transaction Replies Messages

Eject Card, Dispense and Print (‘F’) (Parallel CBC)

The terminal handles the Parallel Eject Card, Dispense and Print function ID
(Card before Cash) as follows:
1. Ejects the card.
2. Shows the ‘Please take your card“ screen specified in the Transaction Reply
command message as long as the customer takes the card or it will be
captured after the Timer 09 has expired.
3. If card was taken, dispense the cash and shows the screen „Please wait for
Cash and receipt“. If card was not taken, card will be retained, the dispensed
money will be rejected and the terminal enters the next state specified in the
Transaction Reply.
4. Prints the receipt and journal data.
5. Cut and deliver receipt if necessary.
6. Shows the „Take receipt and Cash“ or „Take Cash“ screen as long as Timer
02 is active. Timer 02 is in use to determine the length of time that the Close
screen is displayed.

For retract terminals Timer 05 is started the cash has been


dispensed. Also the beeper is active during Timer 05 is running. If the
notes have not been taken when the timer expires, a retract is
attempted. If some notes are retracted, the message „Cash retracted“
is logged to the journal and an unsolicited error is reported to the host.
If the notes are taken within the time frame of Timer 05 the timer is
canceled. In both cases, Timer 07 is started, and the next state is
entered on expiry.

316 September 2012


Messages Terminal operations in Transaction Replies

Parallel Eject/Dispense and Print (Fast Cash) (‘B’ or ‘C’)

The terminal handles the Parallel Eject/Dispense and Print function ID as


follows:
1. Parallel Eject/Dispense and Print. Shows the ‘Please wait“ screen specified
in the transaction request state.
2. Cut and deliver receipt if necessary and shows the screen „Take Card and
Cash“.
3. Wait for card to be taken or captured, if not already taken. Displays the
screen „...and receipt“ specified in the close state. Timer 02 is in use to
determine the length of time that the Close screen is displayed.

For retract terminals Timer 05 and Timer 07 is started the cash has
been dispensed. Also the beeper is active during Timer 05 is running.
If the notes have not been taken when the timer expires, a retract is
attempted. If some notes are retracted, the message „Cash retracted“
is logged to the journal and an unsolicited error is reported to the host.
If the notes are taken within the time frame of Timer 05 and Timer 07
the timer is cancelled.
• If a fault does occur after five attempts to write to the card, the terminal
goes to step 5.
4. Retains the card if the terminal cannot advance the card to write on it.
5. Returns a card writer solicited status message indicating a fault and waits for
a new Transaction Reply command message

Print Data and Stay in Present State (‘P’)

The Print Data and Stay in Present Mode function tells the terminal to print data
and stay in present state. This allows the terminal to print large amounts of data
without continually sending request messages to the network.
After printing has been finished, the terminal sends a READY to the network.
Then the network sends the next part of the printer data. This can be repeated
until the network sends a new function reply containing a next state.

September 2012 317


Electronic Journal Upload (EJU) commands Messages

Print Statement and Set Next State (‘Q’)

The Print Statement and Set Next State function is used to print statement data
on receipts. During printing on receipt the terminal displays the transaction
request screen (Please Wait). Depending on the print flag logging data are
printed on journal. Then the terminal displays the transaction reply screen (Take
Statement). If the printing has been finished, the terminal sends a READY to the
network.

Electronic Journal Upload (EJU) commands


This section describes the commands that will be sent by the host to enable,
continue und stop Electronic Journal Upload (EJU).
EJU consists of following three terminal commands:
• Send Options And Timers
• Acknowledge And Continue
• Acknowledge And Stop

see description of the commands on the following pages ...

318 September 2012


Messages Electronic Journal Upload (EJU) commands

Send Options And Timers

This command can be sent at any time to enable the Electronic Journal Upload.
See also ProCash/NDC ProConsult/NDC Installation manual for EJU
configuration.
The following table describes the message format and its fields:
table 80: Send Options And Timers message format

Description Mandatory Code No. of Characters


Optional
Message Identifier M 6 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Command Type M 3 1
Option Number Block Size O 60 2[1]
Option Value Block Size O VAR 3[1]
Option Number Retry O 61 2[1]
Threshold
Option Value Retry O VAR 3[1]
Threshold
Field Separator (FS) M :1C 1
Acknowledge Timer O 60 2
Number
AcknowledgeTimer Value O VAR 3
[1] If one or both Option Number(s) (60 or/and 61) are inserted, the 3 digit Option Value has
to follow after each option.

Message Identifier
Field size: 1 character
Valid range: 6
Description: This field specifies the message identifier. The message identifier
for Electronic Journal is 6.

September 2012 319


Electronic Journal Upload (EJU) commands Messages

Command Type
Field size: 1 character
Valid range: 3
Description: This field specifies the command type for message identifier 6.
The command type for Send Options and Timers is 3.

Option Number Block Size


Field size: 2 characters
Valid range: 60
Description: This field specifies the option number indicating the block size fol-
lowing the three digit Option Value Block Size.

Option Value Block Size


Field size: 3 characters
Valid range: 010-350; default is 200
Description: This field specifies the option value for the maximum size of elec-
tronic journal data that has to be sent to the host.

Option Number Retry Threshold


Field size: 2 characters
Valid range: 61
Description: This field specifies the option number indicating the retry thresh-
old following the three digit Option Value Retry Threshold.

Option Value Retry Threshold


Field size: 3 characters
Valid range: 000-999; default is 000 (infinite retries)
Description: This field specifies the option value for the number attempts to
successfully send an Electronic Journal Upload block. The send
attempt will be marked as successfull as soon as the terminal has
received an Acknowledge command.

320 September 2012


Messages Electronic Journal Upload (EJU) commands

Acknowledge Timer Number


Field size: 2 characters
Valid range: 60
Description: This field indicates the Acknowledge Timer Number with the fol-
lowing Acknowledge Timer Value.

Acknowledge Timer Value


Field size: 3 characters
Valid range: 000-255; default is 000 (infinite)
Description: This field specifies the Acknowledge Timer Value for the timer that
indicates the maximum time in seconds to wait for an acknowl-
edgement message from host before the same block will be re-
sent.

September 2012 321


Electronic Journal Upload (EJU) commands Messages

Acknowledge And Continue

This command should be sent by the host each time a block of electronic journal
data is received from the terminal. It can also be sent unsolicited at any time to
enable EJU instead of sending the Options And Timers command. Then the
default option and timer values will be used. If after sending an EJ block to the
host, the terminal does not receive an acknowledgement within the specified
time, the terminal will send the same block again. If the terminal has received
the acknowledgement for the last electronic journal data block, the contents of
the shared mapping where all EJ data are stored will be erased. See also
ProCash/NDC ProConsult/NDC Installation manual for EJU configuration.
The following table describes the Acknowledge And Continue message format
and its fields:
table 81: Acknowledge And Continue

Description Mandatory Code No. of Characters


Optional
Message Identifier M 6 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Command Type M 1 1
Last Character Received O VAR 6

Message Identifier
Field size: 1 character
Valid range: 6
Description: This field specifies the message identifier. The message identifier
for Electronic Journal is 6.

Command Type
Field size: 1 character
Valid range: 1
Description: This field specifies the command type for the Acknowledge And
Continue of message identifier 6.

322 September 2012


Messages Electronic Journal Upload (EJU) commands

Last Character Received


Field size: 6 characters
Valid range: 000000-999999
Description: The value in this field should be the same as the value in the Last
Character This Block field in the last EJU data message sent by
the terminal. If the value is different, the terminal will not count this
message as an acknowledgement. The last Char Previous Block
and Last Char This Block values are based on a modulus
1,000.000 character count which starts at zero when the applica-
tion will be started and EJU has been activated.

September 2012 323


Electronic Journal Upload (EJU) commands Messages

Acknowledge And Stop

This command acknowledges the last EJU block received by the host, and in
addition indicates that EJU has to be stopped. This will disable the EJU function
until the host sends a new Acknowledge And Continue command or Options
And Timers command. See also ProCash/NDC ProConsult/NDC Installation
manual for EJU configuration.
The following table describes the Acknowledge And Stop message format and
its fields:
table 82: Acknowledge And Stop

Description Mandatory Code No. of Characters


Optional
Message Identifier M 6 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Field Separator (FS) M :1C 1
Command Type M 2 1
Last Character Received M VAR 6

Message Identifier
Field size: 1 character
Valid range: 6
Description: This field specifies the message identifier. The message identifier
for Electronic Journal is 6.

Command Type
Field size: 1 character
Valid range: 2
Description: This field specifies the command type for the Acknowledge And
Stop of message identifier 6.

324 September 2012


Messages Electronic Journal Upload (EJU) commands

Last Character Received


Field size: 6 characters
Valid range: 000000-999999
Description: The value in this field should be the same as the value in the Last
Character This Block field in the last EJU data message sent by
the terminal. The last Char Previous Block and Last Char This
Block values are based on a modulus 1,000.000 character count
which starts at zero when the application will be started and EJU
has been activated.

September 2012 325


NDC Status Messages Messages

NDC Status Messages

Solicited Status (terminal state)

If the status descriptor field contains an ‘F’ in the solicited status message, the
status information will vary according to which of the following terminal
commands has been received by the terminal.
Terminal Command Message Identifier
Send Configuration Information 1
Send Supply Counters 2
Send Error Log Information 4
Send Date/Time Information 5
Send Configuration ID 6
Hardware Configuration Data H
Supplies Data I
Fitness Data J
Tamper and Sensor Status Data K
Software ID and Release Number L
Local Configuration Option Digits M

326 September 2012


Messages NDC Status Messages

Send Configuration Information

This solicited status message is sent to central in response to a Send Configu-


ration Information terminal command message.
table 83: Send Configuration Information

Description Code No. of Characters


message identifier ‘1’ 1
configuration ID --- 4
field separator (FS) :1C 1
hardware fitness --- 22 or 38
field separator (FS) :1C 1
hardware configuration --- 44 or 76
field separator (FS) :1C 1
supply status --- 23 or 26
field separator (FS) :1C 1
sensor status --- 12
field separator (FS) :1C 1
NDC+ release number --- 6
field separator (FS) :1C 1
NDC+ software ID --- 9

Message identifier
Field size: 1
Valid range: 1
Description: This message is sent to central in response to a send configura-
tion information terminal command message.

Configuration ID
Field size: 4
Valid range: 0000-9999
Description: Contains the last four digit configuration ID numbers sent to the
terminal from host.

September 2012 327


NDC Status Messages Messages

Hardware Fitness
Field size: 22 or 38
Valid range: 0-4
Description: Contains one byte per device or major device resource. Each byte
is encoded with an error severity value indicating the current fit-
ness of the device.
The following table describes the meaning of the severity codes:

Code Severity
0 no error
1 routine errors have occurred
2 warning conditions have occurred
3 suspend, terminal is currently in suspend state due to suspected
tampering with this device
4 fatal error condition exists

Routine, warning and fatal conditions can only be cleared by local


supervisor transactions or through an system reboot for some
devices if the reboot flag is set.
The following table gives an overview about the devices of the hardware fitness:
table 84: Hardware Fitness Table

Field Contents Field Contents


0 time of day clock 11 encryptor
1 high order communications 12 security camera
2 system disk 13 door access
3 card reader 14 flex disk
4 cash handler 15 cassette type 1
5 depository 16 cassette type 2
6 receipt printer 17 cassette type 3
7 journal printer 18 cassette type 4
8 reserved 19-20 reserved
9 reserved 21 statement printer
10 night safe depository

328 September 2012


Messages NDC Status Messages

The following table lists devices that are additionally appended in the Hardware
Configuration Status message if command modifier ’6’ for command code ’7’ is
used:
table 85: Hardware Fitness Table Enhanced

Field Contents Field Contents


22 Signage Display 31 Reserved
23 Reserved 32 Digital Audio Service
24 Coin Dispenser 33 Reserved
25 System Display 34 Reserved
26 Media Entry Indicators 35 Reserved
27 Envelope Dispenser 36 Reserved
28 Document Processing Module 37 Reserved
29 Coin Dispensing Module
Tamper Indication
30 Document Processing Module
Tamper Indication Module

Hardware configuration
Field size: 44 or 76
Valid range: see detailed value description
Description: Contains one byte per device or major device resource. Each byte
is encoded with an error severity value indicating the current fit-
ness of the device. See table 86: “Device Configuration Table” on
page 329 for the definition of ech byte.

table 86: “Device Configuration Table” on page 329 mainly contains


expressions of NCR specific hardware. For ProCash/NDC and
ProConsult/NDC this table is just a reference table where the option
bits of each hardware device can be taken and be set in section
[HARDWARE_CONFIGURATION] of configuration file
CUSTOM.PPF, to send the expected values for the host in the
Hardware Configuration Information message.

table 86: Device Configuration Table

Byte Device Description

September 2012 329


NDC Status Messages Messages

0 Product Class
0E 5663
0F 5674
10 5675
11 5684
12 5685
13 5688
14 5665
15 5670
16 personaS75
17 personaS88
18 personaS40
19 personaS70
1A personaS74
1B personaS84
1C personaS85
1E 5305
1F 5886
1 7F No Configuration
2 System Disk
00 Hard Disk present
02 Reserved
3 Magnetic Card Reader/Writer
01 Track 2 (read only)
03 Track 1/2/3 MCRW (write track3 only)
05 Low cost DIP reader
07 3 Track Write MCRW
08 Track 2 Smart Card Reader
09 Track 1/2/3 Smart Card Reader
0A 3 Track Write Smart Card Reader
0B Track 2/3 DIP MSR
0C Track 1/2/3 CIM 86 MCRW
10 Track 1/2 DIP MSR
11 Track 1/2 Swipe Card DIP Reader
1D MIMIC Smart Card DIPReader
4 Cash Handler
00 Standard cash handler not configured
01 Standard cash handler configured
02 Angel spray dispenser configured
5 Depository
00 Not configured
01 Reserved
02 PPD
03 Reserved (third generation ADM)
04 DPM envelope depository (non-5665 SSTs only)
6 Receipt Printer
00 Not configured
01 Plain paper
02 Black dot paper (TOF)
03 Sideways printing, no black mark
04 Sideways printing, black mark
05 Thermal printer - no black mark
06 Thermal printer - black mark
07 Thermal printer - sideways printing, no black mark
08 Thermal printer - sideways printing, black mark

330 September 2012


Messages NDC Status Messages

7 Journal Printer
00 Not configured
01 Integral journal printer
02 Reserved
03 Thermal printer
80 Electronic journal
81 Electronic journal and integral journal printer
82 Reserved
83 Electronic journal and thermal printer
8 Reserved
00 Not configured
01 Configured
9 Reserved
00 Not configured
01 Configured
10 Night Safe Depository
00 Not configured
01 Configured
02 Reserved
11 Encryptor
?0 Not configured
?1 NBS encyptor
02 Reserved
03 Reserved
04 Reserved
?5 EKC encryptor
06 Reserved

? = SST key entry mode (0, B, or C) where:


0 = single length keys without XOR key entry
B = single length keys using XOR key entry
C = double length keys
12 Security Camera
00 Not configured
01 Fixed format (for instance, 3M)
02 Variable format (for instance, D/A)
03 Reserved
04 Digital
13 Door Access
00 Not configured
01 Configured
14 Flex Disk
00 Not configured
01 1.44 MB flex disk connected
02 2.88 MB flex disk connected
15 Tamper Indicat. Bins not DPM or CDM
00 No TI bins present
01 Secure cash, insecure cards, PPD or no PPD
02 Secure cash, insecure cards, secure PPD
03 Secure cash, cards, and PPD or no PPD
16 Cardholder Keyboard
00 Reserved
01 Standard (BAPE) Keyboard
02 EKC Keyboard

September 2012 331


NDC Status Messages Messages

17 Operator Keyboard
00 Not configured
01 Standard keyboard (Basic)
02 Keyboard plus FDK’s (Enhanced)
18 Cardholder Display / Voice
BIT 0 0 - (always)
BIT 1 0 - (always)
BIT 2 0 - Voice not supported
BIT 2 1 - Voice supported if digital audio present
BIT 3 0 - Standard FDK’s
BIT 3 1 - Touch screen
BIT 4 0 - VGA
BIT 4 1 - VGM Translator
BIT 5 0 - (always)
BIT 6 0 - (always)
BIT 7 0 - (always)
19 7F No configuration
20 7F No configuration
21 Statement printer
00 Not configured
01 Configured
02 Reserved
03 Reserved
05 5665 DPM statement printer
09 Enhanced thermal statement printer (SDC+)
22 Signage Display [1]
00 Not configured
01 Configured
23 --- Reserved
24 Coin Dispenser [1]
00 None
01 RMX
02 S4
25 System Display [1]
00 Not configured
01 20 x 40 Display
02 Enhanced Display (16 x 32)
26 Media Entry Indicators [1]
00 Not configured
01 Configured
27 Envelope Dispenser [1]
00 Not configured
01 Configured
02 Reserved
03 Reserved
28 Document Processing Module [1]
00 Not configured
01 5665 DPM configured
02 DP-ATM configured

332 September 2012


Messages NDC Status Messages

29 Coin Dispensing Module Tamper


Indication [1]
00 Not configured
01 Present
30 Document Processing Module Tamper
Indication [1]
00 Not configured
01 Present
31 --- Reserved
32 Digital Audio Service [1]
00 Not configured
01 Present
33-37 --- [1] Reserved

[1] These devices are only appended in the message if command modifier
’6’ is used.

September 2012 333


NDC Status Messages Messages

Supply Status
Field size: 23 or 26
Valid range: 0 - Not Configured
1 - Good State
2 - Media Low
3 - Media Out
4 - Overfilled
Description: Contains one byte of following devices:
table 87: Supply Status Device Table

Field Contents Field Contents


0 reserved 11 - 14 not used = 0
1 reserved 15 cassette type 1
2 not used = 0 16 cassette type 2
3 card capture bin 17 cassette type 3
4 cash handler reject bin 18 cassette type 4
5 deposit bin 19-20 not used = 0
6 receipt paper 21 statement printer
7 journal paper 22 statement ribbon
8 not used = 0 23 reserved [1]
9 not used = 0 24 reserved [1]
10 night safe depository 25 envelope dispenser [1]

[1] These devices are only appended in the message if command modifier
’6’ is used.

Sensor Status
Field size: 12
Valid range: see description
Description: Contains one character per sensor and is identical to the informa-
tion reported in character 2-13 of the Sensors status message.
See section ”Sensor Status (unsolicited) (DID ‘P’)” on page 399
for details.

334 September 2012


Messages NDC Status Messages

NDC+ Release Number


Field size: 6
Valid range: see description
Description: Contains a six digit decimal number. The first pair of digits repre-
sents the release number. The second pair of digits represents
the point release number. The third pair of digits represents the
patch release number.
Example: 060400 is release 06.04.00

NDC+ Software ID
Field size: 9
Valid range: see description
Description: Contains the NDC+ Software ID.
Following values are valid:
G530-0205 (NDC+ Native mode)
G530-0206 (NDC+ Diebold Emulation mode)
ProCash/NDC reports G530-0205 (NDC+ Native mode)

September 2012 335


NDC Status Messages Messages

Send Supply Counters

This solicited status message is sent to the host in response to a “Send Supply
Counters” terminal command message.
table 88: Supply Counters

Description Code No. of Characters


message identifier ‘2’ 1
transaction serial number --- 4
accumulated transaction count --- 7
notes in cassette --- 20
notes rejected --- 20
notes dispensed --- 20
last transaction notes dispensed --- 20
cards captured --- 5
envelopes deposited --- 5
camera film remaining --- 5 (not supported)
last envelope serial number --- 5
coins remaining in safe [---] 20 [1]
coins total dispensed [---] 20 [1]
last transaction coins dispensed [---] 20 [1]
[1] This field is appended only if a coin dispenser module is connected. The field size
depends on how many host hoppers are configured. The default for NDC compatibility is
set to 4 hopper types.

Message identifier
Field size: 1
Valid range: 2
Description: This message is sent to the host in response to a Send Configu-
ration Information terminal command message.

336 September 2012


Messages NDC Status Messages

Transaction serial number


Field size: 4
Valid range: 0000-9999
Description: Contains the TSN of the last transaction processed by the termi-
nal. If this does not correspond to the last TSN sent by host, the
transaction has not been initiated and terminal counters have not
been updated.

Accumulated transaction count


Field size: 7
Valid range: 0000000-9999999
Description: Defines the total number of transactions completed since the ter-
minal was installed, or the non-volatile terminal memory was last
corrupted. The count is reset to 0 after 9,999,999 transactions.

Notes in cassette
Field size: 20
Valid range: 00000-09999; 65535
Description: Consists of four 5 digit decimal counts of the total number of notes
remaining in cassette types 1, 2, 3 and 4. The counts are set by
supervisor functions and are decremented on each dispense
transaction. These counts are zero if not set by the „Standard
Cassette Change“ or „Set Cassette Counters“ SOP function.
If physically more notes are dispensed (dispense below zero) than
initially set (number of notes loaded) via one of the SOP function,
ProCash/NDC sets this counter to value 65535 if the dispense be-
low zero option is enabled.

Notes rejected
Field size: 20
Valid range: 00000-99999
Description: Consists of four 5 digit decimal counts of the total number of notes
moved to the reject bin from cassettes 1, 2, 3 and 4. Although the
fields ‘Notes in Cassettes’ and ‘Notes rejected’ may not be totally
accurate, the sum of these counters for a particular cassette does
accurately represent the difference between the original number
of notes added and the number of notes dispensed.

September 2012 337


NDC Status Messages Messages

Notes dispensed
Field size: 20
Valid range: 00000-99999
Description: Consists of four 5 digit decimal counts of the total number of notes
dispensed from cassettes 1, 2, 3 and 4. These counts are consist-
ent with note counts reported since the counts were last cleared
by a SOP function.

Last transaction notes dispensed


Field size: 20
Valid range: 00000-99999
Description: Consists of four 5 digit decimal counts of the total number of notes
dispensed on the last transaction processed by the terminal.
These field allows the host to recover note counts after power fail-
ure, even if the power failure occurred in the middle of a dispense
operation.

Card captured
Field size: 5
Valid range: 00000-99999
Description: Consists of one 5 digit decimal count of the number of cards cap-
tured since the count was cleared by a SOP function. The count
includes cards captured up to and including the transaction de-
fined in the transaction serial number.

Envelopes deposited
Field size: 5
Valid range: 00000-99999
Description: Consists of one 5 digit decimal count of the number of envelopes
deposited since the count was last cleared by a SOP function. The
count includes envelopes deposited up to and including the trans-
action defined in the transaction serial number.

338 September 2012


Messages NDC Status Messages

Camera film remaining


Field size: 5
Valid range: 00000
Description: Not supported by Wincor Nixdorf terminals. Always returned as
zeros.

Last envelope serial number


Field size: 5
Valid range: 00000
Description: The last envelope serial number is always set to 00000.

September 2012 339


NDC Status Messages Messages

Send Error Log Information

This solicited status message is sent to the host in response to a “Send Error
Log Information” terminal command message. All error log information are
stored in the CMOS file “C:\PROTOPAS\WORK\CCCMOS.BIN”. If the error log
information request (6C) is sent from the host, the terminal reads the contents
from the CMOS and send it to the network.

The error log file can be cleared via the User Exit function. Enter “Individual
Functions” from the main menu and select “Clear Error Log”.
table 89: Send Error Log Information

Description Code No. of Characters


message identifier ‘4’ 1
group number C 1
new entries --- 2
date last cleared --- 12
month --- 2 [1]
day --- 2 [1]
hour --- 2 [1]
minute --- 2 [1]
device identification (DID) --- 1 [1]
maintenance status (M-Status) --- 2 [1]
severity --- 1 [1]
part number --- 1 [1]
maintenance data (M-Data) VAR 23 [1]
field separator :1C 1 [1]
[1] These fields are repeated for each log entry present. The field separator is not present
after the last log entry. In case of a repeated log there are two entries. The first acts as a
header indicating the time of the most recent entry and the number of times repeated. The
following log entry contains the information which has been repeatedly logged by the system,
with the time of the first entry.

Message identifier
Field size: 1
Valid range: 4
Description: This message is sent to central in response to a send error log
group terminal command message.

340 September 2012


Messages NDC Status Messages

Group number
Field size: 1
Valid range: C
Description: This field indicates the group number of the requested group.
‘A’ = Processor system (not supported by Wincor Nixdorf
terminals)
‘B’ = Communications (not supported by Wincor Nixdorf
terminals)
‘C’ = ATM devices

New entries
Field size: 2
Valid range: See description
Description: The number of new entries on the log since last read. If this is
greater than log entries reported it indicates that log entries have
been missed.

Date last cleared


Field size: 12
Valid range: See description
Description: The date and time the log was last cleared in the following format:

YY = Year 00-99
MM = Month 01-12
DD = Day 01-31
HH = Hour 00-23
MM = Minute 00-59
SS = Second 00-59

Month
Field size: 2
Valid range: 01-12
Description: Month log entry

September 2012 341


NDC Status Messages Messages

Day
Field size: 2
Valid range: 01-31
Description: Day log entry

Hour
Field size: 2
Valid range: 00-23
Description: Hour log entry

Minute
Field size: 2
Valid range: 00-59
Description: Minute log entry

Device identification
Field size: 1
Valid range: ‘C’
Description: This field identifies the device for which the log entry was made.
This is the device identification used in all Wincor Nixdorf termi-
nals reporting.
‘A’ Processor system (not supported by Wincor Nixdorf
terminals)

‘B’ Communications (not supported by Wincor Nixdorf


terminals)

‘C’ or greater- ATM device log

‘?’ - Repeat log

342 September 2012


Messages NDC Status Messages

Maintenance status (M-status)


Field size: 2
Valid range: 00-99
Description: For a repeat log entry (’?’) this is field contains the number of times
the log entry is repeated.

Severity
Field size: 1
Valid range: 1-4
Description: Severity of the log entry.

Part number
Field size: 1
Valid range: always zero
Description: Part number of the component of the device.

Maintenance data (M-data)


Field size: 2
Valid range: 0-9; A-F
Description: Maintenance data consisting of a string of hexadecimal charac-
ters. Each pair of characters represents the binary value of a sin-
gle byte of detailed maintenance data. For a repeat log entry this
data field is empty.

September 2012 343


NDC Status Messages Messages

Send date/time information

This solicited status message is sent to the host in response to a send date and
time terminal command message.
table 90: Send Date/Time Info

Description Code No. of Characters


message identifier ‘5’ 1
TOD clock status 0-2 1
terminal date/time --- 12

Message identifier
Field size: 1
Valid range: 5
Description:This message is sent to central in response to a send date and time
information terminal command message.

TOD clock status


Field size: 1
Valid range: 0-2
Description: 0 = Time is actual; 1 = Time is default; 2 = TOD malfunction

Terminal date/time
Field size: 12
Valid range: See description
Description: The actual date and time returned by the terminal clock in format:

YY = Year 00-99
MM = Month 01-12
DD = Day 01-31
HH = Hour 00-23
MM = Minute 00-59
SS = Second 00-59

344 September 2012


Messages NDC Status Messages

Send Configuration ID

This solicited status message is sent to central in response to a


Send Configuration ID terminal command message with command code ’3.
table 91: Send Configuration ID

Description Code No. of Characters


message identifier ‘6’ 1
configuration ID --- 4

Message identifier
Field size: 1
Valid range: ’6’
Description: This message is sent to central in response to a Send Configura-
tion ID terminal command message
(command code ’3’).

Configuration ID
Field size: 4
Valid range: 0000-9999
Description: Contains the last four digit configuration ID number sent to the ter-
minal from host.

September 2012 345


NDC Status Messages Messages

Hardware Configuration Data

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’1’.
table 92: Hardware Configuration Data

Description Code No. of Characters


message identifier ‘H’ 1
configuration ID identifier ’A’ 1
configuration ID --- 4
field separator (FS) :1C 1
product class identifier ’B’ 1
product class --- 2
field separator (FS) :1C 1
hardware configuration identifier ’C’ 1
device identifier --- 1
hardware configuration data --- 2
group separator (GS) [1] [:1D] 1
[1]
device identifier [---] 1
hardware configuration data [1]
[---] 2
[1] These fields, devided through group separators, are repeated for each of the devices
present in the ATM.

Message identifier
Field size: 1
Valid range: ’H’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’1’).

346 September 2012


Messages NDC Status Messages

Configuration ID Identifier (’A’)


Field size: 1
Valid range: ’A’
Description: Identifier of the four digit configuration ID number that follows.

Configuration ID
Field size: 4
Valid range: 0000-9999
Description: Contains the last four digit configuration ID number sent to the ter-
minal from host.

Product class ID Identifier (’B’)


Field size: 1
Valid range: ’B’
Description: Identifier of the two digit product class that is included in the fol-
lowing two fields of the message.

Product class
Field size: 2
Valid range: 0000-9999
Description: This two character field contains the product class of the terminal.
The following entries are possible:

Product class Sytem Type


0E 5663
0F 5674
10 5675
11 5684
12 5685
13 5688
14 5665
15 5670
16 personaS75
17 personaS88
18 personaS40
19 personaS70
1A personaS74
1B personaS84
1C personaS85

September 2012 347


NDC Status Messages Messages

Hardware configuration identifier (’C’)


Field size: 1
Valid range: ’C’
Description: This field indicates that hardware configuration information of
each present device follows. It is devided into a series of subfields
separated by group separators. One subfield consists of Device
Identifier and Hardware Configuration Data.
If a device is not present, there will be no corresponding Device
Identifier subgroup in the field.

Device identifier
Field size: 1
Valid range:
Description: This field contains the Device Identifier of each present device.

Hardware configuration data


Field size: 2
Valid range: see table 86: “Device Configuration Table” on page 329.
Description: This field contains the two digit hardware configuration informa-
tion of each present device. It contains information for each device
indicating which variant of the device is configured and if any other
configuration data is available.

The following table lists the Device Identifier Graphic (DIG) of the devices that
can be included in the Hardware Configuration Data field:
table 93: Hardware Configuration Data DIG Table

DIG Data Device Description


Length
A - Time-of-Day Clock
B - High Order Communications
C 2 System Disk
D 2 Magnetic Card Reader/Writer
E 2 Cash Handler
F 2 Envelope Depository

348 September 2012


Messages NDC Status Messages

G 2 Receipt Printer
H 2 Journal Printer
I - Reserved
J - Reserved
K 2 Night Safe Depository
L 2 Encryptor
M 2 Security Camera
N 2 Door Access System
O 2 Off-Line Disk
P 2 TI Bins
Q 2 Cardholder Keyboard
R 2 Operator Keyboard
S 2 Cardholder Display
T - Reserved
U - Reserved
V 2 Statement Printer
W - Reserved
X - Reserved
Y 2 Coin Dispenser
Z 2 System Display
[ 2 Media Entry Indicators
\ 2 Envelope Dispenser
] 52 Document Processing Module (DPM)
^ 2 CDM Tamper Indicators
- 2 DPM Tamper Indicators
a 2 Digital Audio Service
[-] - means that this DIG is not included in the Hardware Configuration
Data field

September 2012 349


NDC Status Messages Messages

Supplies Data

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’2’.
table 94: Supplies Data

Description Code No. of Characters


message identifier ‘I’ 1
supply status identifier ’A’ 1
device identifier --- 1
supply status data --- VAR
group separator (GS) [1] [:1D] 1
[1]
device identifier [---] 1
supply status data [1] [---] VAR
[1] These fields, devided through group separators, are repeated for each of the devices
present in the ATM.

Message identifier
Field size: 1
Valid range: ’I’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’2’).

Supply status identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that supply data of each present device fol-
lows. It is devided into a series of subfields separated by group
separators. One subfield consists of Device Identifier and follow-
ing supply data.
If a device is not present, there will be no corresponding Device
Identifier subgroup in the field.

350 September 2012


Messages NDC Status Messages

Supply status data


Field size: VAR
Valid range: each element of the supplies status data will take one of the fol-
lowing values:
’0’ Not configured/reserved
’1’ Good state
’2’ Media low
’3’ Media out
’4’ Overfill
Description: This field contains information for each present device indicating
the condition of the parts of the device that are replenishable.

The following table lists the Device Identifier Graphic (DIG) of the devices that
can be included in the Supplies Status Data field:
table 95: Supplies Status Data DIG Table

DIG Data Device Description


Length
A - Time-of-Day Clock
B - High Order Communications
C - System Disk
D 1 Magnetic Card Reader/Writer
E 5 Cash Handler
F 1 Envelope Depository
G 4 Receipt Printer
H 3 Journal Printer
I - Reserved
J - Reserved
K 1 Night Safe Depository
L - Encryptor
M 1 Security Camera
N - Door Access System
O - Off-Line Disk
P - TI Bins
Q - Cardholder Keyboard

September 2012 351


NDC Status Messages Messages

R - Operator Keyboard
S - Cardholder Display
T - Reserved
U - Reserved
V 5 Statement Printer
W - Reserved
X - Reserved
Y 4 Coin Dispenser
Z - System Display
[ - Media Entry Indicators
\ 1 Envelope Dispenser
] 8 Document Processing Module (DPM)
^ - CDM Tamper Indicators
- - DPM Tamper Indicators
a - Digital Audio Service
[-] - means that this DIG is not included in the Supply Status Data field

352 September 2012


Messages NDC Status Messages

Fitness Data

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’3’.
table 96: Fitness Data

Description Code No. of Characters


message identifier ‘J’ 1
hardware fitness identifier ’A’ 1
device identifier --- 1
fitness --- 1
group separator (GS) [1] [:1D] 1
[1]
device identifier [---] 1
fitness [1] [---] 1
[1] These fields, devided through group separators, are repeated for each of the devices
present in the ATM.

Message identifier
Field size: 1
Valid range: ’J’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’3’).

Hardware fitness identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that the hardware fitness of each present de-
vice follows. It is devided into a series of subfields separated by
group separators. One subfield consists of Device Identifier and
following hardware fitness.
If a device is not present, there will be no corresponding Device
Identifier subgroup in the field.

September 2012 353


NDC Status Messages Messages

Fitness
Field size: 1
Valid range: each fitness character is encoded with one of the following error
severity values, indicating the current fitness of the device:
’0’ No error/ not supported
’1’ Routine errors have occurred
’2’ Warning conditions have occurred, investigation required
’3’ Suspend Mode. The terminal is currently in the suspend
mode due to suspected tampering with this device
’4’ Fatal error condition exists on this device
Routine, Warning and fatal errors can only be cleared by entering
Supervisor Mode or local Supervisor function “Clear Fitness”.
Description: This field contains information for each present device indicating
the current fitness the device present.

table 97: Fitness Data DIG Table

DIG Data Device Description


Length
A 1 Time-of-Day Clock
B 1 High Order Communications
C 1 System Disk
D 1 Magnetic Card Reader/Writer
E 5 Cash Handler
F 1 Envelope Depository
G 1 Receipt Printer
H 1 Journal Printer
I - Reserved
J - Reserved
K 1 Night Safe Depository
L 1 Encryptor
M 1 Security Camera
N 1 Door Access System
O 1 Off-Line Disk
P - TI Bins
Q 1 Cardholder Keyboard

354 September 2012


Messages NDC Status Messages

R - Operator Keyboard
S - Cardholder Display
T - Reserved
U - Reserved
V 1 Statement Printer
W - Reserved
X - Reserved
Y 5 Coin Dispenser
Z - System Display
[ - Media Entry Indicators
\ 1 Envelope Dispenser
] 14 Document Processing Module (DPM)
^ - CDM Tamper Indicators
- - DPM Tamper Indicators
a 1 Digital Audio Service
[-] - means that this DIG is not included in the Fitness Data field

September 2012 355


NDC Status Messages Messages

Tamper and Sensor Status Data

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’4’.
table 98: Tamper and Sensor Status Data

Description Code No. of Characters


message identifier ‘K’ 1
sensor status identifier ’A’ 1
sensor status --- 5
field separator :1C 1
tamper indicator identifier ’B’ 1
tamper status --- VAR

Message identifier
Field size: 1
Valid range: ’K’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’4’).

Sensor status identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that a five bytes sensor status follows. These
sensor status bytes are identical to the information reported in
bytes 2-6 of the Sensor Status message. See section ”Sensor
Status (unsolicited) (DID ‘P’)” on page 399.

Sensor Status
Field size: 5
Valid range: 0 - 1
Description: These 5 bytes represents the same sensor status as reported in
the unsolicited Sensor Status message (DID ’P’).

356 September 2012


Messages NDC Status Messages

Tamper status identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that TI sensor status information follows.

Tamper Status
Field size: VAR
Valid range: 0 - 1
Description: Character 1-7 of the tamper status data are identical to the infor-
mation reported in bytes 7-13 of the Sensor Status message. See
section ”Sensor Status (unsolicited) (DID ‘P’)” on page 399. The
characters 8-13 are devices that are not supported by Pro-
Cash/NDC and appended as zeros in this message.
If a device is not configured, any associated TI byte will take the
value ’0’.

Software ID and Release Number

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’5’.
table 99: Software ID and Release Number

Description Code No. of Characters


message identifier ‘L’ 1
release number identifier ’A’ 1
NDC release number --- VAR (6)
field separator :1C 1
software ID identifier ’B’ 1
NDC software ID --- VAR (9)

See description of the fields on the following page.

September 2012 357


NDC Status Messages Messages

Message identifier
Field size: 1
Valid range: ’L’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’5’).

Release number identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that a six digit release number follows.

NDC release number


Field size: 6
Valid range: VAR
Description: Contains a six digit decimal number. The first pair of digits repre-
sent the release number. The second pair of digits represent the
point release number. The third pair of digits represent the patch
number (Example : 060000 is release 06.00.00).

Software ID identifier (’B’)


Field size: 1
Valid range: ’B’
Description: This field indicates that the sftware ID follows.

NDC Software ID
Field size: 9
Valid range: VAR
Description: Contains the NDC+ software ID. For this release the field is set to
following value: G530-0205 (NDC+ Native mode).

358 September 2012


Messages NDC Status Messages

Extended Hardware Configuration

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’6’. The message has the same structure as
with command modifier ’1’ except it has included additional devices in the
Hardware Fitness fields. Refer to table 85: “Hardware Fitness Table Enhanced”
on page 329 for description of the additional device fields.

September 2012 359


NDC Status Messages Messages

Local Configuration Option Digits

This solicited status message is sent to central in response to a


Send Configuration Information terminal command message with command
code ’7’ and command modifier ’7’.
table 100: Local Configuration Option Digits

Description Code No. of Characters


message identifier ‘M’ 1
local options identifier ’A’ 1
local option digits --- VAR (16)

Message identifier
Field size: 1
Valid range: ’M’
Description: This message is sent to central in response to a send configura-
tion information terminal command message (command code ’7’
inclusive command modifier ’7’).

Local options identifier (’A’)


Field size: 1
Valid range: ’A’
Description: This field indicates that local option digits follows.

Local option digits


Field size: 16
Valid range: VAR
Description: These characters represent the values of the Local Option Digits.
You can enable specific options via parameter LOCAL_MODE_
OPTIONS in configuration file CUSTOM.PPF.

360 September 2012


Messages NDC Status Messages

Solicited Status (device fault)

When the status descriptor is ‘8’ - device fault, the following information is
present in the status information field.
table 101: Solicited Status (Device Fault)

Description Code No. of Characters


device identifier --- 1
transaction status VAR 17
field separator [:1C] 1
error severity VAR 5
field separator [:1C] 1
diagnostic M-status --- VAR
diagnostic M-data [---] VAR
field separator [:1C] 1
supplies status VAR 5

Device Identifier
Field size: 1
Valid range: See description
Description: This field identifies the device by means of a device identification
(DID). The following table shows DID entries of solicited status
messages which Wincor Nixdorf terminals may send in response
for transaction reply commands:

DID Device
D card reader/writer
E cash handler
F depository
Y coin dispenser

September 2012 361


NDC Status Messages Messages

Transaction Status
Field size: 17
Valid range: See description
Description: Contains information required to make a transaction completion
decision. The length of the field is different for each device but
each device will always send the same number of characters. See
next section for detailed descriptions for each device.

Error Severity
Field size: 2
Valid range: 0-99
Description: Contains information required to decide locking the device or con-
tinue to use. The length of the filed is one character with the ex-
ception of currency handler which sends five characters. Each
character is always coded in the same way:
table 102: Error Severity Table

Code Short Description Detailed Description


0 no error Continue to use. No error has occurred.
Diagnostic information follows.
1 routine error Continue to use. A routine error has occurred
and diagnostic information follows.
2 warning Continue to use but it is recommended that the
network operator is informed of the error or
exception condition. Diagnostic information
follows.
3 suspend The terminal will suspend transaction
processing on completion of the current trans-
action (state 000 entered). This is sent if
cardholder tampering is suspected.
4 fatal Device is out of service and will continue to
report intervention at the terminal. It is recom-
mended that the terminal is put out of service or
transactions involving the faulty device are not
allowed.

362 September 2012


Messages NDC Status Messages

Diagnostic M-Status
Field size: 2
Valid range: 0-99
Description: The two digit M-Status contain the NDC specific main error status
which gives a global information of the error situation.
The M-Status values can be configured (mapped) for each error
CLASS and error CODE of vendor specific errors (on Wincor Nix-
dorf systems CSC-W32 errors) via parameter “M_STATUS” in
configuration file CCERRMAP.INA. Please refer to the Pro-
Cash/NDC ProConsult/NDC Installation manual section “Custom-
ize Error Mapping Table CCERRMAP” how to configure M-Status.

Diagnostic M-Data
Field size: 0-30
Valid range: 0-9; A-F
Description: This field is used to log additional M-Data status information. It
can be variable depending on the device. M-Data are appended
to the M-Status without separator. M-Data contain additional
hardware status information of NCR hardware. On Wincor Nixdorf
systems this hardware status information can be configured
(mapped) via parameter “M_DATA” in configuration file CCER-
RMAP.INA to the vendor specific error code with the closest
match to the meaning of the NCR specifc M-Data code. A cross
reference of the M-Data descriptions can be taken from the origi-
nal Diagnostic Status Code Note Book that can be ordered from
NCR. (See also M-Status description).

Supplies Status
Field size: 5
Valid range: 0-99
Description: Contains information related to the state of supplies (paper, cur-
rency, magnetic cards, envelopes) in the terminal. This field con-
tains one character for each supplies container managed by the
device.

September 2012 363


NDC Status Messages Messages

Each character is always coded in the same way:


table 103: Supplies Status Table

Code Short Description Detailed Description


0 no-new-state The state of the container can be assumed as
unchanged
1 good state The state of the container is known to be good
(not low empty or overfilled).
2 media low The container has reached the low condition.
3 media out The container is empty.
4 overfill The container has sensed a full condition and
should be emptied.

If this field is omitted it can be assumed that there is no new state on


any container.

364 September 2012


Messages NDC Status Messages

Encryptor Initialisation Data

This message class/sub-class is used for initialising the encryptor module, and
is used in a similar way to the terminal state message. However, it does not
contain any of the fields associated with message authentication, and is
therefore suitable for the initial exchange of data required to initialise the
encryptor. This message is solicited and is returned in response to an Extended
Encryption Key Change message sent from the central.
table 104: Encryptor Initialisation Data

Description Code No. of Characters


solicited/unsolicited ID ‘2’ 1
message identifier ‘3’ 1
field separator :1C 1
logical unit number (LUNO) [X] 3
field separator (FS) :1C 1
field separator (FS) :1C 1
information identifier --- 1
field separator (FS) [:1C] 1[1]
encryptor information [---] VAR
[1] This field separator is omitted if the message contains no encryptor information.
This is the case for Information Identifier = ‘5’.

The following paragraphs describe the fields in the Transaction Request


message.

Solicited/unsolicited message field


Field size: 1 character
Valid range: 1-2
Description: This field tells the network whether the message is solicited or un-
solicited. The valid entries for this field are as follows:

1 - unsolicited message
2 - solicited message

For the Encryptor Initialisation Data message, this field will be 2.

September 2012 365


NDC Status Messages Messages

Message identifier field


Field size: 1 character
Valid range: 3
Description: This one-character data field defines the type of message being
transmitted. The only valid value for the Encryptor Initialisation
Data is 3.

Logical unit number (LUNO)


Field size: 3 or 9 characters
Valid range: See description
Description: This three-character data field is defined in the configuration data
transmitted to the terminal. If a machine number is entered, this
field will contain nine characters with the last six characters of this
field being the terminal number used for MACing. See section
”Message Authentication (MAC)” on page 221 for further informa-
tion.

Information Identifier
Field size: 1 character
Valid range: See description
Description: This field identifies the type of information sent, as follows:
•‘1’ - EPP Serial Number and Signature
•‘2’ - EPP Public Key and Signature
•‘3’ - New Key Verification Value (KVV) for key just loaded or
reactivated
•‘4’ - Keys Status (KVVs)
•‘5’ - Key Loaded
•‘6’ - Key Entry Mode

366 September 2012


Messages NDC Status Messages

Encryptor Information
Field size: variable
Valid range: See description
Description: Encryptor Information, dependent on the Information Identifier as
follows:
Information Identifier ’1’:
EPP Serial Number
Size: 8
EPP Serial Number Signature, created using the SK-NCR key,
and base 94 encoded. For further details of EPP authentication
and base 94 encoding.
Size: 320

Information Identifier ’2’:


EPP Public Key, base 94 encoded.
Size: 320
EPP Public Key Signature, created using the SK-NCR key, and
base 94 encoded.
Size: 320

Information Identifier ’3’:


New Key Verification Value (KVV)
Size: 6 or 72

Information Identifier ’4’:


Keys Status, containing KVVs as follows:
- Master Key KVV
- Communications Key KVV
- MAC Key KVV
- B-Key KVV
- VISA Master Key KVV
Size: 6 for each
- VISA Key Table KVVs
Size: 72
Note: If a key has not been loaded, its KVV will be six zeros.

September 2012 367


NDC Status Messages Messages

Information Identifier ’5’:


For key loaded this field is absent

Information Identifier ’6’:


Key Entry Mode, a single character in the range ‘1’ to ‘4’ as
follows:
•‘1’ - Single length without XOR
•‘2’ - Single length with XOR
•‘3’ - Double length with XOR
•‘4’ - Double length, restricted
Size: 1

368 September 2012


Messages NDC Status Messages

Unsolicited Device Status

The following table shows the structure of the status information field in
unsolicited status messages of NDC.
table 105: Unsolicited Device Status

Description Code No. of Characters


device identifier (DID) --- 1
device status VAR 13
field separator [:1C] 1
error severity VAR 5
field separator [:1C] 1
diagnostic M-status --- VAR
diagnostic M-data [---] VAR
field separator [:1C] 1
supplies status VAR 5

Device Identifier (DID)


Field size: 1
Valid range: See description
Description: This field identifies the device by means of a device identification
(DID).

Device Status
Field size: 13
Valid range: See description
Description: Used for recording any transaction exceptions of device state
changes. For devices which report both solicited and unsolicited
status messages a common set of transaction device status
codes are defined for use in either type of message. When
processing a transaction reply command any unsolicited transac-
tion exceptions are reported prior to the solicited device fault or
ready status.

September 2012 369


NDC Status Messages Messages

Error Severity
Field size: 2
Valid range: 0-99
Description: See section ”Solicited Status (device fault)” on page 361

Diagnostic M-Status
Field size: 2
Valid range: 0-99
Description: The two digit M-Status contain the NDC specific main error status
which gives a global information of the error situation.
The M-Status values can be configured (mapped) for each error
CLASS and error CODE of vendor specific errors (on Wincor Nix-
dorf systems CSC-W32 errors) via parameter “M_STATUS” in
configuration file CCERRMAP.INA. Please refer to the Pro-
Cash/NDC ProConsult/NDC Installation manual section “Custom-
ize Error Mapping Table CCERRMAP” how to configure M-Status.

Diagnostic M-Data
Field size: 0-30
Valid range: 0-9; A-F
Description: This field is used to log additional M-Data status information. It
can be variable depending on the device. M-Data are appended
to the M-Status without separator. M-Data contain additional
hardware status information of NCR hardware. On Wincor Nixdorf
systems this hardware status information can be configured
(mapped) via parameter “M_DATA” in configuration file CCER-
RMAP.INA to the vendor specific error code with the closest
match to the meaning of the NCR specifc M-Data code. A cross
reference of the M-Data descriptions can be taken from the origi-
nal Diagnostic Status Code Note Book that can be ordered from
NCR. (See also M-Status description).

Supplies Status
Field size: 5
Valid range: 0-99
Description: See section ”Solicited Status (device fault)” on page 361

370 September 2012


Messages NDC Status Messages

Power Up (unsolicited) (DID ‘B’)

This message is used to inform the host that a power interruption or system
reboot has occurred. Under such circumstances, the message cannot be sent
until the communication with the host has been reestablished. The status field
for this type message is composed of the following sub fields:

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 B Indicates a power failure.
Device Status 4 U VAR Four characters (‘0000’ -
‘9999’) defining the
configuration number of
the customization data.
The host ensures that the
terminal has the correct
CI before sending a go in
service command.

September 2012 371


NDC Status Messages Messages

Card Reader (sol./unsol.) (DID ‘D’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 D Indicates a card reader
unit message
Transaction 1 U 0 No transaction exception
Device Status; condition occurred but
gives details of any consult other fields for
transaction related error severity, diagnostic
exception status or supplies status
condition detected changes.
while processing a S/U 1 Cardholder did not take
card at the his card within the
terminal. allowed time and it was
captured or jammed.
S/U 2 The mechanism failed to
eject the card and it was
captured or jammed.
S/U 3 The mechanism failed to
update Track 3 on the
card.
S/U 4 Invalid Track 3 data
received from Central
S/U 9 Consecutive Chip contact
errors occurred
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision.

372 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Diagnostic 2-10 00 Operation successful
M-status and 01 Blank track
M-Data 02 Track not supported
03 Read error
04 Write error
05 No card in reader at start
of command
06 Card removed during
capture
07 Shutter jammed open
08 Shutter switch failure
detected
09 Error recovery successful
10 shutter jammed closed
11 Card jam (not during
capture)
12 Card captured after
unsuccessful eject
13 Possible cardholder
tampering
14 Too many consecutive
read errors
15 Too many consecutive
write errors
16 Too many consecutive
card jams

September 2012 373


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
17 Too many consecutive
shutter jammed closed
18 Card jam during capture
19 Too many consecutive
invalid cards
20 Device still inoperative
21 No card during clean test
22 Speed out of spec. (fast)
23 Speed within +3%
24 Speed within +-1%
25 Speed within -3%
26 Speed out of spec. (slow)
27 Invalid card detected
33 CIM service test failed
35 Error in track 3 data
37 CROPF feature not supp.
38 LFCC bin full soon/full
40 LFCC bin removed
41 CROPF feature failure
50 Card not in SCRW stage
position
51 Smart card stopper pin or
contacts lowered, unable
to capture
52 Invalid smart card
command code error
53 Invalid smart card
command data error
54 SCIF not configured/not
responsing
55 SCIF response timeout
exeeded
56 Card reader is in SCRW
mode (diagnostics only)
57 Invalid smart card
response length

374 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
64 Invalid SCIF command
code
65 Invalid SCIF command
format
66 No smart card encryptor
response error
67 Invalid key ID
68 Invalid key type
69 Invalid parent key type
70 Invalid key - doesn’t exist
71 Password not decimal
72 Password no match
73 Key integrity error
74 Key parity error
75 Invalid data format
76 Stopper PIN failure
77 Contact unit failure
78 Card movement failure
79 Smart card switch off
failure
80 Smart card removed error
81 No smart card response
82 Smart card transmission
error
83 Smart card switched off
84 Illegal card type/param.
85 Power up ime exceeded
86 ANSI PIN block error
87 CIM self test failed
88 CIM security module
defective
89 CIM security module
communication failure
90 CIM interface board
defective
91 CIM interface board
communication failure

September 2012 375


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Supplies Status 1 0 No new state
1 No overfill condition
4 Overfill condition

376 September 2012


Messages NDC Status Messages

Dispenser (sol./unsol.) (DID ‘E’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 E Indicates a dispenser
solicited or unsolicited
message.
Transaction Status 1 U 0 Successful operation, but
(T-code plus an exception condition
T-data); gives occurred which is detailed
details of a in later fields.
dispense S 1 Short dispense
operation in S 2 No notes dispensed
response to a S 3 Faulty dispense. Notes
transaction reply dispensed unknown. The
command following counts contain
message. requested dispense
values.
S 4 No notes dispensed or
card not ejected. This
status is returned on a
card before cash trans-
action if the stack
operation fails and the
notes are purged prior to
card eject.
U 5 Some notes have been
retracted following a
Present and Notes not
taken time-out. The
number of notes retracted
is unknown.
Characters 2-9 Characters Cass Types
(T-Data) contain
notes dispensed 2-3 logical cassette 1
counts. Each pair 4-5 logical cassette 2
of characters 6-7 logical cassette 3
represents a two- 8-9 logical cassette 4
digit decimal value
in range 00-99 per
cassette type

September 2012 377


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Error Severity 5 0-4

Character ’0’ Severity info related to


complete device.
Character ’1’ Severity related to
cassette type 1.
Character ’2’ Severity related to
cassette type 2.
Character ’3’ Severity related to
cassette type 3.
Character ’4’ Severity related to
cassette type 4.
Diagnostic 2-32 00 No error
M-status and 01 Pick requested from non-
M-data installed cassette
02 Too many bills being
rejected
03 Pick failure
04 Pick failure and low (out
of bills)
05 Sensor failure or currency
jam
06 Divert gate fault
07 Reject bin inoperative
08 Reject bin overfill
09 Comm failure between
dispenser and terminal
10 Fatal previous error
11 Unrecovered previous
error

378 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
12 Present mechanism
failed or jammed
13 Exit shutter jammed open
14 Exit shutter jammed
closed
15 Bills passing overfill
sensor on present
operation
16 Timing disk did not
operate correctly
17 Exit sensor failed to clear
18 Timing disk did not
operate correctly
19 Exit sensor blocked
initially on next operation
20 Not configured
21 Security violation
22 Security inhibition
23-27 Reserved
28 An area of NVRAM
cannot be accessed
29 Presenter transport
timing disk did not
operate correctly or motor
failed
30 One of the presenter
transport sensors failed
clear or blocked
31 Reserved
32 Heartbeat on execution
processor failed (80652)
33 Communications failure
on the I2C bus of the
execution processor

September 2012 379


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
34 A present bills operation
has been attempted
without any bills being
stacked or a retract
operation has been
attempted with no bills
presented.
35 Operation incomplete due
to ac and 24V dc power
disconnection through
interlock.
36 Pick valve test not
attempted because
cassettes were installed
37 TI service switched ON
38 TI service switched OFF
39 LVDT or associated
circuitry malfunctioning

40 Bill parameters not


configured
41 An attempt to pick from a
cassette which has been
disabled for In Service
Replenishment
Supplies Status. 5
Indicates the state
of the reject bin
and currency
cassettes.

Codes for the 0 no new state


reject cassette 1 no overfill condition
(character ’0’) 4 overfill condition

Codes for disp. 0 no new state


cass. types 1-4 1 Sufficient notes
(character ’1’ - ’4’) 2 Low on notes
3 Out of notes

380 September 2012


Messages NDC Status Messages

Coin Dispenser (sol./unsol.) (DID ‘Y’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 Y Indicates a coin
dispenser solicited or
unsolicited message.
Transaction Status 1 S/U 0 Good operation. All coins
(T-code plus were successfully
T-data); gives dispensed but some
details of a exception occurred as
dispense detailed in the accompa-
operation in nying diagnostic status.
response to a S 1 The coin low thresholds
transaction reply for each hopper were not
command set during the configu-
message. ration off the machine. No
coins have been
dispensed.
S 3 The coin dispense
operation was not started
for one of the following
reasons:
1. A requested hopper
was either fatal or out

2. The coin dispenser


was in a position where
coins cannot be
dispensed to the
cardholder.
3. The low condition has
been reached and there
are insufficient coins to
perform the dispense.
No coins have been
dispensed.

September 2012 381


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
S 4 The coin dispense
operation has failed due
to a problem other than a
jam. Some coins may
have been dispensed.
S 9 The coin dispense
operation has failed due
to a jam in the hopper.
Some coins may have
been dispensed.
S : The coin dispense
operation has failed due
to a jam in the transport
chute. Some coins may
have been dispensed.
S ; The transport chute exit
sensor was blocked at the
start of the coin dispense
operation. No coins have
been dispensed.
S < A coin dispense operation
was attempted while the
severity of the CDM was
fatal. No coins have been
dispensed.
S = Tampering was detected
during the coin dispense
operation. The coin
dispense has failed due
to the module being
accessed during the
dispense. Some coins
may be dispensed.

382 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Characters 2-9 Characters Coin Hopper Types
(T-Data) contain
coins dispensed 2-3 logical hopper 1
counts. Each pair 4-5 logical hopper 2
of characters 6-7 logical hopper 3
represents a two- 8-9 logical hopper 4
digit decimal value
in range 00-50 per
hopper type
Error Severity 5 0-4

Character ’0’ Severity info related to


complete device.
Character ’1’ Severity related to hopper
type 1.
Character ’2’ Severity related to hopper
type 2.
Character ’3’ Severity related to hopper
type 3.
Character ’4’ Severity related to hopper
type 4.
Diagnostic 2-32
M-status and
M-data

Supplies Status. 5
Indicates the state
of each coin
hopper type.

Codes for coin 0 no new state


hopper types 1-4 1 sufficient coins
(character ’1’ - ’4’) 2 Low on coins
3 coin hopper empty

September 2012 383


NDC Status Messages Messages

Depository (sol./unsol.) (DID ‘F’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 F Indicates a depository
solicited or unsolicited
message.
Transaction Status 1 U 0 Successful operation, but
(T-code plus an exception condition
T-data); gives occurred which is detailed
details of a deposit in the following field.
operation in S 1 Time-out on cardholder
response to a deposit.
transaction reply S 2 Failure to enable
command mechanism for a deposit
message S 3 Deposit failed, cardholder
has access to envelope.
This status is also
returned if there is any
doubt about cardholder
access.
S 4 Deposit failed, cardholder
does not have access to
envelope
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision.

384 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Diagnostic 2-22 00 No error
M-status and 01 Transport jam
M-data 02 Transport jam and shutter
jammed open
03 Transport jam and shutter
jammed closed
04 Shutter jammed open
05 Shutter jammed closed
06 Transport sensor failure
07 Communication failure
within the atm
08 Invalid device print head
status
09 Invalid device module
status
10 Deposit not done, error
count exceeded
11 Deposit bin overfill
13 Timing disk failure
15 Transport motor failure
50 Anti fishing sensor error
51 Motor speed too fast
52 Print head removed
55 Interlock failed
Supplies Status 1 0 no envelope deposited
1 no overfill condition
4 overfill detected

September 2012 385


NDC Status Messages Messages

Envelope Dispenser (unsolicited) (DID ‘\’

ProCash/NDC sends unsolicited envelope dispenser messages depending on


the value of the enhanced configuration option 23. See section “Enhanced
Configuration Parameters Load” on page 271 for details.

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 \ indicates a depository
solicited or unsolicited
message.
Device Status. 1 U 0 Envelope presentation
Indicates whether successful
the last transaction
was successful 1 Failure - envelope not
presented or retracted
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision.
Diagnostic 2-8 00 No error
M-status and 01 Transport jam before exit
M-data sensor
02 Transport jam at exit
sensor
03 Exit sensor failure
shutter jammed open
04 Bin low sensor failure
05 Timing disk sensor failure
06 Bin is low and failed to
present, EMPTY.
Supplies Status 1 1 Sufficient envelopes
2 Envelopes low
3 Envelopes exhausted

386 September 2012


Messages NDC Status Messages

Receipt Printer (unsolicited) (DID ‘G’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 G Indicates a receipt printer
unsolicited message.
Transaction/ 1 U 0 Successful print
Device Status.
Indicates whether S 1 Print operation not
or not the print was successfully completed
successfully
completed. U 2 Device not configured
error severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-10 00 No error
M-status and 01 Head jam/ Knife jam
M-data 02 Failed to go not busy
03 Black mark error
04 Always saw the black
mark
05 Paper out
07 Paper not loaded or
Paper jam before
transport
08 Communication error
09 Printer open
10 Ribbon needs replaced
soon
11 Printhead needs replaced
soon
12 Knife needs replaced
soon

September 2012 387


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
13 Ribbon needs replaced
now
14 Printhead needs replaced
now
15 Sideways communication
error
16 Eject jam
Supplies Status 1 CHAR CODE
0 1 Sufficient paper
2 Paper low
3 Paper exhausted
1 1 Ribbon o.k.
2 Ribbon replacement
recommended
3 Ribbon replacement
mandatory
2 1 Printhead o.k.
2 Printhead replacement
recommended
3 Printhead replacement
mandatory
3 1 Knife o.k.
2 Knife replacement recom-
mended

388 September 2012


Messages NDC Status Messages

Journal Printer (unsolicited) (DID ‘H’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 H Indicates a journal printer
unsolicited message.
Transaction/ 1 U 0 Successful print.
Device Status. S 1 Print operation not
Indicates whether successfully completed
or not the print was S 2 Device not configured
successfully
completed.
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-10 00 No error
M-status and 01 Head jam/ Knife jam
M-data 02 Failed to go not busy
03 Black mark error
04 Always saw the black
mark
05 Paper out
07 Paper not loaded or
paper jam before
transport
08 Communication error
09 Printer open
10 Ribbon needs replaced
soon
11 Printhead needs replaced
soon
12 Knife needs replaced
soon

September 2012 389


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
13 Ribbon needs replaced
now
14 Printhead needs replaced
now
15 Sideways communication
error
16 Eject jam
Supplies Status 1 CHAR CODE
0 1 Sufficient paper
2 Paper low
3 Paper exhausted
1 1 Ribbon o.k.
2 Ribbon replacement
recommended
3 Ribbon replacement
mandatory
2 1 Printhead o.k.
2 Printhead replacement
recommended
3 Printhead replacement
mandatory

390 September 2012


Messages NDC Status Messages

Statement Printer (sol./unsol.) (DID ‘V’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 V Indicates a statement
printer sol./unsolicited
message.
Transaction/ 1 U 0 Successful print, but
Device Status. consult other fields for
In a solicited status Error Severity, diagnostic
it gives details of status or supplies status
any transaction change.
oriented faults. In S/U 1 Print / cut not successful
an unsolicited S 2 Device not configured
status it indicates a U 3 Statement present in
transport error or a transport
cut and deliver U 4 Cardholder pressed
error in the close cancel during a “print
state. statement and wait”
function
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-32 00 No error
M-status and 01 Mechanical jam
M-data 02 Communication error
04 Black mark error
05 Media jam (fatal), or exit
sensor error (warning)
07 Paper out
08 Ribbon needs replaced
now (Fatal)
08 Ribbon needs replaced
soon (Warning)

September 2012 391


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Diagnostic 2-16 09 Knife needs replaced
M-status and soon
M-data 10 Printhead needs replaced
now (Fatal)
10 Printhead needs replaced
soon (Warning)
11 Printer left open
16 Capture jam
17 Media removed by
customer during capture
18 Media stuck in throat,
unable to pull into printer -
possible customer
tampering
19 No paper present at start
of command
20 Printer malfunction -
paper present
21 Bin overfill
22 Print attempted beyond
end of media
23 Printer fatal
33 Buncher communica-
tions failure
34 Clamp drive jammed
open
35 Clamp drive jammed
open
36 Capture bin full

392 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Supplies Status 1 CHAR CODE
0 1 Sufficient paper
2 Paper low
3 Paper exhausted
1 1 Ribbon o.k.
2 Ribbon replacement
recommended
3 Ribbon replacement
mandatory
2 1 Printhead o.k.
2 Printhead replacement
recommended
3 Printhead replacement
mandatory
3 1 Knife o.k.
2 Knife replacement recom-
mended
3 Knife replacement
mandatory
4 1 Capture bin o.k.
4 Capture bin overfill

September 2012 393


NDC Status Messages Messages

Vandal Guard (unsolicited) (DID ‘J’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 J Indicates a vandal guard
unsolicited message.
Device Status 1 U 1 Always ‘0’ for the vandal
guard.
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-6 00 No error
M-status and 01 Failed to close
M-data 02 Failed to open
03 Jammed, position
undefined

394 September 2012


Messages NDC Status Messages

EDM - Module (unsolicited) (DID ‘L’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 L Indicates an EDM -
module unsolicited
message.
Device Status 1 U 1 EDM error
2 EDM not configured
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-10 00 No error
M-status and 01 Parity error
M-data 02 Hardware error
03 Key transport error
04 No key
05 Invalid command as
keyboard is currently
enabled
07 Communication failure
08 Security module reset
was successful
11 Invalid command data
12 data mismatch
13 No key loaded in DEU
prior to requesting an
encr. or decr. operation

September 2012 395


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
15 Set up failure - key space
ID1 already exists and is
not a programmer parent
with E/D attribute and 17
keys
16 Invalid keyspace ID
format, outside 0 -15.
17 Keyspace already exists.
18 Keyspace does not exist
19 Keyspace ID1 has wrong
attribute or class.
20 Keyspace ID2 has wrong
attribute or class.
22 Invalid keyspace, wrong
access right
23 Only two RAR access
spaces allowed,
keyspace not created

24 Secret keyspace creation


disabled.
25 Keyspace is not a parent.
26 Key ID2 not a keyspace
specified or keyspace
specified not a child of
key ID2 keyspace.
27 Invalid parent format.
28 Invalid parent ID,
keyspace not a parent or
keyspace does not exist.
29 Parent keyspace is a
programmer, can not
have secret child.
30 Key spaces do not match.
32 Key ID outside maximum
range of keys.

396 September 2012


Messages NDC Status Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
33 Key ID1 has wrong
attribute.
34 Key ID2 has wrong
attribute.
37 Invalid key ID, no PIN
encryption allowed.
38 Invalid key, key does not
exist.
39 Key ID2 does not specify
an IV.
40 Invalid key ID, no key
41 Invalid key ID, key may
not be exclusively ORed
with key from different
keyspace.
48 Invalid attribute field.
49 Attribute already in family.
50 Invalid parameter field.
51 Undefined parameter for
keyspace class.
52 Variation index outside
range 01-7F hex.
53 Variation index already in
family.
54 Invalid mode for this
function.
55 Invalid left shift, value out
of range.
56 Invalid length, or length
and offset outside range.
57 Invalid access right.
58 Invalid POST PIN PAD
digit (> 0F hex).
59 Invalid PRE PIN PAD
data length (> 0C hex).
60 Modulus bit length > 576
or Exponent bit length >
576 or Modulus bit length
<= exonent bit length.

September 2012 397


NDC Status Messages Messages

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
64 Password does not
contain decimal digits
65 Invalid password, no
match.
66 Keyspace inaccessible,
password error count
exceeded.
70 PIN verification failed.
74 Invalid PIN encrypt type
function (encryption
mode changed).
75 Key integrity error.
76 Invalid PIN, no encryption
allowed (truncated PIN
does not contain decimal
digits).
97 Timeout error.
98 Communication error.
99 TC<>41, or TRS<>00 00
00 00, when decrypted.

398 September 2012


Messages NDC Status Messages

Door Access (unsolicited) (DID ‘N’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 N Indicates a door access
unsolicited message.
Device Status 1 U 1 Always ‘1’ indicating that
access is possibly
inhibited.
Error Severity 1 2 Always ‘2’ indicating a
warning. Local inter-
vention required.
Diagnostic 2-4 00 No error
M-status and 01 Bad read error
M-data 02 Time-out error
03 Comms error
05 Not configured

Sensor Status (unsolicited) (DID ‘P’)

This message is sent on Supervisor mode entry and exit, tamper indicating bin
in/out conditions and alarm conditions. See also ProCash/NDC ProConsult/NDC
Installation manual section [APPLICATION_XXX]..

Description No. of Char Code Detailed Definition


Characters
Device Identifier 1 P Indicates a Sensor status
message.
Device Status 13 1 ‘1’ ’TI’ sensor change
(characters 2-13 give
complete definition of all
sensors)
‘2’ Mode change (characters
3-13 are omitted)
‘3’ Alarm state change
If byte 1 = ’2’ 2 ‘0’ Supervisor mode inactive
‘1’ Supervisor mode active
If byte 1 = ’1’ or ‘3’ 2 ‘0’ Supervisor mode inactive
‘1’ Supervisor mode active

September 2012 399


NDC Status Messages Messages

Description No. of Char Code Detailed Definition


Characters
3 ‘0’ Vibration and/or heat
sensor inactive
‘1’ Vibration and/or heat
sensor active
4 ‘0’ Door has been closed
‘1’ Door has been opened
5 ‘0’ Silent signal sensor
inactive
Silent signal sensor active
‘1’
6 ‘0’ Electronics enclosure
sensor inactive
‘1’ Electronics enclosure
sensor active
7 ‘0’ Deposit bin out
‘1’ Deposit bin in
8 ‘0’ Card bin out
‘1’ Card bin in
9 ‘0’ Currency reject bin out
‘1’ Currency reject bin in
10 ‘0’ Cassette in position 1 out
‘1’ Cassette in position 1 in
11 ‘0’ Cassette in position 2 out
‘1’ Cassette in position 2 in
12 ‘0’ Cassette in position 3 out
‘1’ Cassette in position 3 in
13 ‘0’ Cassette in position 4 out
‘1’ Cassette in position 4 in

400 September 2012


Messages NDC Status Messages

Supervisor Key Messages (unsolicited) (DID ‘R’)

This message sends supervisor key messages from the terminal to inform the
host of the functions selected by the operator after entry to supervisor mode.
Supervisor key messages are supported in ProTopas/SOP-NDC only. They can
be configured via parameter “MESSAGE_MODE”. See also ProCash/NDC SOP
Programmers Reference manual for detailed descriptions.

Description No. of Char Code Detailed Definition


Chars
device identifier 1 R Indicates a Sensor status
message.
device status VAR 1-2 ’00’ - ’98’ Key selection from Select menu
(4 max)
or

1 ’0’ Select menu


’1’ Replenishment menu
’2’ Configure menu
’3’ Access menu
’4’ In Service Supervisor menu
’7’ Exit menu
’8’ Exit menu
2-3 ’00’ - ’98’ Menu item selected

or

1-2 ’00’ - ’98’ Host menu


3-4 Host function

September 2012 401


NDC Status Messages Messages

Barcode Reader (unsolicited) (DID ‘s’)

Description No. of Sol./ Code Detailed Definition


Characters Unsol.
Device Identifier 1 s Indicates a Barcode
Reader unsolicited
message.
Device Status 1 U 0 Always ‘0’ for the Barcode
Reader.
Error Severity 1 0-4 This is a single character
field coded in the
standard way to be used
to make a shutdown
decision. See table “Error
severity table” for details.
Diagnostic 2-10 00 No error
M-status and 01 Failure during barcode
M-data read
Supplies Status 1 0 No new state

402 September 2012


Messages NDC Status Messages

Electronic Journal Upload (EJU) Message

This section describes the message format of the Electronic Journal Upload
(EJU) message that will be sent in response to an Options And Timers or
Acknowledge And Continue command. Please refer to section ”Electronic
Journal Upload (EJU) commands” on page 318 for detailed descriptions about
EJU command messages.
The following table describes the message format of the EJU message.
table 106: Electronic Journal Upload message format

Description Code No. of Characters


Message Identifier 6 1
Message Modifier 1 1
field separator :1C 1
field separator :1C 1
field separator :1C 1
field separator :1C 1
Machine Number VAR 6
Date VAR 6
Time VAR 6
Last Char Previous Block VAR 6
Last Char This Block VAR 6
Block Length [:1C] 3
Response Data VAR 0-350

Message Identifier
Field size: 1 character
Valid range: 6
Description: This field specifies the message identifier. The message identifier
of the Electronic Journal Upload message is 6.

September 2012 403


NDC Status Messages Messages

Message Modifier
Field size: 1 character
Valid range: 1
Description: This field specifies the message modifier.
The Message Modifier 1 indicates this message as Electronic
Journal Upload data.

Machine Number
Field size: 6 characters
Valid range: 000000-999999
Description: This field contains the machine number from the terminal.

Date
Field size: 6 characters
Valid range: 000000-999999 in format YYMMDD
Description: This field contains the date (from internal system clock of the ter-
minal) when the EJ block was sent to the host.

Time
Field size: 6 characters
Valid range: 000000-999999 in format HHMMSS
Description: This field contains the time (from internal system clock of the ter-
minal) when the EJ block was sent to the host.

Last Char Previous Block


Field size: 6 characters
Valid range: 000000-999999
Description: The last Char Previous Block and Last Char This Block values are
based on modulus 1,000.000 character count which starts at zero
when the EJU is conffollowing a restart start of the terminal. The
count is incremented for each character written to the electronic
journal.

404 September 2012


Messages NDC Status Messages

Last Char This Block


Field size: 6 characters
Valid range: 000000-999999
Description: The terminal compares the last Character Received field in the ac-
knowledgement message sent from the host with the Last Char-
acter This Block field of the last EJU data message that is sent to
the host. If these two values are not the same, the acknowledge-
ment message is ignored. The Last Character Previous Block field
can be used by the host for checks on message received.

Response Data
Field size: up to 350 bytes
Valid range: 0-350
Description: Electronic Upload Data consists of ASCII text with carriage return
(CR) at the end of each line. If no electronic data available to sent,
the response data size is zero.

September 2012 405


NDC Status Messages Messages

406 September 2012


Additional Useful Information

NDC Standard Character Sets


Single Pixel

Single Arabic

November 2012 407


NDC Standard Character Sets Additional Useful Information

Single Graphic 1

Single Graphic 2

Single Graphic 3

408 November 2012


Additional Useful Information NDC Standard Character Sets

Single Alpha 1

Single Alpha 2

November 2012 409


NDC Standard Character Sets Additional Useful Information

Double Arabic

Double Alpha 1

410 November 2012


Additional Useful Information NDC Standard Character Sets

Double Alpha 2

Chinese 1

Chinese 2

November 2012 411


ASCII to EBCDIC Code Conversion Table Additional Useful Information

ASCII to EBCDIC Code Conversion Table


GRAPHIC ASCII (HEX) EBCDIC (HEX) GRAPHIC ASCII (HEX) EBCDIC (HEX)

NUL 00 00 SPACE 20 40
SOH 01 01 ! 21 4F
STX 02 02 " 22 7F
ETX 03 03 # 23 7B
EOT 04 37 $ 24 5B
ENQ 05 2D % 25 6C
ACK 06 2E & 26 50
BEL 07 2F 27 7D
BS 08 16 ( 28 4D
HT 09 05 ) 29 5D
LF 0A 15 * 2A 5C
VT 0B 0B + 2B 4E
FF 0C 0C , 2C 6B
CR 0D 0D - 2D 60
SO 0E 0E . 2E 4B
SI 0F 0F / 2F 61
DLE 10 10 0 30 F0
DC1 11 11 1 31 F1
DC2 12 12 2 32 F2
DC3 13 13 3 33 F3
DC4 14 3C 4 34 F4
NAK 15 3D 5 35 F5
SYN 16 32 6 36 F6
ETB 17 26 7 37 F7
CAN 18 18 8 38 F8
EM 19 19 9 39 F9
SUB 1A 3F : 3A 7A
ESC 1B 27 ; 3B 5E

412 November 2012


Additional Useful Information ASCII to EBCDIC Code Conversion Table

GRAPHIC ASCII (HEX) EBCDIC (HEX) GRAPHIC ASCII (HEX) EBCDIC (HEX)

FS 1C 1C < 3C 4C
GS 1D 1D = 3D 7E
RS 1E 1E > 3E 6E
US 1F 1F ? 3F 6F
@ 40 7C ' 60 Undefined
A 41 C1 a 61 81
B 42 C2 b 62 82
C 43 C3 c 63 83
D 44 C4 d 64 84
E 45 C5 e 65 85
F 46 C6 f 66 86
G 47 C7 g 67 87
H 48 C8 h 68 88
I 49 C9 i 69 89
J 4A D1 j 6A 91
K 4B D2 k 6B 92
L 4C D3 l 6C 93
M 4D D4 m 6D 94
N 4E D5 n 6E 95
O 4F D6 o 6F 96
P 50 D7 p 70 97
Q 51 D8 q 71 98
R 52 D9 r 72 99
S 53 E2 s 73 A2
T 54 E3 t 74 A3
U 55 E4 u 75 A4
V 56 E5 v 76 A5
W 57 E6 w 77 A6
X 58 E7 x 78 A7
Y 59 E8 y 79 A8

November 2012 413


Screen Design Worksheet Additional Useful Information

GRAPHIC ASCII (HEX) EBCDIC (HEX) GRAPHIC ASCII (HEX) EBCDIC (HEX)

Z 5A E9 z 7A A9
[ 5B 4A { 7B C0
\ 5C E0 | 7C 6A
] 5D 5A } 7D D0
^ 5E 5F - 7E A1
_ 5F 6D DEL 7F 07

Screen Design Worksheet

Fields in dark gray illustrate the softkey positions on the right from top to bottom
FDK A, B, C, D and on the left from top to bottom FDK I, H, G, F.
Fields in light gray illustrate the touch zone areas inclusive softkey area.

414 November 2012


Printers

Printer Models
ProCash/NDC and ProConsult/NDC support all models of printers that are
listed in Table 107. All printer control characters of ProCash/NDC or
ProConsult/NDC will be initiated via macros. Then the macros are transfered to
the WOSA service. WOSA passes the data to CSC-W32. See also CSC-W32
Programmers Reference.
The current ProCash/NDC and ProConsult/NDC releases support following
printer models as listed in the following table:
table 107: Printer Models

Models Printer Description


ND71 RECEIPT/JOURNAL dot matrix printer (obsolete)
ND99 THERMO RECEIPT printer (obsolete)
ND98 JOURNAL dot matrix printer
ND9A RECEIPT dot matrix printer
ND9E RECEIPT dot matrix printer
ND9C RECEIPT Thermal printer
ND9D JOURNAL Thermal printer
ND9G RECEIPT Thermal printer (only GDI interface)
TH30 JOURNAL Thermal printer
TH21 RECEIPT Thermal printer (optional with GDI interface)
TH23 STATEMENT Thermal printer (optional with GDI interface)
TH97 STATEMENT dot matrix printer
TH97/G STATEMENT Thermal printer (optional with GDI interface)
TP01 STATEMENT Thermal printer (optional with GDI interface)
TP20 STATEMENT Thermal printer (optional with GDI interface)
TP07 (a) RECEIPT Thermal printer (optional with GDI interface)
TP06 JOURNAL dot matrix printer (optional with GDI interface)
NP07 RECEIPT dot matrix printer
NP06 JOURNAL dot matrix printer
TP12 RECEIPT Thermal printer (only GDI interface)
TP13 RECEIPT Thermal printer (GDI interface)

Detailed descriptions can be taken from the hardware specification


manuals. Please refer also to the ProCash/NDC ProConsult/NDC
Installation manual for detailed descriptions about printer utilities.

November 2012 415


Printer Control Characters Printers

Printer Control Characters


The following tables gives a short description about control sequences used in
the NDC+ message protocol, which are supported by ProCash/NDC and
ProConsult/NDC.
table 108: NDC Printer control characters

Control ASCII Short Description


Character Code
LF 0AH Line Feed, causes the next graphic character to be
printed on the next line.
FF 0CH Causes a feed to the next TOF mark or feed to the
maximum receipt length, cut and deliver to
customer.
SO 0EH Fills an area of the printer form with spaces. This
'SO' character is followed by a single graphic
character indicating the desired number of spaces:

Character No. of spaces


1-9 1-9
: 10
; 11
< 12
= 13
> 14
? 15
HT 09H Horizontal tabulators; positions the next graphic
character in the next tab column. Tabs are defined
to be in every eighth column from the left margin.
ESC (1 1B (1 sets Single Alpha 1 char set size (10 CPI)
ESC (2 1B (2 sets Single Alpha 2 char set size (10 CPI) see Note
ESC (7 1B (7 sets Single Alpha 3 char set size (10 CPI) see Note
ESC (> 1B (> sets Double Alpha 1 char set (5 CPI)
ESC (? 1B (? sets Double Alpha 2 char set size (5 CPI)
ESC (B 1B (B sets Double Alpha 3 char set size (5 CPI)
ESC (C 1B (C sets Condensed Alpha 1 char set size (17 CPI)
ESC (D 1B (D sets Condensed Alpha 2 char set size (17 CPI)

416 November 2012


Printers Printer Control Characters

Control ASCII Short Description


Character Code
ESC (E 1B (E sets Condensed Alpha 3 char set size (17 CPI)
ESC [pxxx 1B [pxxx left margin control
ESC [qxxx 1B [qxxx right margin control
ESC [rxx 1B [rxx lines per inch control
ESC %xxx 1B %xxx sets printer code page xxx. 000 = set user charset
ESC kcxxx 1B kcxxx Barcode format and data.
c = type of Barcode; xxx = Barcode data
ESC ex 1B ex Barcode HRI position (x = position value).
1 - HRI not printed; 2 - above barcode;
3 - below barcode; 4 - above and below barcode
ESC wx 1B wx Barcode width (x = width value). Defines the
minimum Width in x /150 inch (recalculated in GDI
environment). Value range: 2 - 4
ESC hxxx 1B hxxx Barcode height ( xxx = height).
Height is recalculated in the GDI environment.
Value range: 001 - 255
ESC cx 1B cx set color; x = 0 - default, x = 1 - black, x = 2 - red
ESC Gx 1B Gx Print Graphic; x = graphic file name terminated
with ESC\
ESC \x 1B \x Print Logo; x = 1 digit logo number 1-9 terminated
with ESC\

If character set Alpha 2 or Alpha 3 is sent from host, the printer


switches to the user defined character set. See also
ProCash/NDC ProConsult/NDC Installation manual section ’Printer
Fonts’ for details.

November 2012 417


Electronic journal Printers

Electronic journal
Wincor Nixdorf terminals are able to log all journal printer messages into journal
files which are stored on the PC hard disk. The predefined path of the journal
files on the harddisk is C:\JOURNAL and C:\CUSTUMER. See also section
[TOPMSG] and [CUSTMSG] in configuration file CUSTOM.PPF.

Electronic journal storage

The journal file will be created daily and have the following format:
YYYYMMDD.JRN
YYYY - represents the current 4 digit year
MM - represents the current 2 digit month
DD - represents the current 2 digit day
.JRN - is the file extension

EXAMPLE: 19990701.JRN

418 November 2012


Printers Printing with Windows GDI

Types of journal information

Following information can be stored into the electronic journal files:


• date and time
• device errors
• transaction reply printer data
• operation code buffer and requested amount
• ID-card track 2 data
• ID-card track 3 data
• Transaction Reply command of reply
• dispense data
• ATM modes (in-service, out-of-service, offline, supervisor mode)

See also section [TOPMSG] and [CUSTMSG] of configuration file


CUSTOM.PPF where you can see the default journal output
definitions

Printing with Windows GDI


ProCash/NDC and ProConsult/NDC supports raw printing via the Windows GDI
Interface. Printing via GDI requires graphic able printers, which support
Windows printing via a Windows printer driver. The printer has to be installed as
a Windows printer. In addition an associated port monitor has to be installed to
get status information about printed jobs, paper supply status and status of the
printer hardware. In Table “Printer Models” on page 415 you can see what type
of printer can or must be installed as a Windows printer. All detailes about
configuration and GDI print technology in ProCash/NDC or ProConsult/NDC
are described in the ProTopas Module Construction Kit - Programming Guide
section “GDI Printer Overlay Framework” and
ProCash/DDC ProConsult/DDC Installation manual.

November 2012 419


Printing with XFS Forms Printers

Printing with XFS Forms


ProCash/NDC and ProConsult/NDC supports XFS forms printing for receipt
and document print if the Forms Raw Print Wrapper Overlay Framework
(FormsPrt.DLL) is configured in the Repository Manager assigned to the
relevant printer device framework. The XFS Forms printing is mandatory in
vendor specific environments where RAW print is not support any more for new
printing devices. The activation or XFS Forms printing has to be done manually.
All details about configuration and Forms print related parameters and
dependencies are described in:
ProTopas Module Construction Kit - Programming Guide section
“Forms Raw Print Wrapper Overlay Framework”.
Forms print is supported for following ProTopas printer device frameworks:
• CCRecPrtFW
• CCDocPrtFW

Barcode Print
ProCash/NDC and ProConsult/NDC supports barcode printing in GDI mode
using GDI capable printers like ND9G, TP07, TP01, TP12, etc.. The barcode
format, style and size can be controlled by the host with the use of standard
NDC printer control sequences to be included in the printer data buffer, which
can be sent in the Function Command of a consumer transaction.
Following NDC printer control sequences are required:
Control ASCII Code Short Description
Character
ESC e x 1B 65 x Barcode HRI position (x = position value).
1 - HRI not printed; 2 - above barcode;
3 - below barcode; 4 - above and below barcode
ESC h xxx 1B 68 xxx Barcode height ( xxx = height).
Height is recalculated in the GDI environment.
Value range: 001 - 255
ESC k cxxx ESC \ 1B 6b cxxx 1B 5C Barcode format and data.
c = type of Barcode; xxx = Barcode data
ESC w x 1B 77 x Barcode width (x = width value). Defines the minimum Width
in x /150 inch (recalculated in GDI environment).
Value range: 2 - 4

420 November 2012


Printers Barcode print examples

Barcode Formats

ProCash/NDC and ProConsult/NDC supports following barcode formats:

Value c for Barcode Format


sequence ESC k
0 UPC-A
1 UPC-E
2 EAN 13
3 EAN 8
4 CODE 39
5 Interleaved 2 of 5
6 CODABAR
7 128 A
8 128 B
9 128 C
: CODE 93
; Standard 2 of 5
< CODE 11

Barcode print examples


To print barcode images on a receipt, following sequences has to be inserted in
the print data field of the Function command sent by the host:
• UPC-A
\1be3\1bk0007567816412\1b\5c
• UPC-E
\1be3\1bk10425261\1b\5c
• EAN-13
\1be3\1bk2750103131130\1b\5c
• EAN-8
\1be3\1bk355123457\1b\5c
• Code39
\1be3\1bk4TEST8052\1b\5c

November 2012 421


Barcode print examples Printers

• Interleaved 2 of 5
\1be3\1bk574380707240152655700\1b\5c
• Codabar
\1be3\1bk6A123456A\1b\5c
• 128-A
\1be3\1bk7HI345678\1b\5c
• 128-B
\1be3\1bk8HI345678\1b\5c
• 128-C
\1be3\1bk9HI345678\1b\5c
• Code 93
\1be3\1bk:CODE 93 STANDARD\1b\5c
• Standard 2 of 5
\1be3\1bk;74380707240152655700\1b\5c
• Code 11
\1be3\1bk<CODE 11\1b\5c

422 November 2012


Printers Barcode image examples

Barcode image examples


The following barcode images are example printouts which can printed on a
GDI capable receipt or statement printer:

November 2012 423


Landscape printing on the receipt printer Printers

Landscape printing on the receipt printer


Landscape printing on the receipt printer can be activated via function identifiers
‘P’ (Print Statement and Wait) and ‘Q’ (Print Statement and Set Next State) in
conjunction with the printer flag ‘=’ in the Transaction Reply message sent from
Central.
See also section ”Transaction Reply command (message ID ‘4’)” on page 248.
When printing in sideways mode on the receipt printer the maximum
configuration of a customer receipt is 80 columns by 20 lines. Where the data
sent from the Host causes this line count to be exceeded the sideways
statement shall be cut after 20 lines and the remaining data printed on the next
statement(s).

Landscape printing via printer flag ’=’ is supported in GDI mode only.
Please make sure that the receipt printer is properly installed and
configured for printing via GDI.
For landscape printing it is required to increase the paper width of the
selected printer form to be able to print 80 characters in one line.

Two Colors print


ProCash/DDC and ProConsult/DDC supports two color (black and red) printing
for Receipt and Document printers. The color selection can be controlled via
escape control sequence ESCcx. Please refer to Table “NDC Printer control
characters” on page 416 and ProTopas Module Construction Kit - Programming
Guide for detailed information about color printing.
Note: The basic requirement for color printing are printers which support color
printing (thermal printers need specific paper).

424 November 2012


Printers Default Deposit Print Data

Default Deposit Print Data


If a deposit is requested in a Transaction Reply command, but none of the
printer flag fields contains a value of ‘4’ or ‘5’, the following information is printed,
depending on whether the amount buffer length is eight or twelve characters:
Eight Character Amount Buffer:
• Transaction serial number - this four character number is printed in print
columns 1 to 4 and repeated in columns 16 to 19.
• Amount buffer - the contents of the Amount buffer are printed in print
columns 6 to 14. Leading zeros are suppressed and the decimal
character (‘,’ or ‘.’ ) is displayed in its true position.
• Card data - the first 30 characters from Track 2 of the card are printed in
columns 21 to 50, with a leading ‘*’ in column 20. The Start/End sentinels
are not printed. The field separator is printed as ‘=’ . Printing is truncated
if an end sentinel is encountered. If the Track 2 data does not contain 30
characters, the trailing characters are blanked.
• Machine number - the machine number is entered using the supervisor
function ‘MACHINE NO’. Six characters are reserved for this field. If
there is no machine number, the field remains blank. The machine
number appears in columns 72 to 77.
• Date and time - the date is displayed in columns 53 to 60, and the time
in columns 62 to 69. In Diebold mode, the date is always displayed as
mm/dd/yy. In Native mode, the date is displayed in one of four formats:
MM/DD/YY, DD/MM/YY, YY/MM/DD or YY/DD/MM. The date format is
set by the option set in the Enhanced Configuration Parameters Load
Message, and the third and fourth formats are available only if the Digital
Camera System is configured. The time is displayed as hh:mm:ss, using
the 24 hours convention. Eight characters are reserved for this field, and
it is always displayed as hh:mm:ss.
A typical print line is:
1234 250.00 1234*012345678901234567890123456789 20/11/90 15:30:29
000000

November 2012 425


Default Deposit Print Data Printers

Twelve Character Amount Buffer:


Transaction serial number - this four-character number is printed in print
columns 1 to 4

• Amount buffer - the contents of the Amount buffer are printed in print
columns 6 to 18. Leading zeros are suppressed and the decimal
character (‘,’ or ‘.’ ) is displayed in its true position
• Card data - the first 30 characters from Track 2 of the card are printed in
columns 21 to 50, with a leading ‘*’ in column 20. The Start/End sentinels
are not printed. The field separator is printed as ‘=’ . Printing is truncated
if an end sentinel is encountered
• Date and time - the date is displayed in columns 53 to 60, and the time
in columns 62 to 69. In Diebold mode, the date is always displayed as
mm/dd/yy. In Native mode, the date is displayed in one of four formats:
MM/DD/YY, DD/MM/YY, YY/MM/DD or YY/DD/MM. The date format is
set by the option set in the Enhanced Configuration Parameters Load
Message, and the third and fourth formats are available only if the Digital
Camera System is configured. The time is displayed as hh:mm:ss, using
the 24 hours convention. Eight characters are reserved for this field, and
it is always displayed as hh:mm:ss.
A typical print line is:
1234 250.00 *012345678901234567890123456789 20/11/90 15:30:29 000000

426 November 2012


Tables

Tables
Table 1: Basic Software of ProCash/NDC . . . . . . . . . . . . . . . 24

Table 2: Basic Software of ProConsult/NDC . . . . . . . . . . . . . 25

table 3: Standard fonts table . . . . . . . . . . . . . . . . . . . . . 36


table 4: Software structure . . . . . . . . . . . . . . . . . . . . . . 38

table 5: State summary . . . . . . . . . . . . . . . . . . . . . . . . 65

table 6: ProCash/NDC, ProConsult/NDC steps belonging to NDC states 68


table 7: Card Read state entries . . . . . . . . . . . . . . . . . . . 69

table 8: Read condition entry definitions . . . . . . . . . . . . . . . 72

table 9: PIN Entry state entries . . . . . . . . . . . . . . . . . . . . 74

table 10: Customer Selectable PIN state entries . . . . . . . . . . . . 77

table 11: Extension state entries . . . . . . . . . . . . . . . . . . . . 80

table 12: Envelope Deposit (C) state entries . . . . . . . . . . . . . . 81


table 13: Pre-Set Operation Code Buffer state table . . . . . . . . . . 82

table 14: Preset operation code buffer Extension state table . . . . . 86

table 15: Four FDK Select Function state entries . . . . . . . . . . . 88


table 16: Amount Entry state entries . . . . . . . . . . . . . . . . . . 91

table 17: Amount Check state entries . . . . . . . . . . . . . . . . . 94

table 18: Information Entry state entries . . . . . . . . . . . . . . . . 97


table 19: Transaction Request state entries . . . . . . . . . . . . . . 101

table 20: Extension state entries . . . . . . . . . . . . . . . . . . . . 104

table 21: Close state entries . . . . . . . . . . . . . . . . . . . . . . 107

table 22: FIT Switch state entries . . . . . . . . . . . . . . . . . . . 110

table 23: Expanded FIT Switch state entries . . . . . . . . . . . . . . 112

table 24: Extension state entries . . . . . . . . . . . . . . . . . . . . 114

November 2012 427


Tables

table 25: Card Write state entries . . . . . . . . . . . . . . . . . . . 116

table 26: Enhanced PIN Entry state entries . . . . . . . . . . . . . . 118


table 27: Camera Control State . . . . . . . . . . . . . . . . . . . . 121

table 28: Enhanced Amount Entry state entries . . . . . . . . . . . . 122

table 29: Extension state entries . . . . . . . . . . . . . . . . . . . 125

table 30: Language Code Switch state entries . . . . . . . . . . . . 127

table 31: Extension state entries . . . . . . . . . . . . . . . . . . . 129

table 32: Card Read - PIN Entry Initiation state entries . . . . . . . . 131

table 33: Extension state entries . . . . . . . . . . . . . . . . . . . 134

table 34: Language Select From Card state entries . . . . . . . . . . 135

table 35: FDK Switch state entries . . . . . . . . . . . . . . . . . . 138

table 36: FDK Information Entry state entries . . . . . . . . . . . . . 141

table 37: Extension state entries . . . . . . . . . . . . . . . . . . . 144

table 38: Eight FDK Selection state entries . . . . . . . . . . . . . . 147


table 39: Extension state entries . . . . . . . . . . . . . . . . . . . 150

table 40: Extension state entries . . . . . . . . . . . . . . . . . . . 151

table 41: Audio Control state entries . . . . . . . . . . . . . . . . . 154

table 42: Hardware Fitness state entries . . . . . . . . . . . . . . . 157

table 43: Hardware Fitness Extension state entries . . . . . . . . . . 160

table 44: Smart FIT Check State . . . . . . . . . . . . . . . . . . . 163


table 45: Barcode Read State . . . . . . . . . . . . . . . . . . . . . 167

table 46: Skip state step . . . . . . . . . . . . . . . . . . . . . . . . 170

table 47: Screen control characters cross-reference . . . . . . . . . 173

table 48: Screen control characters . . . . . . . . . . . . . . . . . . 173

table 49: Screen escape sequences cross-reference . . . . . . . . . 176

table 50: Screen escape sequences . . . . . . . . . . . . . . . . . 176

428 November 2012


Tables

table 51: Default Voice Message files . . . . . . . . . . . . . . . . . 180

table 52: Default WAVE files for Audio Echo on Keyboard . . . . . . . 181
table 53: Downloaded reserved screens supported by Wincor Nixdorf
terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

table 54: Reserved pictures G00-G06 . . . . . . . . . . . . . . . . . 185

table 55: Timer values . . . . . . . . . . . . . . . . . . . . . . . . . 189

table 56: Alphabetical FIT references . . . . . . . . . . . . . . . . . 211


table 57: FIT fields listed by data track position . . . . . . . . . . . . 212

table 58: MAC flags definition . . . . . . . . . . . . . . . . . . . . . 222

table 59: Code conventions . . . . . . . . . . . . . . . . . . . . . . 228


table 60: Transaction Request message . . . . . . . . . . . . . . . . 230

table 61: Solicited Status message . . . . . . . . . . . . . . . . . . . 240

table 62: Unsolicited Status message . . . . . . . . . . . . . . . . . 245

table 63: Transaction Reply command message . . . . . . . . . . . . 248

table 64: Terminal Command message . . . . . . . . . . . . . . . . 258

table 65: State Tables Load . . . . . . . . . . . . . . . . . . . . . . 261


table 66: Screen Data Load . . . . . . . . . . . . . . . . . . . . . . 264

table 67: Configuration Parameters Load . . . . . . . . . . . . . . . 267

table 68: Enhanced Configuration Parameters Load . . . . . . . . . . 271


table 69: Option codes . . . . . . . . . . . . . . . . . . . . . . . . . 273

table 70: Interactive Transaction Response . . . . . . . . . . . . . . 276

table 71: FIT Data Load . . . . . . . . . . . . . . . . . . . . . . . . 280

table 72: Encryption Key Load . . . . . . . . . . . . . . . . . . . . . 283

table 73: Extended Encryption Key Load . . . . . . . . . . . . . . . 286

table 74: Dispenser Currency Mapping Table Load . . . . . . . . . . 289

table 75: Configuration IDLoad . . . . . . . . . . . . . . . . . . . . . 292

November 2012 429


Tables

table 76: Date And Time Load . . . . . . . . . . . . . . . . . . . . . 294

table 77: Message Authentication Field Selection Load . . . . . . . . 297


table 78: Specific Command Reject Conditions . . . . . . . . . . . . 303

table 79: NDC function ID’s assigned to step functions . . . . . . . . 310

table 80: Send Options And Timers message format . . . . . . . . . 319

table 81: Acknowledge And Continue . . . . . . . . . . . . . . . . . 322

table 82: Acknowledge And Stop . . . . . . . . . . . . . . . . . . . 324

table 83: Send Configuration Information . . . . . . . . . . . . . . . 327

table 84: Hardware Fitness Table . . . . . . . . . . . . . . . . . . . 328

table 85: Hardware Fitness Table Enhanced . . . . . . . . . . . . . 329

table 86: Device Configuration Table . . . . . . . . . . . . . . . . . 329

table 87: Supply Status Device Table . . . . . . . . . . . . . . . . . 334

table 88: Supply Counters . . . . . . . . . . . . . . . . . . . . . . . 336

table 89: Send Error Log Information . . . . . . . . . . . . . . . . . 340


table 90: Send Date/Time Info . . . . . . . . . . . . . . . . . . . . . 344

table 91: Send Configuration ID . . . . . . . . . . . . . . . . . . . . 345

table 92: Hardware Configuration Data . . . . . . . . . . . . . . . . 346

table 93: Hardware Configuration Data DIG Table . . . . . . . . . . 348

table 94: Supplies Data . . . . . . . . . . . . . . . . . . . . . . . . 350

table 95: Supplies Status Data DIG Table . . . . . . . . . . . . . . . 351


table 96: Fitness Data . . . . . . . . . . . . . . . . . . . . . . . . . 353

table 97: Fitness Data DIG Table . . . . . . . . . . . . . . . . . . . 354

table 98: Tamper and Sensor Status Data . . . . . . . . . . . . . . . 356

table 99: Software ID and Release Number . . . . . . . . . . . . . . 357

table 100:Local Configuration Option Digits . . . . . . . . . . . . . . 360

table 101:Solicited Status (Device Fault) . . . . . . . . . . . . . . . . 361

430 November 2012


Tables

table 102: Error Severity Table . . . . . . . . . . . . . . . . . . . . . 362

table 103: Supplies Status Table . . . . . . . . . . . . . . . . . . . . 364


table 104: Encryptor Initialisation Data . . . . . . . . . . . . . . . . . 365

table 105: Unsolicited Device Status . . . . . . . . . . . . . . . . . . 369

table 106: Electronic Journal Upload message format . . . . . . . . . 403

table 107: Printer Models . . . . . . . . . . . . . . . . . . . . . . . . 415

table 108: NDC Printer control characters . . . . . . . . . . . . . . . . 416

November 2012 431


Tables

432 November 2012


Figures

Figures
figure 1: Terminal operation . . . . . . . . . . . . . . . . . . . . 45

figure 2: Transaction message flow . . . . . . . . . . . . . . . . 228

figure 3: Terminal to network messages . . . . . . . . . . . . . . 229


figure 4: Network to terminal commands . . . . . . . . . . . . . . 247

figure 5: Transaction Reply message accept/reject flowchart . . . 309

November 2012 433


Figures

434 November 2012


Abbreviations
API Application Program Interface

ARC Application Return Code

ASCII American Standard Code for Information Interchange

ATM Automated Teller Machine

CCDM Cash Cheque Deposit Module

CDM Cash Dispenser Module

CI Customization Image

CRT Cathode Ray Tube

CSC Customer Service Center

CRS Cash Recycling Module

CSP Customer Selected PIN

DES Data Encryption Standard

EBH Euro Banknote Handler

EBCDIC Extended Binary Coded Decimal Interchange Code

FDK Function Display Key

FIT Financial Institution Table

GOPL Graphical Operator Panel

HRI Human Readable Interface

ID IDentification

IDCU ID Card Unit

November 2012 435


Abbreviations

ITR Interactive Transaction Response

MAC Message Authentication Code

MDS Modular Delivery System

NCR National Cash Register

NDC NCR Direct Connect

OAR Open Account Relationship

PAN Primary Account Number

PC Personal Computer

PCI Payment Card Industry

PCCP PC Configurator Package

PIN Personal Identification Number

POS Point of Sales (Cash Registers)

QLLC Qualified Logical Link Control

RM2 Recycling Module 2

SDLC Synchronous Data Link Control

SNA System Network Architecture

SOH State Of Health

SST Self Service Terminal

TABS Total Automatic Banking System

436 November 2012


Related publications

Available manuals
Basically all the manuals you need to get information about configurations and
functionality of ProCash/NDC, ProConsult/NDC, ProDevice (WOSA),
CSC-W32 and AddOn products can be downloaded from the Wincor Nixdorf
intranet server.
Link: http://asw.wincor-nixdorf.com

ProCash/NDC and ProConsult/NDC Manuals


DESIGNATION VERSION ORDER NUMBER
ProCash/NDC Installation manual 3.0/00 (PDF file)
ProFlex/NDC-DDC Programming Guide 3.0/00 (PDF file)
ProConsult/NDC Installation manual 3.0/00 (PDF file)
ProCashIn/Online 3.0/00 (PDF file)
Installation & Configuration manual
ProChequeIn 3.0/00 (PDF file)
Installation & Configuration manual
ProCash/NDC-DDC 3.0/00 (PDF file)
ProConsult/NDC-DDC
WEB-Extensions
Installation & Configuration manual
Protopas Module Construction Kit 5 (PDF file)
Programming Guide
Protopas Framework Documentation 5 (PDF file)
Programming Guide
Protopas Host Protocol and 5 (PDF file)
Communication Frameworks
Programming Guide

ProCash/NDC ProConsult/NDC Installation manuals


These two Installation manuals contain detailed descriptions of configuration
parameters of ProCash/NDC, ProCash/DDC and ProConsult/NDC,
ProConsult/DDC, which are stored in the Windows registry. Further contents
are descriptions about several Utilities which are additionally delivered.

November 2012 437


Related publications

ProTopas Module Konstruction Kit Programming Guide


Describes the Frameworks of the ProTopas Manager and gives detailed API
descriptions for the programmer. With this manual a programmer is able to build
up Protopas applications.
ProTopas Framework Documentation Programming Guide
Gives a global overview about the ProTopas Framework architecture and
describes the interaction between the different frameworks.
ProTopas Host Protocol and Communication Frameworks
ProGramming Guide
Describes the API’s of the Communication Frameworks from ProTopas
Manager and gives detailed descriptions for the programmer.
ProCash/NDC ProConsult/NDC WEB-Extension Inst. & Conf. manual
The Installation & Configuration manual contains detailed descriptions how the
add on product WEB-Extensions is integrated in ProCash/NDC and
ProConsult/NDC. It also gives detailed descriptions about additional
configuration parameters, which are needed to enable the WEB-Extensions.
ProCashIn/Online Inst. & Conf. manual
The Installation & Configuration manual contains detailed descriptions how the
add on product ProCashIn/Online is integrated in ProCashIn/NDC and
ProCashIn/DDC. It also gives detailed descriptions about additional
configuration parameters, which are needed to enable ProCashIn/Online.
ProChequeIn Installation & Configuration Manual
This manual describes how to install and configure ProCash/NDC-DDC or
ProConsult/NDC-DDC on Cheque deposit systems for Cheque processing.
ProFlex/NDC-DDC Programming Guide
Describes function details of the products ProFlex/NDC and ProFlex/DDC.
It gives detailed programming descriptions for developers how to set up the
transaction flow and how to install and configure the product for a host
connection.

438 November 2012

You might also like