100% found this document useful (1 vote)
2K views32 pages

Protocol Dp25 Dp05 Dp500 Dp500l

The document provides a description of the protocol for DATECS ECRs (electronic cash registers) including the DP500PLUS KL, MP-55 KL DP-05 BT, and DP-25 BT models. It describes the different operational modes and statuses of the fiscal device, including initial status, status after formatting the fiscal memory, tutorial mode, fiscalized mode, and irrecoverable error status. It also outlines the taxation categories and VAT calculation, commands to control the fiscal device, and how status bytes reflect the current status of the fiscal device.

Uploaded by

dizzirom
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)
2K views32 pages

Protocol Dp25 Dp05 Dp500 Dp500l

The document provides a description of the protocol for DATECS ECRs (electronic cash registers) including the DP500PLUS KL, MP-55 KL DP-05 BT, and DP-25 BT models. It describes the different operational modes and statuses of the fiscal device, including initial status, status after formatting the fiscal memory, tutorial mode, fiscalized mode, and irrecoverable error status. It also outlines the taxation categories and VAT calculation, commands to control the fiscal device, and how status bytes reflect the current status of the fiscal device.

Uploaded by

dizzirom
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/ 32

DATECS

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25 BT


DESCRIPTION OF THE PROGRAM INTERFACE

INTRODUCTION
The fiscal device operates under the control of an application program, with which communicates via the
RS232 serial connection. The device executes a previously set of wrapped commands, arranged according to the
type of the operations which have to be executed. The application program does not have a direct access to the
resources of the fiscal device although it can detect data connected with the status of the fiscal device and the
fiscal memory.
The fiscal device performs the following types of operations:
Saves the serial number of the fiscal device and the number of the fiscal memory;
Saves fiscal parameters, like the (EIK - Unified Identification Code), the date of entering into
exploitation, etc.;
Saves information on the owner - name and address, etc.;
Saves the daily turnover in the fiscal memory and generates a daily report;
Saves the text from the fiscal receipts and daily reports in KLEN (electronic journal)
Generating reports on concluded sales and the content of the fiscal memory;
Dispatching data to the application program.

TAXATION CATEGORIES AND CALCULATION OF VAT ()


Each concluded sale can be related to a certain taxation category (VAT) defining a tax rate, applicable to the
base price used for the formation of the sale price. The cash register can operate with a maximum of 8 taxation
categories, which are most often indicated with the first letters of the language of the country, where the cash
register is used - in the case of Bulgaria these letters are , , , , , , , .
Each of the taxation groups has a set tax rate (in percent) which is expressed by a number not greater than
99.00 and by no more than two digits after the decimal point.
Part of the four standard categories may be forbidden by using Enabled_taxes in the 83(53H) command.
The commands for registering sales read the said four letters as a parameter.
The commands for selling accept as a parameter the capital letters , , , , , , and in 1251
code table. In some cash registers can be set 1251 or DOS code table from the cash register menu.
FUNCTION MODES OF THE FISCAL DEVICE
The fiscal device has two functional modes:
1. The tutorial mode. The device is not fiscalized and all data needed for its normal functioning are entered
and saved in the fiscal memory with the exception of the tax registration number of the owner. Fiscal receipts
can be opened and closed but they always bear the inscription that they are not fiscal. Daily financial reports
with clearing can be generated but they are not saved in the fiscal memory.
2. Normal mode. The device has been fiscalized and the tax registration number of the owner is saved in
the fiscal memory. Al fiscal rules apply.
STATUS OF THE FISCAL DEVICE
The status of the fiscal device can differ. Shifting from one to another condition is not always possible. The
control of the cash register and the shifting between the different functions - when this is possible - is executed
by the application program Host (PC), which must relate to the included protocol. If this protocol is not applied
correctly the cash register might enter into an undesirable status or to skip a given functional status, leading to
an ERROR.
A) INITIAL STATUS
This is the functional status in which the date and the hour are set, the number of the fiscal memory is
entered as well as the serial number and the code of the country where the device will be operated.

THE ABOVE-DESCRIBED OPERATIONS ARE PERFORMED PRIOR TO SELLING THE DEVICE TO THE
CLIENT ONLY BY AN AUTHORISED SERVICE SPECIALIST!
The following commands must be performed in the order in which they are presented: 61 (3DH) and 91
(5BH).
B) STATUS AFTER THE FORMATTING OF THE FISCAL MEMORY

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

This is the state in which the name of the currency is entered, the number of the digits after the decimal point
and the tax rates. After performing these operations the cash register is ready for delivery to the future operator
(owner). This is also the status in which the device is kept in the warehouse of the manufacturer.
Command (53H) has to be performed.
C) STATUS WHEN PRESENTING THE DEVICE TO THE CLIENT
In this functional state the header and the footer are set - the beginning and the end of each receipt. The
header contains information on the owner (name of the company, address etc.) while the footer is usually a short
advertisement text.
The command 43 (2BH) is performed as many times as is the number of printed lines.
D) TUTORIAL MODE
The cash register is in this status prior to fiscalization. Receipts can be issued but it must be born in mind that
they will bear the mark non-fiscal. The generation of a daily turnover report with clear but it will not be saved
into the fiscal memory. A tax registration number is also entered but not into the fiscal memory and is subject to
change. The clearing of the memory does not cause an entry in the fiscal memory. The clock may be set
arbitrarily.
E) A FISCALIZED CASH REGISTER
In this functional status fiscal receipts may be issued and they will be marked fiscal. The daily report and
clear is registered in the fiscal memory and the setting of the date is possible only ahead in relation to the last
entry in the fiscal memory. The tax registration number is registered in the FM and cannot be changed from
this point on. It is IMPOSSIBLE for the cash register to exit the fiscal mode without changing the fiscal
memory.
The (EIK - Unified Identification Code) number of the owner of the device must be known prior to
fiscalization. Command 98 (62H) after which the command 72 (48H) must be executed. To be able to print
fiscal receipts the cash register must be registered in National Revenue Agency with the proper program.
F) IRRECOVERABLE ERROR IN THE CASH REGISTER
This is the status of the cash register when a serious technical or logical mistake has occurred as well as in
case of fiscal memory failure, KLEN or tax terminal. After switching on the device in this mode a message on the
display appears. The cash register does not perform commands for opening fiscal receipts as well as documents,
which save data entries into the fiscal memory. Only diagnostic commands and periodic reports can be executed.
Clearing the RAM and placing a new fiscal memory module must be performed because the module used before
the error is now switched to the READ ONLY mode. ALL THESE OPERATIONS MUST BE PERFORMED BY

AN AUTHORIZED SERVICE SPECIALIST.

The events, which can bring the cash register to this state, are:
-

Impossibility to make a correct entry in the fiscal memory;

Invalid control sum, EIK, serial number, reg. No. of the fiscal memory or some of the entries which
contain the tax rates.
-

Unidentified format of the fiscal memory module;

If during the fiscal memory check up (immediately after switch ON) more than three invalid control
sums from a daily report fiscal entry are found.
-

No communication with the tax terminal or another one is connected.

No communication with KLEN or locked one

Filled up KLEN. It is unlikely to come given its size.

STATUS BITS OF THE CASH REGISTER


The current status of the device is coded in field 6 bytes long which is sent within each message of the cash
register. Description of each byte in this field:
Byte 0: General purpose
0.7
Reserved always 1
0.6
Reserved always 0
0.5
General error - OR of all errors marked with #

DATECS
BT
0.4
0.3
0.2
0.1
0.0

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

Reserved always 0
Not connected a customer display
Reserved always 0
Code of incoming command is invalid
Incoming data has syntax error

Byte 1: General purpose


1.7
Reserved always 0
1.6
The internal tax terminal does not respond
1.5
Reserved always 0
1.4
Reserved always 0
1.3
Reserved always 0
1.2
Reserved always 0
1.1
If command cannot be performed in the current fiscal mode
1.0
If during command some of the fields for the sums overflow. Status 1.1 will also be set and the
command will not cause changes to the data in the cash register.
Byte 2: General purpose
2.7
Reserved always 1
2.6
Not used
2.5
A non-fiscal receipt is opened
2.4
Coming end of KLEN (10MB free)
2.3
A fiscal receipt is opened
2.2
End of KLEN (less than 1 MB of KLEN free)
2.1
Reserved always 0
2.0
No paper. If the flag is raised during a print-related command it will be rejected and the status of
the cash register will remain unchanged.
Byte 3: The status of the configuration switches
3.7
Reserved always 1
3.6
Reserved always 0
3.5
Reserved always 0
3.4
Reserved always 0
3.3
Reserved always 0
3.2
Reserved always 0
3.1
Reserved always 0
3.0
Reserved always 0
Byte 4: The fiscal memory
4.7
Reserved always 1
4.6
Not used
4.5
OR of all mistakes marked by * from bytes 4 and 5.
4.4
Fiscal memory is full.
4.3
There is space for not more than 50 entries in the FM.
4.2
The serial number and fiscal memory number are set
4.1
(EIK - Unified Identification Code) is set
4.0
Reserved always 0
Byte 5: The fiscal memory
5.7
Reserved always 1
5.6
Not used
5.5
Reserved always 0
5.4
Tax rates have been entered at least once
5.3
The cash register is in a fiscal mode
5.2
Reserved always 0
5.1
The fiscal memory is formatted
5.0
Reserved always 0
POWER SUPPLY CUT-OFF
The status of the cash register at each particular moment is reflected in the so-called status bytes. The
application program must get information on the status of the cash register when switched ON after a power cutoff. This is performed by the commands 76 (4AH) and 103 (67H).
The application program must make a decision on the future behavior of the cash register depending on its
current status. It is guaranteed that the fiscal memory will not be affected by the power failure as well as that all
accumulated sums in the operational memory of the device will be valid. If the power cut-off has occurred during

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

