You are on page 1of 16

Nets proprietary TLD (TagLengthData)

format description
Change History
Rev. Date
1.0
2010-04-29
1.1
2010-11-24

Author
ELO
EXTNCH

1.2

2010-11-24

EXTNCH

1.3

2010-12-02

EXTNCH

1.3.1
1.4
1.5
1.6

2011-04-08
2011-05-31
2011-06-20
2011-08-26

HTR
EXTHAH
EXTNCH
HTR

1.7

2011-09-06

EXTNCH

1.7.1

2011-10-19

SGU

1.8

2011-10-21

PRO

Changes
Initial version
Addition of TLDs in ECR info (H32) for get customer
info and one more status added to Terminal Info
(H31) subgroup: H303133
Addition of TLDs in Card info (H33)
subgroup: H393939
Extension of get customer info request and response
for Mekonomen between ECR and ITU.
Removed unused tags and added missing tags
Added status code 07 for Tag H32303030
Added valid range for tag H32303032
Changed company name and Logo, Reformatted Tag
Tables, added reference to SendData sub
commands. Renamed ECR Info group to Value Added
Service Group
Added Tags for CustomerId2, Exclude Issuer, Vas Id
and Service Text Id command
Changed the description of tag 3001 Card Data : PAN
according to how the code is implemented. Added
note to the description of tag 3010 Exclude Issuer.

Status
Approved
Approved

Added:

Approved

Approved
Approved
Approved
Approved
Approved
Approved

Approved
Approved

Generate Signature Token Tags


Customer Dialog Group Tags
GetCardInfo and Track2 Tags.
1.9.1

2011-11-03

EXTNCH

Added the description of tag 3001 Card Data : PAN


for telium.
Corrected the decsription of 3999 tag.
Added restriction criteria for 3009 tag.

Approved

1.9.2

2012-02-02

EXTNCH

Addd the New tag Card validation (2015).

Approved

1.9.3

2012-02-06

PRO

Added new tld tag 3011 and 3012. Modified tld tag
3999 and 3001.

Approved

Nets proprietary TLD format description v1.18

1/16

1.9.4

2012-02-20

PRO

Modified 3001 to AlphaNumeric

Approved

1.10

2012-03-21

OKJ

Added platform specific information to tld tag 3001


CardData:PAN

Approved

1.11

2012-08-27

EXTKGU

Removed platform specific tag [Applicable Telium]


for TLD 3011 and 3012. Added platform specific tag
[Applicable Telium] for TLD 3010 and 3009.

Approved

1.12

2012-12-12

SAASB

FO13004 New admin commands. Added terminal


info tag TLD 1016 for SWC configured version.

Approved

1.13

2013-08-16

EXTSSI

FO12894 Customer Specific Cards. Added two new


TLD 3013 and 3014.

Approved

1.14

2013-09-26

EXTKGU

The spec does not mention that in addition to site


and session no, also date & time is reported in TAG
4000. Added info about date and time.

Approved

1.15

2013-10-11

EXTKER

Updated section 4.2 to indicate that the exclude


issuer tag with Get Card Data is to be used only for
Unicapt.

Approved

1.16

2013-11-29

EXTHAH

Updated section 4.1 to remove the tags description


for 1008, 1009 & 1011 as there are no more used on
both platforms (U32 & Telium)

Approved

1.17

2013-12-03

EXTKER

Updated section 4.1 to add the tags 1017, 1018 and


1019 to control the pin pad light, card reader light,
and pin shield light.

Approved

1.18

2013-12-20

APANI

Updated section 4.5 for adding a new group for


getting Light Info 5000. Added 5001,5002 and 5003
to get and set the pin pad light, card reader light,
and pin shield light. Removed tags 1017, 1018, 1019
from section 4.1

Approved

Purpose
This is a BBS proprietary format customised to operate in a binary environment between an ITU and
an ECR. The tag format allows dynamic messaging between the ITU and ECR.

Nets proprietary TLD format description v1.18