a printing session, when switched ON, again the cash register will print a line containing the text * POWER
DROP * (* *)in an expanded bold type and will then complete the print.
ISSUING FISCAL AND NON-FISCAL RECEIPTS
A) NON-FISCAL RECEIPTS
The receipt is first opened, a text is then printed and the receipt is closed. The commands 38 (26H) are
used, an indefinite number of times the command 42 (2AH) and 39 (27H).
B) FISCAL RECEIPTS
A fiscal receipt is first opened, the sales are registered, payment is performed and the receipt is finally closed.
The following commands are used: 48 (30H), 49 (31H), 51 (33H), 52 (34H), 53 (35H), 54 (36H), 56
(38H) and 58 (3AH). At the end of the day a daily financial report and clear are performed in order to enter
and save the accumulated information in the fiscal memory. The function is started with the command 69 (45H).
/KLEN (KLEN Electronic Journal)
This cash register remember every line from the fiscal receipts, official receipts, documents with service
information from the initialization, X and Z reports in the KLEN. KLEN is with capacity of maximum 2 GB and
during normal operation must be able to store all data coming from cash registers work until the fiscal memory is
filled up. In case of damage or filling up (really active work with the cash register) KLEN can be replaced with an
empty one and the old card to be stored for further reference.
From KLEN can be made these enquires:

Printing a copy of a document by a number, date, time or number of the Z-report.

Downloading a document/documents through the serial port in text format and closure as it possible to
the original view.

Information for the full size of KLEN and for the used space in bytes, the numbers of the first and last
documents on it and the first and last Z-report.

Verification of SHA-1 check sum for the documents from a whole Z-report.

Comparing of the SHA-1 check sums for one or more Z-reports with those stored in the fiscal memory
and printing a result.
Two flags from the status bytes warn for coming end of KLEN (only 10MB free) and end of KLEN (1MB free).
If the flag End of KLEN is set the next commands are prohibited: 38 (Opening a non-fiscal receipt), 42 (Printing
non-fiscal free text), 48 (Open fiscal receipt (invoice)), 49 (Registration of sales), 52 (Registration and display),
54 (Print a free fiscal text), 58(Registering the sale of an item) 84 (Barcode printing).
GENERATING REPORTS
Reports are generated singularly by the cash register upon receiving the respective command from the PC. In
these reports the users program will not add any changes to the appearance and content of the reports, i.e.,
they appear exactly as they have been defined in the cash register. The following commands are used for the
generation of reports:
50 (32H)
Report on changes in tax rates and decimal points
69 (45H)
Daily financial report with or without clear
108 (6CH)
Extended daily fiscal report
117 (75H)
FISCAL CLOSURE (DEPARTMENTS REPORT)
118 (76H)
FISCAL CLOSURE (DEPARTMENTS AND ARTICLES REPORT
79 (4FH) / 95 (5FH) Short financial report from date to date /from number to number of the respective
fiscal entries
73 (49H) / 94 (5EH) Detailed fiscal memory report by closure number / by date of entry.
LOW LEVEL PROTOCOL
A) PROTOCOL TYPE - MASTER (HOST) / SLAVE
The cash register performs the commands sent by the Host and returns messages, which depend on the
result.
The cash register cannot instigate asynchronous communications itself. Only responses to commands from
the Host are sent to the Host. These messages are either wrapped or single byte control codes. The cash
register maintains the communication via the RS232 serial connection at baud rates of 1200, 2400, 4800,
9600, 19200, 38400, 57600 and 115200 b/s, 8N1. The baud rate is set by adjusting the configuration bits 1,2
and 3.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

B) SEQUENCE OF THE MESSAGES


Host sends a wrapped message, containing a command for the cash register.
ECR executes the requested operation and response with a wrapped message.
Host has to wait for a response from the cash register before to send another message.
The protocol uses non-wrapped messages with a length one byte for processing of the necessary pauses and
error conditions.
C) NON-WRAPPED MESSAGES - TIME-OUT
When the transmitting of messages from the Host is normal, Slave answers not later than 60 ms either with a
wrapped message or with a 1 byte code. Host must have 500 ms of time-out for receiving a message from Slave.
If there is no message during this period of time the Host will transmit the message again with the same
sequence number and the same command. After several unsuccessful attempts Host must indicate that there is
either no connection to the cash register or there is a hardware fault.
Non-wrapped messages consist of one byte and they are:
A) NAK 15H
This code is sent by Slave when an error in the control sum or the form of the received message is found.
When Host receives a NAK it must again send a message with the same sequence number.
B) SYN 16H
This code is sent by Slave upon receiving a command which needs longer processing time. SYN is sent every
60 ms until the wrapped message is not ready for transmitting.
D) WRAPPED MESSAGES
a) Host to cash register (Send)
<01><LEN><SEQ><CMD><DATA><05><BCC><03>
b) Cash register to Host (Receive)
<01><LEN><SEQ><CMD><DATA><04><STATUS><05><BCC><03>
Where:
<01>
<LEN>
20H.

Preamble.
1 byte long. Value: 01H.
Number of bytes from <01> preamble (excluded) to <05> (included) plus the fixed offset of

Length: 1 byte. Value: 20H - 7FH.


Sequence number of the frame.
Length : 1 byte. Value: 20H FFH.
The cash register saves the same <SEQ> in the return message. If the ECR gets a message
with the same <SEQ> as the last message received it will not perform any operation, but will
repeat the last sent message.
<CMD>
The code of the command.
Length: 1 byte. Value: 20H - 7FH.
The cash register saves the same <CMD> in the return message. If the cash register receives a
non-existing code it returns a wrapped message with zero length in the data field and sets the
respective status bit.
<DATA>
Data.
Length: 0-213bytes for Host to cash register, 0-218 bytes for Cash register to Host. Value: 20H
FFH ; .
The format and length of the field for storing data depends on the command. If the command
has no data the length of this field is zero. If there is a syntax error the respective status bit is
established in the data and a wrapped message is returned with zero field length.
<04>
Separator (only for cash register-to-Host massages)
Length: 1 byte. Value: 04H.
<STATUS> The field with the current status of the fiscal device.
Length: 6 bytes. Value: 80H-FFH.
<05>
Postamble
Length: 1 byte. Value:05H.
<BCC>
Control sum (0000H-FFFFH)
Length: 4 bytes. Value of each byte: 30H-3FH.
The sum includes between <01> preamble (excluded) to <05>. Each digit from the two bytes
is sent after 30H is added to it. For example the sum 1AE3H is presented as 31H, 3AH, 3EH,
33H.
<03>
Terminator
<SEQ>

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

Length: 1 byte. Value: 03H.

MESSAGE COMPOSITION, SYNTAX, AND MEANINGS


a) The data field depends on the command.
b) The parameters sent to the cash register may be separated with a comma and/or may have a fixed length.
c) The comma between the parameters shows that it is mandatory.
d) When the parameters are closed by <> they are mandatory although the brackets themselves are not
present in the message. When a given parameter is closed in [ ] it is not mandatory - the bracket themselves
are also not present in the message. When parameters are separated by | symbol, only one of them may
present in the input data.
The symbols with ASCII codes under 32 (20H) have special meanings and their use is explained whenever
necessary. If such a symbol has to be sent for some reason (for example in an ESCAPE-command to the display)
it must be preceded by 16 (10H) with an added offset 40H.

Example: when we write 2500, 100, Text for the data field then in that field there will be 2D 32 35 30 2C
31 30 30 2C 54 65 78 74 where each hexadecimal digit is an ASCII value.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

LIST OF FISCAL COMMANDS - FUNCTIONAL ARRANGEMENT


This section contains a list of the cash register commands arranged in groups depending on their functions:
INITIALIZATION
2BH (43)
Setting the HEADER and the FOOTER and printing options
3DH (61) Date and hour
48H (72)
Fiscalization
53H (83)
Setting the multiplier, decimal points, name of currency and tax rates.
55H (85)
Setting the additional methods of payment
57H (87)
Programming a department.
5BH (91)
Programming the manufacturers serial number, the number of the fiscal module and the
number of the country
62H (98)
Setting of ( - unified identification code)
65H (101) Entering the operators password
66H (102) Entering the name of the operator
6BH (107) Defining of and items report
73H (115) Loading the graphic logo
SALES
30H (48)
31H (49)
33H (51)
34H (52)
35H (53)
36H (54)
38H (56)
3AH (58)
3CH (60)
6DH (109)

Opening a fiscal receipt


Registering a sale
Subtotal
Registering a sale and showing it on the screen
Sum calculation (tender).
Printing a free fiscal text
Closing a fiscal receipt
Registering an item sale
Canceling a fiscal receipt
Printing a duplicate receipt

DAILY CLOSURE
45H (69)
6CH (108)
75H (117)
76H (118)

Daily financial report (fiscal closure)


Fiscal closure (with articles report)
Fiscal closure (with department report)
Fiscal closure (with departments and articles report)

REPORTS
32H (50)
49H (73)
4FH (79)
5EH (94)
5FH (95)
69H (105)
6FH (111)