2/16

1 References
None.

2 TLD (TagLengthData) format description


Similar to more standardised TLV format rules i.e. BER (Basic Encoding Rules), each TLD record
element is encoded as a tag identifier, a length description and the actual data elements. Each unit
inside a TLD record shall be divided using the ASCII US (Unit Separator) control code and an ASCII RS
(Record Separator) control code as end-of-record marker after each TLD record.
TLD record definition:
<TAG> is a fixed 4 digit Numeric field (0000-9999)
<US> ASCII-character US (Unit Separator H1F)
<LENGTH> is a fixed 4 digit Numeric field (0000-9999)
<US> ASCII-character US (Unit Separator H1F)
<DATA> is a variable length binary field
<RS> ASCII-character RS (Record Separator H1E)

TLD record message:


<TAG><US>LENGTH><US><DATA><RS><TAG><US>LENGTH><US><DATA><RS>

One message can consist of several TLD records.

Nets proprietary TLD format description v1.18

3/16

3 TLD tag types


TLD tags can be sorted into four sub types:
1.
2.
3.
4.

Request /Response
Command
Status
Info

Each tag can in theory be assigned different types, but per today each tag corresponds to a certain
type.
3.1

TLD Request/Response syntax

3.1.1 TLD Request message


A TLD Request can be made using several tags or as a single tag in a request messages.
TLD Request message are transported in the SendData message using subcommand TLD_REQUEST
(0x3139).
A single tag TLD Request consists of the tag only, without the following length field, data field or
delimiters.
Example:
<TAG>

A Multiple tag request message consists of a full TLD records.


Example:
<TAG1><US>LENGTH1><US><DATA1><RS><TAG2><US>LENGTH2><US><DATA2><RS>

3.1.2 TLD Response message


The TLD Response message consists of a full TLD record. The response contains one or several tags
from the corresponding request.
TLD Response message are transported in the SendData message using subcommand TLD_RESPONSE
(0x313A)
Example:
<TAG><US>LENGTH><US><DATA><RS>

3.2 TLD Status message


TLD Status messages use a full TLD record. A status message is used to signal a terminal status
change. Only one tag can be used in a status message.
TLD Status message are transported in the SendData message using subcommand TLD_STATUS
(0x313B)
Example:
TAG><US>LENGTH><US><DATA><RS>

Nets proprietary TLD format description v1.18

4/16

3.3 TLD Command message


TLD Command messages use a full TLD record. Only one tag can be sent in a command message.
TLD Command message are transported in the SendData message using subcommand
TLD_COMMAND (0x313C)
Example:
TAG><US>LENGTH><US><DATA><RS

3.4 TLD Info message


TLD Info messages use a full TLD record. A TLD Info message is used to pass general data from the
terminal to ECR. Several info tags can be passed in a TLD Info message.
TLD Info message are transported as part of the Device Attribute message.
Example:
TAG1><US>LENGTH1><US><DATA1><RS><TAG2><US>LENGTH2><US><DATA2><RS>

Nets proprietary TLD format description v1.18

5/16

4 TLD Definitions
The TAGs are grouped into the following sections based on the type of information the tag contains
1.
2.
3.
4.
4.1

Terminal Info tags


ECR Info tags
Card Info tags
Financial transaction data tags
Terminal Info Tags, group 10xx.

Tags in this group are used to pass terminal information in the Device Attribute message from terminal to the ECR.
The following exceptions exist:
1.
2.
3.
4.

Tag 1 012 is used by ECR to ask for the terminals host connection status in a TLD request message. The terminal
uses the same tag in the TLD response message.
Tag 1 013 is used by the terminal to report status of Card Status (Inserted, removed or swiped) to ECR.
Tag 1 014 is used by ECR can set (configure) terminal. (set Language command)
Tag 1 015 is used by ECR can set (configure) terminal. (set Service text ID)

Message
Type

TAG NAME

Tag
Numb
er

LENGTH

Range

DATA Description

Info

ITU Test Info

1000

Min=1,
Max=1

Alpha Numeric

H20 = internal test in the ITU went OK


H21 = internal test in the ITU went wrong

Info

ITU Status Info

1001

Info

Terminal ID

1002

Site ID

1003

AlphaNumeric
Alpha Numeric
Numeric

H20 = bank ONLINE


H21= bank OFFLINE
Terminal ID

Info
Info

ITU Version

1004

Min=1,
Max=1
Min=8,
Max=8
Min=6,
Max=6
Min=4,
Max=4

Numeric

6 numeric digits, the 6 rightmost digits of


the merchant number
4 digits, 2 byte terminal type and 2 digits
SW version
Terminal Type is documented in file:

swc transport spec, appendix a


v1.6.docx
in folder:
O:\5000-526 Handel og
Varekjp\Terminal\Archive\DOC_TER
M\Software Centre
Info

ITU SW version

1005

Min=4,
Max=10
Min=14,
Max=14

Alpha Numeric
Numeric

Info

ITU TimeStamp Power On 1

1006

Info

ITU TimeStamp Power On 2

1007

Min=14,
Max=14

Numeric

Info

ITU Physical Serial Number

1010

Min=1,
Max=20

Alpha Numeric

Nets proprietary TLD format description v1.18

SW version = Sofie host protocol version


ITU Software Configuration Version
ITU TimeStamp POWER_ON_1
Format:
"YYYYMMDDHHMMSS"
ITU TimeStamp POWER_ON_2
Format:
"YYYYMMDDHHMMSS"
ITU Physical Serial Number

6/16

Request/
Response

PSP Connection Status

1012

Min=1,
Max=1

Alpha
Numeric

Status

Card Inserted Status

1013

Min=1,
Max=1

Numeric

Command

Set ITU Language Code

1014

Min=2,
Max=2

Alpha Numeric

Command

Set Service Text Id

1015

Min=2,
Max=2

Numeric

Status

SWC Configuration version

1016

Min=4,
Max=10

Alpha Numeric

Nets proprietary TLD format description v1.18

0 (H30) = Connected to PSP


1 (H31) = Not connected to PSP
2 (H32) = Com via ECR
3 (H33) = Not supported
REMARK: This tag is deprecated
Card Inserted Status
0 (H30) = Card is withdrawn
1 (H31) = Card is inserted
2 (H32) = Card is swiped
2 byte LANGUAGE CODE as per ISO_639_1
no = Norwegian
sv = Swedish
en = English
da = Danish
00= No text
01 = Velg vare
02 = Velg tjeneste
This tag is used to send the Software
Center Configuration Version to ECR. Only
sent before a new ITU software version is
downloaded

7/16

4.2

Value Added Service tags, group 20xx.

Value Added Service Group 20xx


These tags are used to pass information between ECR, ITU and PSP.
In case of any error situation the terminal can insert information in e.g. the Status Code tag.
This Information can be transported in the Request/Response message.

Message
Type

TAG NAME

Tag
Numb
er

LENGTH

Range

DATA Description

Request/
Response

Value Added Service

2000

Min=3,
Max=3

Numeric

Request/
Response
Request/
Response

Customer id

2001

PSP Command

2002

Min=0,
Max=32
Min=3,
Max=3

Alpha Numeric
Numeric

Value Added Service


Info requested from ECR.
Currently listed requests are as below.
001 = Customer Info
002-999 = RFU
ID of the customer

Request/
Response

Status Code

2003

Min=2,
Max=2

Numeric

Request/
Response

Status Text

2004

Min=0,
Max=32

Alpha
Numeric

Request/
Response
Request/
Response

Customer Name

2005

Information field 1

2006

Min=0,
Max=32
Min=0,
Max=64

Alpha
Numeric
Alpha
Numeric

Request/
Response

Information field 2

2007

Min=0,
Max=64

Alpha
Numeric

Nets proprietary TLD format description v1.18

Command to be invoked at PSP.