Report on changed tax rates and decimal points through the period
Detailed report of the fiscal memory (from number to number)
Short report of the fiscal memory (from number to number)
Detailed report of the fiscal memory (from date to date)
Short report of the fiscal memory (from date to date)
Operators report
Items report

INFORMATION TO HOST
3EH (62)
Turns back the date and the hour
40H (64)
Information on the last fiscal entry
41H (65)
Information on daily taxation
44H (68)
Number of the free entries in the fiscal memory
4AH (74)
Receiving the status bytes
4CH (76)
Status of the fiscal transaction
56H (86)
Reading the data of the last memory record
58H (88)
Get department information
5AH (90)
Return diagnostic information
61H (97)
Receiving the tax rates
63H (99)
Tax registration number
67H (103) Information on the current receipt
6EH (110) Receiving information on the sums arranged according to the type of payments

DATECS
BT
70H
71H
72H
74H

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25


(112)
(113)
(114)
(116)

Receiving information on the operator


Receiving information on the last printed document
Receiving information on a fiscal entry or selected period.
Reading a fiscal memory block.

CASH REGISTER CONTROL COMMANDS


2CH (44)

Advance paper

DISPLAY
21H (33)
23H (35)
2FH (47)
3FH (63)
64H (100)
OTHERS
26H (38)
27H (39)
2AH (42)
46H (70)
47H (71)
50H (80)
59H (89)
5CH (92)
6AH (106)
77H (119)

Clearing the display


Showing a text (lower line)
Showing a text (upper line).
Showing the date and the hour.
Display - full control.
Opening a non-fiscal receipt
Closing a non-fiscal receipt
Printing of a non fiscal text
Office cash-in and cash-out
Print diagnostic information
Sound signal
Programming the manufacturing test area
Separator line printing
Drawer kick-out
Working with /KLEN (KLEN Electronic journal)

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

DETAILED DESCRIPTION OF THE COMMANDS


21H (33)

CLEARING THE DISPLAY

Data field:
Response:

No data
None

A clear display command is sent. If a fiscal receipt is opened only the lower line is cleared.
23H (35)

TEXT ON THE LOWER LINE OF THE DISPLAY

Data field:
Response:

Text

<Text>
None
A text of up to 20 symbols is sent directly to the display. Prior to this a command for
positioning and clearing the lower line is sent.

26H (38)

OPENING A NON-FISCAL RECEIPT.

Data field:
Response:

None
Allreceipt,ErrCode

Allreceipt

The number of all issued receipts (fiscal and non-fiscal) from the last daily closure on (4

ErrCode

Error code when the command is unsuccessful /1 byte/.

bytes).

The ECR performs the following actions:


- Prints the header
- Print the tax registration number of the seller
- A response is received which contains Allreceipt
If the command cannot be executed S1.1 is raised and ErrCode contains the code of the error.
1 The fiscal memory has not been formatted
2 There is an opened fiscal receipt
3 There is an opened non-fiscal receipt
4 The clock is not set
27H (39)

CLOSING A NON-FISCAL RECEIPT.

Data field:
Response:

Allreceipt

None
Allreceipt
The number of all issued receipts (fiscal and non-fiscal) from the last daily closure on (4

bytes).

TheECR
-

performs the following actions:


Prints the footer
The sequence number, date and hour of the document are printed
(NON-FISCAL RECEIPT) is printed in expanded style

If the S1.1 flag is raised the command is not executed because there is no opened non-fiscal receipt.

2AH (42)

PRINTING OF A FREE NON-FISCAL TEXT

Data field:
Response:

Text
None
A text up to 46 symbols. The symbols after 46th are cut off.

Text

In the beginning and end of the line is printed a symbol #.


2BH (43)

SETTING HEADER, FOOTERS AND PRINTING OPTIONS

Data field:
Response:

<Item>,<Text>
None or current settings in case of Item = I

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

10

HEADER consists of 6 lines of text, which are printed at the beginning of each fiscal and non-fiscal receipt.
The cash register will function normally only when at least two header lines have been programmed for
printing. (EIK - Unified Identification Code) /set with command 98/ is printed only at line #3, so the rest
lines after second are moved automatically with a position down.
FOOTER consists of 2 lines of text printed at the end of each receipt.
HEADER and FOOTER are automatically center aligned.

Item

One symbol having the following meaning:


0 to 7
The sequence number of the set line the header lines being numbered from 0 to 5 and
those of the footer - 6 and 7.

Permission/rejection of the automatic sales formatting like in an invoice (Quantity, single


price and price in separate lines).
B
For the ECRs it is not serviced and does not return an error.
C
For the ECRs it is not serviced and does not return an error.
D
Sets cash register intensity. Possible values:
1: very pale
2: pale
3: normal
4: dense
5: very dense
E
Permission/rejection of printing of the amount in EUR in the first command for paying
(53) on a fiscal receipt. By default this option is disabled. Optionally the command can
set a valid exchange rate EUR/. Data syntax:

<Enable>[,Rate]

L
N
R
T

Enable

Flag permission/rejection of printing . One byte: 0 or 1.

Rate

Exchange rate. Floating point number with up to 8 significant digits and


5 decimal signs. If missing, the existing value will not be changed. If the
value is

Permission/rejection of the printing of the graphic logo immediately before the header.
This logo is defined with the command 115 (73H). The data Text is in format
<Enable>. Enable is one byte with value 1 (permitted) or 0 (forbidden).
Permission/rejection of the printing of the department name before the sale.
For the ECRs it is not serviced.
Permission/rejection of the printing of the accumulated tax () for the receipt in
normal (not extended /invoice/) fiscal receipt.
Permission/rejection of the automatically generated pulse for drawer kick-out after

X
commands 53 (35H) 70 (46H).
I
Gives us the option to read the values, set earlier with command 43. After the letter I
only one more symbol follows which coincides with some of the above.

Text

A text string up to 36 symbols:

If <Item> is a digit from 0 to 7 - the text of the respective line (up to 40


symbols).

If <Item> = A - One symbol value 0 or 1, where 0 forbids and 1 permits


automatic invoice formatting.

If <Item> ='B' For the ECRs is not serviced.

If <Item> = C for the ECRs is not serviced.

If <Item> = D - Printing density (1 to 5)

If <Item> = E Response is Enable,Rate, where Enable is flag


permission/rejection and Rate is current set exchange rate.

If <Item> = L - One symbol value 0 or 1, where 0 forbids and 1 permits


printing of graphic logo immediately before the header. Graphic logo is defined using command
115.

If <Item> = N - One symbol value 0 or 1, where 0 forbids and 1 permits


printing the department name before a department sale.

If <Item> = R For the ECRs is not serviced.

If <Item> = T - One symbol value 0 or 1, where 0 forbids and 1 permits


printing the printing of the accumulated tax () for the receipt in normal (not extended
/invoice/) fiscal receipt.

If <Item> = X - One symbol value 0 or 1, where 0 forbids and 1 permits the


automatically opening of the drawer after commands 53 (35H) 70 (46H).

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

2CH (44)

11

ADVANCING PAPER

Data field:
Response:

Lines

Lines
None
Advancing paper measured in lines. The programmed line count cannot be greater than 99 (1
or 2 bytes). If the parameter is not there the default setting is 1 line.

2F(47)

DISPLAYING A TEXT ON THE UPPER LINE OF THE DISPLAY

Data field:
Response:

Text

Text
None
A text of 20 symbols which is sent directly to the display. Prior to this a command for the
positioning and clearing of the upper line. If a fiscal receipt is opened and SW1 is OFF the
command is rejected.

30H(48)

OPENING A FISCAL CLIENTS RECEIPT

Data field:
Response:

<OpCode>,<OpPwd>,[TillNmb][,Invoice]
Allreceipt,FiscReceipt

OpCode
OpPwd
TillNmb
Invoice

Operators number (1 to 16)


Operators password (4 to 8 digits)
Number of the point of sale (a whole number of maximum 99999)
One symbol with value I. If present, the receipt is printed as invoice. The invoice number is
printed in the beginning, the sales are formatted differently, and after the payment the sums
acording to VAT groups are printed. The user must print the needed information about the
buyer, without it the document will not be a valid invoice (Command 57 (39h)).
Allreceipt
The number of all issued receipts (fiscal or not) from the last daily closure up to the moment
(4 bytes).
FiscReceipt The number of all fiscal receipts from the last daily closure up to the moment (4 bytes).
The ECR performs the following actions:
-

Prints the HEADER


Prints (EIK - Unified Identification Code)
Prints the number and name of the operator as well as the cashier desk number
Allreceipt and FiscReceipt are returned

The command will not be successful if:


- There is an opened fiscal or non-fiscal receipt
- The maximum number of receipts, as fixed for the day, has already been issued
- The fiscal memory is full
- The fiscal memory is damaged
- No code or operator password available or cashier desk number
- The HEADER contains less than 2 lines
- No (EIK - Unified Identification Code) number available
- Wrong operator password
- The clock needs setting
- The electronic journal (KLEN) is full or not functionable.
- The tax terminal is not functionable or the contained information does not correspond to this in
the fiscal memory.
After entering three wrong operators passwords the ECR blocks and must be switched off and ON again to
restart operating.
31H(49)
REGISTRATION OF SALES
Data field:

[<L1>][<Lf><L2>]<Tab><TaxCd><[Sign]Price>[*<Quan>][,Perc|;Abs]
or
[<L1>][<Lf><L2>]<Tab><Dept><Tab><[Sign]Price>[*<Quan>] [,Perc|;Abs]

Response:

None

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