Valid Range: 001 999
Currently listed commands are as below:
001 = GET Customer info
002 = SET Customer info
003 = Generate Signature Token
Status code returned for the command
executed on PSP.
Currently listed status codes are as
below.
00 = OK
01 = No Data
02 = Unsupported feature
03 = Unsupported command
04 = PSP Service unavailable
05 = Terminal offline
06 = Unsupported issuer
07 = Invalid Card
08 = Single App exclude issuer
09 = Request not valid
Only used in response messages
Status text corresponding to the status
code.
Only used in response messages
Name of the customer
Information field 1 from ECR to PSP in
the request
Information field 1 from PSP to ECR in
the response
Information field 2 from ECR to PSP in
the request
Information field 2 from PSP to ECR in
the response

8/16

Request/
Response

PSP VAS ID

2008

Min=3,
Max=3

Numeric

Request/
Response

Customer Id 2

2009

Min=0,
Max=32

Alpha Numeric

Request

Exclude Issuer

2010

Min = 2,
Max = 2

Numeric

Used together with PSP Command to


identify service to be invoked.
Currently listed VAS IDs are as below.
Customer Specific values = xxx
TEST = 999
ID of the customer, it will be used in case
where second field for customer Id is
required.
To exclude an issuer from the card during
application or Track selection.
Its a request only from ECR to terminal.
Note :
The value of the EXCLUDE_ISSUER tag in
the first GetCustomerInfo/GetCardData
message received in the customer
session will be used to select an
application/track. The value of any
EXCLUDE_ISSUER tag in the next
GetCustomerInfo/GetCardData
commands will be ignored. That is; the
terminal will select an application based
on the first command received and not
perform a reselection of
application/track until a purchase
command/cancel command is received.

Request/
Response
Request/
Response

Request/
Response
Request/
Response
Request/
Response

Terminal CVM

2011

Terminal Card

2012

Terminal Amount

2013

Signature Token

2014

Card Validation

2015

Nets proprietary TLD format description v1.18

Min=1
Max=1
Min=1,
Max=1

Min=1,
Max=8
Min=0,
Max=52
Min=2,
Max=2

Numeric
Numeric

Numeric
Alpha Numeric
Alpha Numeric

Unicapt:
This tag can also be used with the tag:
Card data (3001): PAN
[0] Confirm with OK
[1] Confirm with PIN
[0] Current card (last swiped card)
[1] Request new card
NOTE: omission of this tag means that
the terminal shall use the current card.
Amount in ore.
For example: ReEncrypted PIN
[00] Validation OK
[01] Validation failed

9/16

Customer Dialog Group 21xx


These tags are used to pass information between Customer and ECR.

Message
Type

TAG NAME

Request/
Response

Tag
Num
ber

LENGTH

Range

DATA Description

2100

Min=3

NA

001 = version1

Customer Dialogue

Max=3

002-999 = RFU

Request/
Response

TextID

2101

Min=1,
Max=8

Numeric

The ID of predefined texts.

Request/
Response

KeyboardInputFormat

2102

Min=1,
Max=1

Numeric

KeyboardInputFormat
[0] No Keyboard Input
[1] numeric
[2] alphanumeric

Request/
Response

CardInputFormat

2103

Min=1,
Max=1

Numeric

CardInputFormat
[0] No Card Input
[1] Mag Track1
[2] Mag Track2
[3] Mag Track3

Request/
Response

KeyboardMinChar

Request/
Response

KeyboardMaxChar

Request/
Response

CustomerData

2104

2105

2106

Nets proprietary TLD format description v1.18

Min=3,
Max=3

Numeric

Min=3,
Max=3

Numeric

Min=0,
Max=128

AlphaNu
meric

Min number of input char

Max number of input char


The entered data by keyboard or card
swipe.

10/16

4.3

Card Info tags, group 30xx

Card Info tags 30xx


These tags are used to pass Card, Issuer and Site information from terminal to ECR
This Information can be transported in the Request/Response message.
Tag
LENGTH Range
DATA Description
Message TAG NAME
(TAG ID)
Numb
Type
er
Request/
Response

GetCardInfo

3010

Min=3,
Max=3

Numeric

[Applicable Telium]
001= All specific tags must be included
002-999 = RFU

Request/
Response

ICC Group ID Information

3000

Min=1,
Max=20

AlphaNumeric

ICC Group ID Information

Request/
Response

Card Data: PAN

3001

Min=1,
Max=19

Alpha Numeric

Card Data: PAN.


For card issuers not registered on
merchant site: PAN is empty.
(Local mode rejected and display text as
unknown card.)
For non-PCI cards registered on
merchant site as loyalty cards: PAN is
card number in clear text.
[Applicable Unicapt32]
For Norwegian bank card issuers
registered on merchant site and not in
scope for PCI: PAN is encrypted
For all other card issuers registered on
merchant site (PCI as well as non-PCI
cards): PAN is filled with 0s.
[Applicable Telium]
For all other card issuers registered on
merchant site (PCI as well as non-PCI
cards): PAN is truncated (6+4 format).

Request/
Response
Request/
Response

Issuer ID

3002

Min=1,
Max=10
Min=3,
Max=3

Numeric

Country Code

3003

Request/
Response

Card Restrictions

3004

Min=1,
Max=1

AlphaNumeric

Request/
Response

Card Fee

3005

Min=1,
Max=1

AlphaNumeric

Nets proprietary TLD format description v1.18

Numeric

Issuer ID
Data is empty for unknown issuers.
Country Code for Terminal site

Restrictions - Whether the Terminal site


has use restrictions on a card with the
issuer ID from TAG 30 02. If this service
is not enabled, the field contains a -
Fee Whether the Terminal site has to
pay a fee when a customer is using a card

11/16

Request/
Response

Track2

3009

Min=1,
Max=39

AlphaNumeric

with the issuer ID from tag 30 02. If this


service is not enabled, the field contains
a -
[Applicable Telium]
Only available for cards which are not in
scope of PCI-DSS/PA-DSS.
Restrictions depending on issuer dataset
facility code, byte 15 and byte 16

Request/
Response

TCC

3011

Min=3,
Max=3

AlphaNumeric

Transaction Condition Code


Byte 1 - Card Data Entry
D- Magnetic stripe Track 2/3
E- Magnetic stripe Track 2/3
as fallback for ICC.
T - Key entered
I - ICC
D - Contactless magnetic
i - Contactless ICC
_ - Not defined
Byte 2 CVM
@ - Signature based
A - Online PIN
B - Offline PIN
C - No CVM
W - Offline PIN and signature based
_ - Not defined

Byte 3 Authorization
1 - Online authorization
3 - All other approved offline and all
declined offline
4 - Approved referral
5 - Approved refund (online/offline) or
Forced Offline for other business calls

Nets proprietary TLD format description v1.18

12/16

_ - Not defined

Request/
Response

BankAgent

3012

Min=0,
Max=16

AlphaNumeric

BankAgent

Request/
Response

Track3

3013

Min=0,
Max=

AlphaNumeric

[Applicable Telium]
Loyalty information present on track3 of
a customer specific non-ISO card.

107

Request/
Response

Chip Loyalty Info

3014

Min=0,
Max=

AlphaNumeric

[Applicable Telium]
Loyalty information present on specific
tag of a customer specific co-branded
chip card.

107

Examples of such tags can be tag 9F1F or


proprietary tag DF53.
Request/
Response

Request All 3xxx tags

3999

Nets proprietary TLD format description v1.18

Min=0,
Max=0

NA

TLD request with tag 3999 makes the


terminal return all tags in the 3xxx range
except 3010.

13/16

4.4

Financial transaction data tags, group 4xxx.

Financial transaction data tags 4xxx


Message
Type

TAG NAME
(TAG ID)

Tag
Numb
er

LENGTH

4000

Min=23,

Reports data header