L1
Lf
L2
Tab
TaxCd

12

A text of 30 bytes containing one line of description of the sale.


One byte, containing 0Ah.
A text of 30 bytes containing a second line describing the sale.
One byte containing 09h.
One byte containing the letter (, , , ...) which indicates the type of the tax. There is a
restriction, depending on the parameter Enabled_Taxes which is set together with the
setting of the type of currency for use with command 83 (53H).
Department number. An integer from 1 to 99 (including). The VAT group of the sale is the tax
group of the department.
One byte with a possible value -.
This is a singular price and it consists 8 meaningful digits.
A non-mandatory parameter setting the quantity of the items for sale. By default this is
1.000.The length of this parameter is 8 meaningful digits (not more than 3 after the decimal
point). The result Price*Quan is rounded up to the set number of digits and cannot be longer
than 8 meaningful digits.
This is also a non-mandatory parameter which sets the value of the discount or surcharge
(depending on the symbol) in percent over the currently performed sale. Possible values are
between - 99.00% and 99.00%, where up to 2 decimal places are acceptable.
This is a non-mandatory parameter showing the value of the surcharge and discount
(depending on the sign) as an amount. It is not acceptable a discount with value higher than
the value of the sale.

Dept
Sign
Price
Quan

Perc
Abs

The ECR performs the following actions:


- The text, describing the sale is printed out together with the price and the code of the discount or
surcharge. If there is a set quantity the information on it is printed out too.
- The price of the items sold is accumulated to the sums already stored in the operational memory.
In case of memory overflow the value of the respective bites of the status field will be set.
- If there is a discount or a surcharge it is printed out on a separate line and is then added to a
specially maintained registers in the cash register. The values for the day are printed out together
with the daily financial report.
- If a department number is in the command line, then the price is added to the accumulated sum
of this department. Discounts and mark ups (if present) are added to this sum, too.
The command will not be correctly executed if and when:
- No fiscal receipt has been opened
- The maximum number of sales for one receipt have already been performed (374)
- The 35h command has been successfully executed
- The sum for some of the tax groups has become negative
- The sum of discounts and surcharges within the same receipt
- The electronic journal (KLEN/) is full.
32H (50)

TAX RATES ENTERED DURING THE ACCOUNTED PERIOD

Data field:
Response:

[<Start>,<End>]
Data

Start
End
Data

The starting date for the period - DDMMYY/6 bytes/


The end date for the period - DDMMYY /6 bytes/
1 byte:
F if no tax rates for the period have been found or in case of error
PAA,BB,CC,DD,DDMMYY if rates have been found, where P means PASS after which the active rates
are listed out as well as the date of their entry. If there are unused groups (closed with Rates_fewer ) for them
instead of a rate in percent a DT is returned (Disabled tax).
When Start and End are entered the comma is mandatory. In case the data field is empty only information
on the last entered rates is returned.
The command prints a report on the changes made in the decimal points and tax rates during the selected
period.
33H(51)

SUBTOTAL

Data field:
Response:

<Print><Display>[,Perc|;Abs]
SubTotal,TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

13

Print

One byte, which if 1 the sum of the subtotal will be printed out.

Display
Perc

One byte which if 1 the sum of the subtotal will appear on the display.
A non-mandatory parameter which shows the value of the discount or surcharge in percent
over the sum accumulated so far.
A non-mandatory parameter which shows the value of the discount or surcharge as an
amount (up to 8 significant digits). It is not aloud a surcharge bigger than the sale.

Abs
SubTotal
TaxA
TaxB
TaxC
TaxD
TaxE
TaxF
TaxG
TaxH

The
The
The
The
The
The
The
The
The

sum
sum
sum
sum
sum
sum
sum
sum
sum

accumulated for the current fiscal receipt (10 bytes).


over tax group /10 bytes/
over tax group /10 bytes/
over tax group /10 bytes/
over tax group /10 bytes/
over tax group /10 bytes/
over tax group /10 bytes/
over tax group 10 bytes/
over tax group /10 bytes/

The sum of all sales registered in the fiscal receipt is calculated. If necessary the sum may be printed out
and/or brought out on the display. The calculated total sum and the accumulated separate sums for each tax
group are returned to the PC. If a discount or surcharge is entered it is printed out on a separate line and the
accumulated sums over the different tax groups are respectively corrected.
34H(52)

REGISTRATION AND DISPLAY

Data field:

[Line]]<Tab><TaxCd><[Sign]Price>[*Quan][,Perc|;Abs]

[Line]]<Tab><Dept><Tab><[Sign]Price>[*Quan][,Perc|;Abs] ]
Response: None
Line
A 20 byte string containing a text which describes the sale.

Tab
TaxCd
Dept
Sign
Price
Quan
Perc
Abs

One byte containing 09h


One byte containing the letter indicating the tax group (A, B, C, D, E, F, G, H). There
is a restriction which depends on Rates_fewer and it is set when the type of currency is
entered in command 83.
Department number. An integer from 1 to 99. The VAT group of the sale is the tax group of
the department.
One byte with a possible value -.
This is the price - up to 8 valid digits
This is a non-mandatory parameter setting the quantity of the items sold. By default its value
is 1000 and its length is 8 valid digits.
This is a non-mandatory parameter showing the value of the surcharge and discount
(depending on the sign) in percent over the current sale. Possible values are between 99.00% to 99.00%.
This is a non-mandatory parameter showing the value of the surcharge and discount
(depending on the sign) as an amount. It is not acceptable a discount with value higher than
the value of the sale.

It is allowed only one of the parameters Perc Abs.


The cash register will:
- Print out the text describing the sale together with the price and the code of the tax group.
- The price of the item sold is added to the accumulated sums in the registries of the operational
memory. In case of overflow the respective bits of the status bytes are set.
- If there is a surcharge or discount made on the sum it is printed out on a separate line and is
added to registries, specially reserved in the cash register. The daily accumulated sums are printed
out together with the daily financial report.
- If a department number is in the command line, then the price is added to the accumulated sum
of this department. Discounts and mark ups (if present) are added to this sum, too.
- The price of the item is shown on the upper line of the display and its description - on the lower.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

14

The command will not be executed successfully if:


35H(53)

No fiscal memory has been opened


The maximum possible number of sales have already been performed
The command 53 (34H) has been successfully executed
The sum under some of the tax groups has become negative
The sum of the surcharge or discount within the receipt remains negative.
The electronic journal (KLEN) is full.
CALCULATION OF A TOTAL

Data field:
Resonse:

[<Line1>][<Lf><Line2>]<Tab>[[<PaidMode>]<[Sign]Amount>]
<PaidCode><Amount>

Line1
Lf
Line2
Tab
PaidMode

A text of 25 bytes containing the first line


One byte containing 0Ah
A text of 25 bytes containing the second line
One byte containing 09h
A non-mandatory code indicating the terms of payment. It may have the following
values:
P Payment in cash (default)
N Payment with a credit card
C Payment with a debit card
D Payment with a check
'I' Payment with voucher
'J' Payment with coupon
Depending on the code the sums are accumulated in different registers and may be recovered in the daily
report.
Sign
One byte with a value + indicating the Amount (the sum which has to be tendered)
Amount
The sum tendered (up to 8 meaningful symbols)
PaidCode
One byte - resulting from the execution of the command
F Error
E The calculated sub-total sum is negative. Payment is withheld and Amount will
contain a negative sub-total.
D If the paid sum is less than the sum of the receipt. The residual sum due for
payment is returned to Amount
R When the paid sum is greater than the sum of the receipt. A message
(CHANGE) will be printed out and the change will be returned to Amount.
I An error has occurred because the sum under one of the tax groups is negative.
The current subtotal is returned to Amount.
Amount
Up to 9 digits with a sign. Depends on PaidCode.
This command starts the calculation of the sums from the fiscal receipt, the printing of the sum with a special
font and showing the result on the display. An additional text may also be printed.
When the command has been successfully executed a further command for opening a cash drawer is
activated. If there is no more data after the symbol <Tab> the cash register will automatically pay out the whole
available sum in cash.
The command will not be successful if:
No fiscal receipt has been opened,
The accumulated sum is negative,
If some of the accumulated sums under taxation (tax group) is negative.
After the successful completion of the command the cash register will not perform the commands 49 and 51
within the opened receipt although it can still perform command 53.

Note: The codes of error E and I will never appear in the a Bulgarian version of a cash register, because
commands 49 and 52 (registering a sale) do not accept negative sums.
36H(54)

PRINTING A FREE FISCAL TEXT

Data field:
Response:

Text

Text
None
Up to 42 bytes

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

15

The text is surrounded by two # symbols.


A fiscal receipt must be opened because in the otherwise the text will not be printed. If the text is longer than
42 symbols the redundant letters are cut off.
38H(56)

CLOSING A FISCAL RECEIPT

Data field:
Response:

No data
Allreceipt,FiscReceipt

Allreceipt
FiscReceipt

All issued receipts from the last daily closure up to the moment
All issued fiscal receipts from the last daily closure up to the moment
The accumulated sums from the fiscal receipt are added to the daily sums in the registries of the operational
memory.
The command will not be successful if:
No fiscal receipt has been opened,
Command 53 (35h) has failed,
The sum paid under command 53 is less than the total sum of the fiscal receipt.
3AH (58)

REGISTERING THE SALE OF AN ITEM

Data field:
Response:

[D]<[Sign]PLU[<Tab><Dept><Tab>] [*Quan>[#UN]][,Perc|;Abs]
None

A byte with a possible value D. If it exists the information will be displayed at the customers
display. If the items name is longer than 20 characters, the last ones will be cut.
Sign
One byte with a value of + or -
PLU
The individual number of the item - a whole number between 1 and 9999 (not more than 4
digits).
Dept
Department number. An integer from 1 to 99. The VAT group of the sale is the tax group of
the department.
Quan
A non-mandatory parameter setting the quantity of the items for sale with a default value of
1.000. Length cannot be longer than 8 meaningful digits (not more than 3 after the decimal
point). The resulting singular price (*Quan) is rounded up to the set number of digits after
the decimal point and also cannot be greater than 8 meaningful digits.
UN
Name of the measuring unit.
Perc
This is a non-mandatory parameter showing the value of the surcharge and discount
(depending on the sign) in percent over the current sale. Possible values are between 99.00% to 99.00%.
Abs
This is a non-mandatory parameter showing the value of the surcharge and discount
(depending on the sign) as an amount. It is not acceptable a discount with value higher than
the value of the sale.
It is possible only one of the arguments Perc or Abs.
The cash register performs the following operations:
The name, price and the tax group of the item is read from the items list, programmed in the cash
register.
If the sell is by department and command 43 - subcommand N is set, prints the name of the
departament.
- Prints out the name of the item, the selected quantity and the singular price. The second printed line
contains the final price together with the letter, designating the tax group from which the sale will be
performed. The registries for accumulated sums and item quantities are updated.
- The price of the item is added to the accumulated sums in the registries of the operational memory.
In case of overflows the respective bytes from the status field will be set.
- If there is a discount or surcharge it is printed out on a separate line and is added in specially selected
registries in the cash register. The values from the whole day will be printed together with the daily
financial report.
- If a department number is in the command line, then the price is added to the accumulated sum of
this department. Discounts and mark ups (if present) are added to this sum, too.
The command will not be successful if:
- No item has been programmed under the given number,
- No fiscal receipt has been opened,

DATECS
BT

3Ch (60)

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

16

The maximum number of sales for one receipt (374) has already been registered.
The command 35h has been successfully executed,
The sum under one or more of the tax groups has turned out negative,
The sum of the surcharges and discounts within the receipt has remained negative.
The electronic journal (KLEN) is full.
CANCELING OF A FISCAL RECEIPT

Data field:
Response:

None
None

This command is accessible only over opened fiscal receipt and only before the execution of 53 (Total).
Causes canceling of all accumulated sums in the receipt. With a double width is printed a message
== (=ANNULATED=) and the receipt ends with a message (FISCAL
RECEIPT).
3DH(61)

SETTING THE CLOCK - DATE AND HOUR

Data field:
Response:

<DD-MM-YY><space>HH:MM[:SS]>
None

You cannot set a date which is earlier than the date of the last entry into the fiscal memory or KLEN of the
device. The last acceptable year is 2099. After RESET of the memory this command must be executed otherwise the normal functioning of the device cannot be resumed. The cash registers real-time clock must
always be set correctly especially when more than 14 days have passed from the date of the last executed
command.

Warning! Important change in comparison with the cash registers with no KLEN!
It is not allowed to be set a date and time earlier than the last recorded document in KLEN (). The point of this is
to be correct the searching of documents in KLEN by date and time.
3EH (62)

READING CURRENT DATE AND HOUR

Data field:
Response:
3FH (63)

None
<DD-MM-YY><Space><HH:MM:SS>

DISPLAYING THE DATE AND HOUR

Data field:
Response:

None
None

Current date and time are displayed on lower line using the format: DD-MM-YY HH:MM:SS.
40H (64)

INFORMATION ON THE LAST FISCAL ENTRY

Data field:
Response:

None
ErrCode[,N,TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH,Date]

ErrCode:
P The command is succesfull
F The last record cannot be read

The number of the last fiscal records - 4 bytes.

TaxX

The amounts of each VAT group , , , (A,B,C...)- 12 signed bytes.

Date

Date of the fiscal records - 6 bytes /DDMMYY/.

The command requres the cash register to be fiscalised.


41H (65)

INFORMATION ON DAILY TAXATION

Data field:

[[Option]

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

Response:

TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH

Option:

Determines what information to be returned:

17

'0' - total turnover (default)


'1' - accumulated VAT ()
TaxX
44H (68)

The amounts of each VAT group , , , (A,B,C...)- 12 signed bytes.


NUMBER OF THE FREE FIELDS IN THE FISCAL MEMORY

Data field:
Response:

Logical

None
Logical,Physical
The number of logical locations for fiscal entries (4 bytes)

Physical

Not used. Repeats the previous entry.

The number of free fields in the fiscal memory, reserved for saving information from the daily report.
45H (69)

DAILY FINANCIAL REPORT

Data field:
Response:

Option

[<Option>[N]]
Closure,FM_Total,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH
A non-mandatory parameter controlling the type of generated report.

0 The printout ends with the inscriptions FISCAL RECEIPT or NON-FISCAL RECEIPT depending
on the status of the cash register (fiscalized or non-fiscalized).
2 A daily report without closure is generated i.e., no entry into the fiscal memory is made and no
closures are performed. The printout ends with the inscription OFFICIAL RECEIPT. The same
actions may be generated directly from the cash register if during power on the left button is
pressed down.
N
The presence of this symbol at the end of the data cancels the option to clear the data
accumulated on the operators during a report with clear.
Closure
Fiscal closure (Daily report) number 4 bytes.
FM_Total
The sum of all sales for the day - 12 bytes with a sign.
TotX
The nett sums (Total VAT) under all tax categories - A, B, C, D, E, F, G, and H - 12 bytes
with a sign.
46H (70)

INTERNAL DEBITING AND CREDITING (SERVE IN AND OUT)

Data field:
Response:

Amount

[<Amount>]
ExitCode,CashSum,ServIn,ServOut
The sum which will be registered (up to 9 bytes). Depending on the sign of the digit this sum
is interpreted either as credit or debit (serveIn or serveOut).

ExitCode

CashSum
ServIn
ServOut

One byte:
P The order has been completed. If the ordered sum is not 0 the ECR will print an
interior receipt for registering the operation.
F The order has been canceled. This happens if:
- The cash sum available is less than the ordered interior credit (serveIn),
- There is an opened fiscal and non-fiscal receipt.
Available cash. Apart from this command the sum grows after each payment in cash.
The sum from all commands Interior credit
The sum from all commands Interior debit

Changes the content of the cash availability register. Depending on the sign of the sum in question it is
accumulated in the register for interior debit-credit. The information is not saved in the fiscal memory of the
device and is accessible until the performance of the daily closure. It is printed out at the command 69 (45h)
and at the generation of the daily report without closure from the cash register itself. At the successful

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

18

completion of this command the drawer kick-out function is activated (if it is permitted wit subcommand 'X'
of command 43.

47H (71)

PRINTING DIAGNOSTIC INFORMATION

Data field:
Response:

No data
None

The command initiates the generation of an interior receipt containing diagnostic information as follows:
Prints the date and the version of the employed software,
Prints the control sum of the employed firmware,
Prints the serial ports baud rate,
Prints emergency time after power supply cut-off,
Prints the number, date and hour of the last reset of the RAM (if there is such),
Prints the current temperature of the two printer heads,
Prints the overall number of fields in the fiscal memory and the number of the free fields,
Prints the current date and hour.
The command will not be executed when there is an open receipt in progress or when the paper roll has
finished.

48H (72)

FISCALIZATION

Data field:
Response:

Serial

<Serial>
ErrCode
The serial number of the device - it must be the number entered with command 91 (5Bh).
Status 5.3 is used to verify whether the command has been successfully executed.
Error or P code when the action has been successful.

ErrCode

The command will not be executed (and an error code will be set) if:
1 The serial number is invalid,
2 The ECR has been fiscalized,
3 No serial number has been programmed,
4 The serial number is different from the one programmed,
5 There is an opened receipt in progress,
6 There are some already issued fiscal receipts or the 70(46h) command has been executed after the
last daily report with closure,
7 No tax rates have been entered into the memory of the device,
8 (EIK - Unified Identification Code) number consists only of three zeros,
9 The clock needs setting.
Fiscalization of the device must be performed and after the successful execution of the command the
returning of the cash register to a non-fiscalized mode becomes impossible. The tax number is entered in the
fiscal memory together with the current date and hour. All registries are cleared (to zero) after which the cash
register opens the first fiscal receipt, marks the moment of fiscalization on this receipt and closes it.
49H (73)

DETAILED FISCAL MEMORY REPORT BY CLOSURE NUMBER

Data field:
Response:

[<Start>,<End>]
None

Start
End

The number of the starting fiscal entry - 4 bytes


The number of the ending fiscal entry - 4 bytes
The command leads to the printing of a detailed report of the fiscal memory from one selected number to
another. If no parameters are entered the command will be executed for the whole period of exploitation.

4AH (74)

READING THE STATUS OPTIONS

Data field:
Response:

Option

[Option]
<S0><S1><S2><S3><S4><S5>|<NLines>
One byte with the following meanings:

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

19

W All ECR buffers must be printed out first.


X The status is returned immediately (default).
'L' Returns the lines for printing, which are left (excepting the status ones).
Status byte n.

Sn
4CH (76)

STATUS OF THE FISCAL TRANSACTION

Data field:
Repsonse:

Option

[Option]
Open,Items,Amount[,Tender]
=T If the parameter has been selected the command will return the information on the
current state of the sum due for payment by the client.
One byte which is 1 if a fiscal or a non-fiscal receipt has been opened (which it is can be
understood from the status bytes) and 0 if there is no opened receipt.
The number of sales registered on the on the current or last fiscal receipt - 4 bytes.
The sum from the last fiscal receipt - 9 bytes with a sign.
The sum tendered for the current or the last receipt - 9 bytes with a sign (Only if Option is
present).

Open
Items
Amount
Tender

The command supports the PC applications ability to monitor the status and if needed to restore and
complete am already started fiscal operation which has been interrupted on emergency or out of time - for
example as a result of a power failure.

4FH (79)

SUMS ACCUMULATED IN THE FISCAL MEMORY FOR A SELECTED PERIOD

Data field:
Response:

Start

<Start>,<End>
None
Starting date - 6 bytes (DDMMYY)

End

End date - 6 bytes (DDMMYY)

The command generates the printing out of a short periodic financial report.
If the second parameter is missing, the command will generate monthly or annual. The syntax in this case is:

Start
Start
50H (80)

Month - 4 bytes (MMYY) for monthly report.


Year - 2 bytes (YY) for annual report.
SOUND SIGNAL

Data field:
Response:

[<SoundData>]
None

This command creates a sequence of sound tones with a set frequency and continuity.
If there is no input data, a sound signal with frequency 2 kHz and continuity 300 ms is played.
If the input data is with format: <Hz>,<mSec>
where Hz and mSec are integers, than a sound signal is created with a frequency between 100Hz and 5000 kHz
and continuity between 50ms and 2000ms.
53H (83)

SETTING THE MULTIPLIER, DECIMALS, CURRENCY NAME AND TAXES

Data fields: [Multiplier,Decimals,Currency,EnabledT,TaxA,...]


Response: Multiplier,Decimals,Currency_name,EnabledT,TaxA,TaxB,TaxC,TaxD,

Multiplier
Decimals
Currency
EnabledT
TaxX

A multiplier between 0 and 3 which shows the degree of 10 before multiplying it times the
input or output value (at present deactivated and out of use).
One byte with a value between 0 and 2 and shows the exact place of the decimal point.
The name of the currency used for the payments - not more than 5 bytes.
8 bytes with value '0' or '1', determines whether the relevant VAT group is forbidden '0' or
not '1'
The value of each tax rate.

If no parameters are entered, ECR will return the existing values.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

20

If one of the parameters has to be set and the others must too.
Setting of new tax rates is permitted only before printing of the first fiscal receipt for the day.
Before fiscalization the data will be stored only in the RAM memory, so in this case the command can be
executed unlimited times.

55H (85)

SETTING THE ADDITIONAL METHODS OF PAYMENT

Option[,Name]
Result|Name

Data field:
Response:

Option:
'N'
'C'
'D'
'I'
'J'

Name

Additional
Additional
Additional
Additional
Additional

payment
payment
payment
payment
payment

1
2
3
4
5

Name of the corresponding payment type (up to 24 symbols). If it is missed, the present
name will be returned.

Result One byte:


P
F

No error.
The name is longer than 24 bytes.

This command sets a comment, which will be printed before the data of the additional payment types
(command 53). It is permitted before the first fiscal receipt for the day to be printed.
Only the first 10 entered symbols for name will be accepted.
56H (86)

READING THE DATE OF THE LAST FISCAL MEMORY RECORD

[<WithTime>]
DT

Data field:
Response:

WithTime

Optional parameter - symbol 'T'. If it presents, is returned the date and time of the last
fiscal memory record.
Date (or date and time) of the last fiscal memory record:
DD-MM-YYYY
or
DD-MM-YYYY hh:mm:ss

DT

57H (87)

SETTING DEPARTMENT NAME AND VAT GROUP

Data fields:
Response:

Dept
TaxGr
Line1
LF
Line2

<Dept>,<TaxGr>,<Line1>[<LF><Line2>]
None

Department number. An integer from 1 to 99.


VAT group, associated with the department.
Name of the department. Up to 22 symbols.
Separator. One symbol ASCII code 10.
Name of the department optional second line. Up to 22 symbols.

The command is not permitted if there are any sales in the department after the last fiscal closure. After
RAM reset department names are empty. It is not possible to make sales in a department, which is not
programmed.
See command 117.
58H (88)
GET DEPARTMENT INFORMATION
Data fields:
Response:

Dept
ExitCode

<Dept>
ExitCode[TaxGr,RecSales,RecSum,TotSales,TotSum,Line1<LF>Line2]

Department number. An integer from 1 to 99. In case of value '0' will be returned data
about the sale made with no department (the VAT group in this case is missing).
One byte. Possible values:

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

21

P Department is programmed. Data about it follow.


F Department is not programmed. No additional data follow.
TaxGr
Department VAT group.
RecSales Sales performed using this department.
RecSum Accumulated sum for last or current fiscal receipt. Floating number with two decimals.
TotSales Total number of sales from the department for the day
TotSum Accumulated sum for the day. Floating number with two decimals.
Line1
Name of the department.
LF
Separator. One symbol ASCII code 10.
Line2
Name of the department optional second line.

59H (89)

PROGRAMMING THE PRODUCTION TEST AREA

Data field:
Response:
Test

<Test>
Result,Free
One byte. If T an entry into the fiscal memory is done - otherwise there will be no save
performed and only the parameters will be returned.
One byte:
P (50h) No error
F (46h) Error
The number of the free blocks left for saving such entries - 4 bytes.

Result
Free

The command is executed for testing the fiscal memory.


Test block for entries into the fiscal memory: 55h,AAh,33h,CCh,5Ah, A5h,3Ch,C3h
5AH (90)

RETURN DIAGONSTIC INFORMATION

Data field:
Response:

<Calc>
<Name>,<FwRev><Country><Sp><FwDate><Sp><FwTime>,<Chk>,<Sw>,<

Ser>,<FM>

Calc

If 1 the control sum of the fiscal memory is calculated - 1 byte.

Name
FwRev
Country
Sp
FwDate
Sp
FwTime
Chk

Name of the fiscal device


The version of the software program - 4 bytes.
Country code - pair of letters (2 bytes; in this case BG).
Space - 1 byte.
The date of the software program DDMmmYY - 7 bytes.
Space - 1 byte.
Hour of the software program HHMM - 4 bytes.
The EPROM control sum - a 4 bytes string in the hexadecimal code. For example if the control
sum is 214Ah it will be presented as 32h, 31h, 34h, 42h
It is not supported by ESR.
The serial number - 8 bytes.
Number of the fiscal module - 8 bytes.

Sw
Ser
FM
5BH (91)

PROGRAMMING THE SERIAL NUMBER, THE NUMBER OF THE COUNTRY AND THE
FISCAL MODULE NUMBER

Data field:
Response:

Serial
FMnumber
Result
CountryStr

<Serial>,<FMnumber>
Result,CountryStr
The serial number. 8 symbols 2 letters and 6 digits.
The fiscal module number. 8 digits.
One byte. P - OK; F - errors.
The name of the country. For example: BULGARIA

The command IS NOT INCLUDED in the software program package and can be performed only by the
manufacturer. The ECR is handed over to the owner with the name of the country, serial number and fiscal
memory number set.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

22

5Ch (92) SEPARATOR LINE PRINTING

Type

Data field:
Response:

Type

None
A byte with possible values:

'1'
'2'
'3'

Filling with sequence of symbols '-'.


Filling with sequence of symbols '-' and ' '.
Filling with sequence of symbols '='.

ECR prints separator line through the whole width of the paper.
A receipt must be opened.
5Eh (94)

DETAILED FISCAL MEMORY REPORT BY CLOSURE DATE

Data field:
Response:

Start
End

[<Start>[,<End>]
None
The number of the starting fiscal entry - 6 bytes (DDMMYY)
The number of the ending fiscal entry - 6 bytes (DDMMYY)

This command prints out a detailed financial report on the period between two selected dates.
If the second parameter is missing, this command generates monthly or annual report. The syntax in this case
is:

Start

Month 4 bytes (MMYY) for monthly report.


Year 2 bytes (YY) for annual report.

Start

5FH (95)

SUMS ACCUMULATED IN THE FISCAL MEMORY FOR A GIVEN PERIOD OF TIME

Data field:
Response:

<Start>,<End>
None

Start
End

Starting number of the fiscal entry


End number of fiscal entry
The command starts the calculation and the printing of a short periodic financial report.
61H (97)

READING THE SET TAX RATES

Data field:
Response:

TaxA
TaxB
TaxC
TaxD
TaxE
TaxF
TaxG
TaxH

62H (98)

Tax
Tax
Tax
Tax
Tax
Tax
Tax
Tax

rate
rate
rate
rate
rate
rate
rate
rate

SETTING OF /EIK (EIK - Unified Identification Code)

Data field:
Response:

Text
Name
Result

63H (99)

None
TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH

<Text>[,<Name>]
Result
14 bytes whcih contain EIK as a text.
This is the comment in front of EIK. By default is .
P No errors.
F Error

READING THE TAX REGISTRATION NUMBER

Data field:

None

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

Response:

Text
Name
64H (100)

23

<Text>[,<Name>]
The tax registration number as a text.
This is the comment in front of EIK.

SHOWING TEXT ON DISPLAY

Data field:
Response:

Text
None

Text

A text of no more than 40 symbols sent for displaying. If symbols with ASCII codes smaller
than 20h (control symbols) they are increased with 40h and are preceded by 10h.
Example: To send 1Bh, 4Bh, 00h the data field will have to contain 10h, 5Bh, 10h, 40h.
65H (101)

SETTING THE OPERATORS PASSWORD

Data field:
Response:

OpCode
OldPwd
NewPwd

<OpCode>,<OldPwd>,<NewPwd>
None
Operators code (1 to 30)
Old password (1 to 8 digits)
New password (1 to 8 digits)

Sets one of the 30 operators passwords, which will be demanded upon opening a fiscal receipt.
After initialization or reset of the operational memory all passwords are identical to the number of the
operator.
66H (102)

ENTERING OPERATORS NAME

Data field:
Response:

OpCode
Pwd
OpName

<OpCode>,<Pwd>,<OpName>
None
Operators code (1 to 30)
Password (1 to 8 digits)
Name of the operator (up to 24 symbols)

Enters one of the 30 operator names. The number and the name of the operator are printed at the beginning
of each fiscal (clients) receipt.
After initialization or reset of the operational memory all operators names are ###. Where ###
is the number of the operator.
67H (103)

INFORMATION ON THE CURRENT RECEIPT

Data field:
Response:

CanVd
TaxA
TaxB
TaxC
TaxD
TaxE
TaxF
TaxG
TaxH
Inv
InvNum

None
CanVd,TaxA,TaxB,TaxC,TaxD, TaxE,TaxF,TaxG,TaxH,Inv,InvNum
Possible/impossible return (sale registration with a negative sign) [0 / 1]
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
The sum accumulated under tax
Is it opened an invoice?
Number of the next invoice /10 digits/. It is not supported by the ECRs

The command offers information on sums accumulated so far under the different tax groups and whether it is
possible to return the registered items sold.
68H (105)

OPERATORS REPORT

Data field:
Response:

None
None

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

24

Information on the sales, performed by the operators, is printed out where for each separate operator the
following data is printed out: name, individual number, number of fiscal receipts, discharges made, surcharge,
sum adjustments and accumulated total sums.

6AH (106)

DRAWER KICK OUT

Data field:
Response:

mSec

[<mSec>]
None
The length of the impulse in milliseconds (5-100)

Sends an impulse for opening the cash drawer. This parameter sets a new value for the length of the impulse,
which is stored in the memory of the cash register. If this parameter is skipped, the last entered value
remains valid. After memory RESET a value of 15 ms is set.

6BH (107)

DEFINING AND READING ITEMS

Data field:
Response:

<Option>[Parameters]
ErrorCode[,Data]

Option

One byte, defining the type of the selected operation. Depending on this the command might
- or might not - demand the entering of additional parameters. The possible values are: I,
P, D, A, C, R, F, L, N, X, f, l, n, x

ErrorCode

One byte, showing the result from the operation and having the following meaning:
- P A successful command
- F Unsuccessful command
Data on the command - described in detail further on.

Parameters

SUBCOMMANDS (depending on Option):


I

Article information
Syntax:
<I>
Response:
Total,Prog,Len
Total Total count of the programmable articles.
Progr Total count of the programmed articles.
Len
Maximum length name of article.

Article programming.
Syntax:

<P><TaxGr><PLU>,<Group>,<SPrice>,[<Replace>]<Quantity>,<Name>
TaxGr

VAT group (,,,,,,,)

PLU

Articles number (1 to 999999999)

Group

Stock group (1to 99)

SPrice

Single price. Up to 8 significant digits.

Replace

Optional parameter a byte with value A. Changes the meaning of the


next parameter (Quantity).
A number with up to 3 decimal symbols the available quantity of the item.
If the parameter replace exists, then the available quantity is replaced with
Quantity. Otherwise it is added to the old value (of course only if the item
is programmed already. Each command for selling of the article will reduce
its quantity.
The cash registers do not support quantity and return 0.00
Articles name. Up to 22 bytes.

Quantity

Name

The command will be rejected if there is already a such article and there are sells of it.
- A

Change of the available quantity for article.


Syntax:
<A><PLU>,<Quantity>
PLU
Articles number (1 to 999999999).
Quantity Quantity correction floating point number with up to 3 decimal numbers.
Positive numbers increase the quantity and the negative decrease it.
Command is rejected if the article is not programmed.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

25

The cash registers do not support quantity and return 0.00


D

Item deleting
Syntax: <D><A | PLU | PLU1,PLU2>
Syntax:

<D><A | PLU | PLU1, PLU2>

A
Delete all item with non-zero accumulated sums.
PLU Deletes article with selected number if there are no accumulated sums.
PLU1,PLU2
Deletes the articles within a set interval which do not have

accumulated sums.
R

Reading item data.


Syntax:
<R><PLU>
Response:

<P><PLU>,<TaxGr>,<Grp>,<SPrice>,<Total>,<Sold>,<Avail>,
<Name>

<PLU>

Articles number. Between 1 and 999999999.

<TaxGr>

VAT group. 1byte

<Grp>

Stock group. Between 1 and 99.

<SPrice>

Single price. Floating point number with decimal symbols current for the
cash register.

<Total>

Accumulated amount of the article.

<Sold>

Sold out quantity. Floating point number wit 3 decimal symbols.

<Avail>

Current quantity. Floating point digit with 3 decimal symbols.

<Name>

Items name. Up to 22 bytes.

F Returns data about the first found programmed item.


Syntax: <F>[<PLU>]
Returned data is the same as in subcommand R. If a parameter PLU is set, searching
starts from 1.
L

Returns data about the last found programmed item.


Syntax: <L>[<PLU>]
The returned data is the same as in subcommand R. If a parameter PLU is set, searching
starts from 999999999.

Returns data for the next found programmed item


Syntax: <N>
Response is the same as for subcommand R.

The last three subcommands are for extracting of all programmed items. A subcommand F or L is
being sent and after that subcommand N until an answer F is received (the last article is read). The articles
are returned sorted by PLU number ascending or descending depending of the first sent command.
f

Returns data about the first found item with sales on it.
Syntax: <f>[<PLU>]
Returned data is the same as in subcommand R. If a parameter PLU is set, searching
starts from 1.

Returns data about the last found item with sales on it.
Syntax: <l>[<PLU>]
The returned data is the same as in subcommand R. If a parameter PLU is set, searching
starts from 999999999.

Returns data for the next found item with sales on it.
Syntax: <n>
Response is the same as for subcommand R.

Find the first not programmed article


Syntax:
<X>[<PLU>]
Response:
PLU

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

26

If the parameter PLU is set, the first not programmed article with a number higher or equal to it is
returned. If missing PLU=1 by default.
x

Find the last not programmed article


Syntax:
<x>[<PLU>]
Response:
PLU
If the parameter PLU is set, the first not programmed article with a number lower or equal to it is
returned. If missing PLU=999999999 by default.
6CH (108) EXTENDED DAILY FISCAL REPORT
Data fields:

[<Option>[N]]

Response:

Closure,FM_Total,TotalA,TotalB,TotalC,TotalD, TotalE,TotalF,TotalG,TotalH

The command is identical to command 69, but in the beginning of the daily report is printed and a list of
the items with PLU equal or lower than 10 with sell for the day.
6DH (109)

PRINTING A DUPLICATE RECEIPT

Data field:
Response:

<Count>
None

Count

Number of duplicate receipts (only a value of 1 is accepted).


The command initiates the printing of a copy of the last closed receipt containing registered sales. The copy is
marked as an (OFFICIAL RECEIPT). Immediately after the tax registration number the
inscription (DUPLICATE) is printed out in bold letters.
The cash register will refuse to print a second copy of a receipt. The cash register will not print a copy of a
receipt with more than 1000 lines, too.

6EH (110)

ADDITIONAL DAILY INFORMATION

Data field:
Response:

None
Cash,Credit,Debit,Cheque,Pay1,Pay2,Pay3,Pay4,Closure,Receipt

Cash
Credit
Debit
Cheque
PayX
Closure
Receipt

Paid in cash
Payment credited
Paid with a debit card
Paid with a cheque
Paid by one of the additional payment types.
Current (last) fiscal entry
Number of the next fiscal receipt
Returns information on the distribution of the daily sum according to the terms of payment used.
6FH (111)

ITEMS REPORT

Data field:
Reponse:

Option

Start
End
Group

<Option>>[<Start>,<End>[,<Group>]]
ErrorCode
Defines the type of the information under print. Possible values:
- S Only sold items are printed out. The data on these items includes: the individual
number, name, singular price as well as the sold quantities and total turnover during
the day.
- P All programmed items are printed out but only their number, name and singular
price.
Number of the first article which to be included in the rport. Default: 1.
Last number of article which to be included in the report. Default: 999999999.
A number from 1 to 99. If this parameter is set, then only the articles from this group are
included in the report, otherwise all groups are printed.

Items are arranged according to their individual numbers. In a daily report with a closure the accumulated
sums are cleared.

DATECS
BT
70H (112)

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

27

READING INFORMATION ON THE OPERATOR

Data field:
Response:

Operator

Operator
Receipts,Total,Discount,Surcharge,Void,Name,[,Password]
Number of the operator (1 to 30)

Receipts
Total
Discount
Surcharge
Void
Name
Password

Number of fiscal receipts, issued by the operator


Number of registered sales and total accumulated sum, divided by a ;
Number of discounts and total number of discounts
Number of surcharges and total number of surcharges made
Number of voids (and corrections of sums) and their total sum
Name of the operator
Operators password. Can be read only if there is a service jumper put.

The command leads to the reading of the available information, which will be printed out in the operators
report. The sums are returned as floating-point numbers incorporating the currently set number of decimal
places.

71H (113)

READING THE NUMBER OF THE LAST PRINTED DOCUMENT

Data field:
Response:

DocNum

72H (114)

INFORMATION ON A FISCAL ENTRY OR A FISCAL PERIOD

Data field:
Response:

Closure1

None
DocNum
The number of the last issued document (7 digits)

<Closure1>[,<Type>[,Closure2]]
Depends of the value of Type
Number of a report in the fiscal memory.

Type

The type of the information demanded. One byte with value:


- 0 Information about the active tax rates for the Z-report

ErrorCode[,DecRec,Dec,Enabled,PercA,PercB,PercC,PercD,DT]
- 1 Information about the turnover for the selected record or period.

ErrorCode[,Closure,Receipts,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH]
- 2 Information about net amounts for the selected record or period.

ErrorCode[,Closure,Receipts,NetA,NetB,NetC,NetD,NetE,NetG,NetG,NetH]
- 3 Information about the total VAT () for the selected record or period.

ErrorCode[,Closure,Receipts,TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH]
- 4 Additional information about the selected record.

ErrorCode[,Closure,DecRec,ResetRec,KLEN,DT]

- 5 Information from the selected record from the fiscal memory with tax rate setting.

ErrorCode[,Dec,Enabled,PercA,PercB,PercC,PercD,PercE,PercF,PercG,PercH,DT]
- 6 Information from the selected record from the FM with RAM reset.

Closure2

Number of the fiscal entry for references 1 2 and 3. For references 0, 4 5 and 6 this
field is empty. If the parameter exist is returned data for the period set by Closure1 and
Closure2 for references 1, 2 3.

Closure
DecRec
Dec
Enabled
Receipts
PercX
TotX
NetX
TaxX
ResetRec
KLEN

Number of fiscal record.


Last (active) record with tax rates.
Number of decimal symbols for the selected Z-report record.
Permitted tax rates 4bytes with value 0 or 1, whre 1 means permitted.
Total count of fiscal receipts.
Tax rate for the relevant tax group in percantage.
Turnover for the relevant tax group.
Net total for the relevant tax group.
Total amount of (VAT) for the relevant tax group.
Last RAM reset before this fiscal block.
Number of (KLEN electronic journal) for this fiscal receipt.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

DT

28

Date and time of the data with format: DD-MM-YY hh:mm:ss.

The command returns information on the different tax groups for each separate entry and or a selected
period of time. Periodic references for longer time periods may take a few seconds to process.

73H (115)

PROGRAMMING A GRAPHIC LOGO

Data field:

<RowNum>,<Data>
or

Response:

RowNum
Data

R<RowNum>,<Data>
None
If symbol R presents in the beginning of the data, the command returns the contents of the
relevant graphic line in hex format.
Shows the line which is being programmed - a number between 0 and 95
Graphic data. Two symbols for each byte of information are entered in the xehadecimal code
(Two symbols for every byte). The length of the data is up to 54 bytes and if they are less an
automatic addition of 00 follows.

This command offers the option to define a graphic logo with dimensions 42 x 12 mm (336 x 96 dots)
designed by the user himself. The printing of this logo is activated with command 43. It is printed out
immediately before the HEADER - at the beginning of each fiscal or non-fiscal receipt. In order to define the
whole logo, the command must be executed 96 times - once for each line. After RESET of the memory, the logo
is loaded from the flash memory. The logo can be stored in the flash memory by virtue of command 41.
Warning: the count of the lines must be divisible of 8.
74H (116) READING A FISCAL MEMORY BLOCK
Data field:
Response:

<Address>,<Bytes>
Data

Address

Start address (from the beginning of the fiscal memory) a hexadecimal number
from 00000h to 1FFFFh (for 1 Mbit fiscal memory).
Number of bytes to be returned (a decimal integer from 1 to 64).
The contents of the requested fiscal memory block in a hexadecimal view (2
symbols for each byte).

Bytes
Data

This command returns the contents of a part from the fiscal memory. For reading of the whole memory
the command has to be executed several times with a different start address.
75H (117) FISCAL CLOSURE (WITH DEPARTMENTS REPORT)
Data fields:
Response:

[<Option>[N]]
Closure,FM_Total,TotalA,TotalB,TotalC,TotalD, TotalE,TotalF,TotalG,TotalH

The command is identical to command 69 (45h). The only difference is, that in the beginning the
departments with non zero accumulated sums are printed. Command 69 exists and works as before. Commands
69, 108, 117 and 118 with option 0 (Z-report) clear the accumulated department sums.
76H (118) FISCAL CLOSURE (DEPARTMENTS AND ARTICLES REPORT)
Data fields:
[<Option>[N]]
Response:
Closure,FM_Total,TotalA,TotalB,TotalC,TotalD,TotalE,TotalF,TotalG,TotalH
The command is identical to command 69 (45h). The only difference is, that in the beginning the departments
and articles with non zero accumulated sums are printed. Command 69 exists and works as before. Both
command 117 and command 69 with option 0 (Z-report) clear the accumulated department sums.
77h (119) WORKING WITH /KLEN (KLEN ELECTRONIC JOURNAL)
Data field:

<Type>[,<InpData>]

Response:

Depends on input data

Type

'R'

Command class. A byte with value:


Data reading from KLEN.

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

29

Q<Addr>,<Bytes> Direct reading of raw data from KLEN. This command returns 2*Bytes
symbols, presenting Bytes from KLEN (), starting from address Addr.
Addr is set hexadecimal and Bytes decimal. Data is returned in a
hexadecimal format .

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

APPENDIX 1

ECR-2000 CHARACTER SET


_0

_1

_2

0_

_3

_4

_5

_6

_7

_8

_9

_A
B

_C
D

_E

_F

1_

2_

3_

4_

5_

6_

&

7_

8_

9_

A_

C_

<

E_

>

F_

30

DATECS
BT

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25

APPENDIX 2

LIST OF FISCAL COMMANDS - IN ASCENDING ORDER


HEX
21h
23h
26h
27h
2Ah
2Bh
2Ch
2Dh
2Fh
30h
31h
32h
33h
34h
35h
36h
38h
3Ah
3Ch
3Dh
3Eh
3Fh
40h
41h
42h
44h
45h
46h
47h
48h
49h
4Ah
4Ch
4Fh
50h
53h
54h
55h
56h
57h
58h
59h
5Ah
5Bh

DEC
(33)
(35)
(38)
(39)
(42)
(43)
(44)
(45)
(47)
(48)
(49)
(50)
(51)
(52)
(53)
(54)
(56)
(58)
(60)
(61)
(62)
(63)
(64)
(65)
(66)
(68)
(69)
(70)
(71)
(72)
(73)
(74)
(76)
(79)
(80)
(83)
(84)
(85)
(86)
(87)
(88)
(89)
(90)
(91)

5C
5Eh
5Fh
61h
62h
63h
64h
65h
66h
67h
69h
6Ah

(92)
(94)
(95)
(97)
(98)
(99)
(100)
(101)
(102)
(103)
(105)
(106)

Function
Clear the display
Text on lower line of display
Opening a non-fiscal receipt
Closing a non-fiscal receipt
Printing non-fiscal free text
Setting HEADER and FOOTER and printing options
Advancing paper
Cutting off printed documents
Displaying a text on the upper line of the display
Open fiscal receipt (invoice)
Registration of sales
Tax rates set during the accounted period
Subtotal
Registration and display
Calculation of a TOTAL
Print a free fiscal text
Closing a fiscal receipt
Registering the sale of an item
Canceling of a fiscal receipt
Setting the clock date and hour
Reading current date and hour
Show date and hour on display
Information on the last fiscal entry
Information on daily taxation
Sets the allowed number interval for invoices
Number of the free fields in fiscal memory
Daily financial report with/without closure
Internal debiting/crediting
Print diagnostic information
Fiscalization
Detailed fiscal memory report by closure number
Reading the status options
Status of the fiscal transaction
Sums accumulated in the fiscal memory for a selected period
Sound signal
Setting the Multiplier, Decimals, Currency Name and Taxes
Barcode printing
Setting the additional methods of payment
Reading the data of the last fiscal memory record
Setting department name and VAT group
Get department information
Program the production test area
Return diagnostic information
Program the serial number, country number and the fiscal memory
number
Separator line printing
Detailed of fiscal memory (selected by date of entry)
Sums accumulated in the fiscal memory for a given period of time
Reading the set tax rates
Setting of (EIK Unified Identification Code)
Reading the tax registration number
Showing text on display
Setting the operators password
Entering operators name
Information on the current receipt
Operators report
Drawer kick-out

31

DATECS
BT
6Bh
6Ch
6Dh
6Eh
6Fh
70h
71h
72h
73h
75h
76h
77h

Protocol description of ECRs DP500PLUS KL, MP-55 KL DP-05 BT, DP-25


(107)
(108)
(109)
(110)
(111)
(112)
(113)
(114)
(115)
(117)
(118)
(119)

Define and reading items


Extended daily fiscal report
Printing a duplicate receipt
Additional daily information
Items report
Reading information on operator
Read the number of the last printed document
Information on a fiscal entry or a fiscal period
Program graphic logo
FISCAL CLOSURE (DEPARTMENTS REPORT)
FISCAL CLOSURE (DEPARTMENTS AND ARTICLES REPORT
Working with /KLEN (KLEN Electronic journal)
END OF THE DOCUMENT

32

You might also like