Max=23

6 byte SITE number. The 6 rightmost


bytes from the merchant ID used in
communication to the HOST.
3 byte session number received from the
HOST during the last reconciliation.
8 byte current date in YYYY/MM/DD
format.
6 byte current time in HH:MM:SS format.

4001

Min=41,

Range

Binary

Min=1,

Binary

Min=1,

Binary

Min=1,
Max=10
00

Nets proprietary TLD format description v1.18

Z-report data, amounts


Same data definition as reconciliation
data.

Max=10
00
4004

X-report data, amounts


Same data definition as reconciliation
data.

Max=10
00
4003

Reconciliation data, amounts


2 byte issuer id
4 byte number of transactions
1 byte sign. "+" hex 2b or "-" hex 2d
11 byte total amount, total debits total
credits
11 byte cash amounts
11 byte deposit amounts
1 byte separator, H1C
Several issuers can be sent in the same
message.
The cash amount and deposit amount is
included in the total amount in the
reconciliation data amounts.
The amount data content shall be sent to
the ECR for each issuer that is active,
even if an issuer has no registered
amounts for the report in use. (No zero
skip in the send data function)

Max=10
00

4002

DATA Description

Binary

INFO field
Numeric data (H20 .. H7F). The data field
shall be sent to the ECR if the terminal
receives such information from the
HOST.

14/16

4005

Min=1,
Max=10
00

Binary

<TopUpCode> Variable field Format is


<Article EAN num>
<US><Mnemonic><US>
<Activation code><US><Serial num>
<US><Value><RS>
<EAN> Article EAN num is variable length
alphanumeric field. See Note!
<US> H1F, ASCII Unit Separator
<Mnemonic> Merchandise Operator
mnemonic is variable length
alphanumeric field. See Note!
<US> H1F, ASCII Unit Separator
<Activation Code> Activation code is
variable length alphanumeric field. See
Note!
<US> H1F, ASCII Unit Separator
<Serial Number> Serial num is variable
length alphanumeric field. See Note!
<US> H1F, ASCII Unit Separator
<Value> Value is variable length numeric
field. Value is represented in cent
without comma notation. See Note!
<RS> H1E, ASCII Record Separator,
used as a separator between each
TopUpCode record
Notes:
It is essential that the order of the
TopUpCodes is the same as the <EAN
art.> data in the Transfer Amount
function.
The value is the value of the purchased
merchandise, not the price paid for it. I.e.
you can pay 500,- for a merchandise that
has a value of 800,- The 80000 is the
value that is used in this field.
BBS terminal limitations for the different
TopUpCode data fields:
<EAN> max 14 characters
<Mnemonic> max 11 characters
<Activation Code> max 25 characters
<Serial Number> max 16 characters
<Value> max 7 characters

Nets proprietary TLD format description v1.18

15/16

4.5

ECR Command tags, group 5xxx

ECR Command tags 5xxx


These tags are used to send commands from ECR to Terminal
This Information can be transported as Command message type.
Tag
LENGTH
Message TAG NAME
(TAG ID)
Numb
Type
er
Command

ECR Command Envelop

5000

Min=0,
Max=0

Command

Set pinpad backlight

5001

Min=1,
Max=1

Range

DATA Description

Numeric

0 (H30) = Set pinpad backlight OFF


1 (H31) = Set pinpad backlight WHITE

Command

Set card reader backlight

5002

Min=1,
Max=1

Numeric

Command

Set pinshield light

5003

Min=1,
Max=1

Numeric

REMARK: Only for iUN terminals


0 (H30) = Set card reader backlight OFF
1 (H31) = Set card reader backlight
GREEN
REMARK: Only for iUN terminals
0 (H30) = Set pinshield light OFF
1 (H31) = Set pinshield light ON
REMARK: Only for iUN terminals

4.6 Tags reserved for future use


Tag Group 0xxx, 6xxx 9xxx are reserved for future use

Nets proprietary TLD format description v1.18

16/16

You might also like