CommunicationProtocol FiscalDevices GroupB BGa

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 34

Machine Translated by Google

DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

DESCRIPTION OF THE PROGRAM INTERFACE FOR CASH DESK


DP-05, DP-25, DP-35, WP-50, DP-150

INTRODUCTION

The fiscal device (FI) operates under the control of an application program, communicating with it via an asynchronous serial
connection channel RS232. It is designed to execute a predefined set of commands, logically arranged according to the type of
operations to be performed. The application program does not have direct access to the resources of the FI, but can retrieve data related
to the status of the FI and fiscal memory (FI).

FU performs the following types of operations:

Memorization of the individual number of the FI and the


number of the FI. Memorization of fiscal parameters, such as UIC, taxpayer's tax number, date of commissioning, etc. Remembering
information about the owner, such as address, name, etc. Memorize sales values and generate customer vouchers. Memorizing the
daily turnover in the FI and generating a daily financial report. Memorization of the text of the fiscal vouchers and daily reports in
KLEN and references from KLEN upon request. Generating reports on sales and the content of the FP. Print reports generated by
the application. Output data to the application program.

TAX GROUPS AND CALCULATION OF VAT

Each sale is assigned to a specific tax group (VAT), which determines the tax rate applied to the base price to form the sale price.
FU can work with a maximum of 8 tax groups, usually marked with the first letters of the alphabet - 'A', 'B', 'C', 'D', 'D', 'E', 'F' and 'H '.

For each of the tax groups a tax rate (in percentages) is set, which must be a number not greater than 99.00, with no more than two
decimal places. Some of the tax groups can be banned by setting Enabled_taxes in command 83 (53H).

The sales commands take as a parameter the capital letters 'A', 'B', 'C', 'D', 'E', 'E', 'G' and 'H' (in DOS or 1251 code table). The same
applies to all commands waiting for a tax group as an input parameter (for example, programming an item in command 107) ./ Everywhere
when printing, tax groups are in Cyrillic!

OPERATING MODES OF FU

The FU can operate in two modes.


• Non-fiscal regime. The device is not fiscalized. All the data necessary for its normal operation are
entered and recorded in the FI with the exception of the UIC of the owner and the tax rates. Client vouchers can be opened and
issued, but they are always written on them as non-fiscal. Reset daily financial statements can be performed, but they are not
recorded in the FI.
• Fiscal regime. The device is fiscalized. The UIC of the owner is entered and recorded in the FI. Apply
all fiscal rules.
CONDITIONS OF FU

FU can be in several states. It is not always possible to move from one state to another. The management of the FI, as well as the
transitions between states, when possible, is carried out by the application program in Host (PC), which must be strictly consistent with
the protocol used. In case of incorrect application of the protocol, it is possible for the FI to fall into an unwanted state or to miss its
passage through a given state, which respectively leads to the FU falling into the ERROR state.

A) CONDITION WHEN PROVIDING TO A CLIENT

In this state, "header" and "footer" must be set. In the "header" is usually recorded information about the owner (company name,
address, etc.), and in the "footer" some advertising text. Command 43 (2BH) must be executed as many times as rows are established.

B) NON-FISCAL REGIME

The FU is in this state until it is fiscalized. It is possible to issue vouchers, but it should be borne in mind that even customer
vouchers in this mode are marked as non-fiscal. It is also possible to perform a daily financial report with zeroing (Z-report), but no entry
is made in the FI. UIC has been set, but it is not recorded in the FP and is subject to change. FP reports are not running. Memory reset,
if any, does not cause FP recording. The clock can be adjusted arbitrarily. In non-fiscal mode, FU CANNOT BE USED in retail outlets - it
is intended only for training.

D) FISCALIZED AND REGISTERED CASH REGISTER

In this state, client financial vouchers marked as fiscal can be issued. When performing a daily financial report with zero (Z-report)
an entry is made in the FI. Verification of the date is allowed only forward of the last entry in the FP. The UIC is registered in the FP and
can no longer be changed. It is NOT POSSIBLE for the FI to leave the fiscal regime without changing the FI.

1
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

Prior to fiscalization, the UIC of the device holder, if not already set (command 98 (62H)), must be established, and then command 72 (48H) must be executed.
At the same time, FU is entering fiscal mode, but it is not ready for work yet and will reject the attempt to print fiscal vouchers. For normal operation, the FI must be
registered with the NRA with the program provided for this purpose.

F) IRREVERSIBLE ERROR IN FU

FU falls into this state in case a serious technical or logical error is found in operation, as well as in case of failure of the FP module, KLEN or the tax terminal.
In this mode, an indication error is displayed and the commands for opening fiscal vouchers or those related to an entry in the FI are not executed. Only diagnostic
can be performed
commands and periodic reports.
It is necessary to analyze the damage from the person performing service and repair.

The events leading to this condition are: Impossible to


make a correct entry in the FP. Invalid UIC checksum,
individual FI number, FI number or one of the tax records
rates.

Failure to recognize the shape of the FP module.


If during the inspection of the FI after the inclusion of the FI an invalid checksum of a fiscal record from the daily financial statement is found.
Lack of communication with the tax terminal. Missing communication with KLEN or locked with invalid KLEN password. Filled MAPLE.

2
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

STATUS BITS OF FU

The current state of the device is encoded in a field with a length of 6 bytes, which is transmitted in the frame of each message from the FU. The following
is a description of each byte in this field:

Byte 0: General purpose Reserved -


0.7 always 1. Reserved - always
0.6 0. General error - this is the
0.5 OR of all errors marked with '#'. Reserved - always 0. No client display
0.4 connected. The clock is not set. The command code received is invalid.
0.3 The obtained data have a syntactic error.
0.2
0.1 #
0.0 #

Byte 1: General purpose Reserved -


1.7 always 1. The built-in tax
1.6 terminal is not responsible. There are unsent
1.5 documents for more than the set warning time Reserved - always 0. Reserved - always 0. Reserved
1.4 - always 0. Execution of the command is not allowed in the current fiscal mode. During the
1.3 execution of the command, some fields of the sums overflowed. Status 1.1 will also be set and
1.2 the command will not change the data in the FI.
1.1 #
1.0

Byte 2: General purpose Reserved -


2.7 always 1. Not used. A
2.6 business voucher has been
2.5 opened. Middle end of MAPLE
2.4 (less than 10 MB of MAPLE free). A fiscal receipt has been opened. End of
2.3 MAPLE (less than 1 MB of MAPLE free). Reserved - always 0. She's out of
2.2 paper. If this flag is raised during a print command, the command is rejected
2.1 and has not changed the status of the FU.
2.0 #

Byte 3: For the status of the configuration keys Reserved - always


3.7 1. Reserved - always 0. Reserved - always 0. Reserved -
3.6 always 0. Reserved - always 0. Reserved - always 0.
3.5 Reserved - always 0. Reserved - always is 0.
3.4
3.3
3.2
3.1
3.0

Byte 4: For FP
4.7 Reserved - always 1. Not used.
4.6
‘*’
4.5 OR of all errors marked with FP is from bytes 4 and 5.
4.4 * complete. There is room for less than 50
4.3 FP entries. Individual FU number and FP number are
4.2 set. The UIC has been set. Error writing to fiscal memory.
4.1
4.0 *

Byte 5: For FP
5.7 Reserved - always 1. Reserved
5.6 - always 0. Reserved - always
5.5 0. Tax rates are set at least
5.4 once. FU is in fiscal mode. Reserved - always 0. FP
5.3 is formatted. Reserved - always 0.
5.2
5.1
5.0

3
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

INTERRUPTION OF POWER SUPPLY

At any time, the FU state is reflected in its status bytes. When the FU turns on after it has stopped
the power supply, the application program, via commands 76 (4AH) and 103 (67H) must be informed of its status.
The application program must decide on further behavior depending on the state of the FI. If the power supply has been lost during
printing, a line “*** VOLTAGE DECREASE ***” will be printed after switching on the power supply
and will finish the seal.
ISSUANCE OF FISCAL AND OFFICIAL VOUCHERS

A) SERVICE VOUCHERS.
The voucher is opened first, then text is printed and finally closed. The
commands 38 (26H) are used, an unlimited number of times 42 (2AH) and finally 39 (27H).

B) FISCAL VOUCHERS.
First the fiscal voucher is opened, the sales are registered, the payment is made and finally the voucher is closed.
Commands 48 (30H), 49 (31H), 51 (33H), 52 (34H), 53 (35H), 54 (36H), 58 (3AH) and 56 (38H) were used. At the end
of the day, a daily financial report with zeroing (Z-report) is performed in order to record the information in the FI. This is done with
the command 69 (45H).

MAPLE (ELECTRONIC MEDIA CONTROL TAPE)

FU remembers each line of fiscal vouchers, service vouchers, service information documents at initialization, X- and Z-reports in the
non-volatile control strip (MAPLE). KLEN has a capacity of at least 2 GB and in normal operation should take all the data from the operation
of the FU to fill the FP. In case of damage or filling (in case of very active work), MAPLE
can be replaced with an empty one, as the old one is kept for possible references.

The following inquiries can be made from KLEN:


• Print a copy of a document with the specified date and
time. • Verification of the validity of the SHA-1 checksum for documents from the entire Z-report by direct and calculation from
FU.
• Comparing the SHA-1 checksums for one or more Z-reports with those recorded in the FP and printing a report with
the result of the inspection.

Two flags of the status bytes warn of the near end of KLEN (10 MB free) and the end of KLEN (1 MB free). If the "Maple End" flag is
raised, the following commands are prohibited: 38 (Opening a voucher), 42 (Free text in a voucher), 48 (Opening a voucher), 49 (Registering
a sale), 52 (Registering) and display), 54
(Print of fiscal text), 58 (Sale of an item).

GENERATION OF REPORTS

The reports are generated entirely by the FI when receiving the corresponding command from the PC. It is not possible with these reports
the user program to make any changes to the type of reports. They are executed with the commands:
50 (32H) - report changes in tax rates and decimal places.
69 (45H) - daily financial statement with or without reset.
108 (6CH) - daily financial statement with or without resetting and with a printout of the amounts by items.
117 (75H) - daily financial statement with or without resetting and with a printout of amounts by department.
118 (76H) - daily financial statement with or without resetting and with a printout of items and departments.
79 (4FH) / 95 (5FH) - abbreviated FP report from date to date / from number to fiscal block number.
73 (49H) / 94 (5EH) - full FP report from date to date / from number to fiscal block number.
LOW LEVEL PROTOCOL

A) TYPE OF PROTOCOL. - Master (Host) / Slave


The FI executes the commands sent to it by the Host and returns a message depending on the
result. The FI cannot initiate communication. Only messages that are the result of the execution of received commands are sent to
the Host. The messages in the protocol are either packet messages or single bytes.

B) SEQUENCE OF COMMUNICATIONS
The host sends a packet message containing the command to the FI. The
FI performs the requested operation and responds with a packet response message.
The host must wait for the response from the FI before sending another
message. The protocol uses unpackaged one-byte codes to handle necessary pauses and erroneous states.

C) NON-PACKAGED MESSAGES, TIME-OUT

During normal operation of all Host messages, Slave responds no later than 60 ms with either a packet message or a single-byte
code. The host must have 500 ms time-out to receive a response from Slave. If no response is received within this time, he must send the
message again with the same sequence number and the same command. In the event of several failed attempts, the Host must indicate
that there is no connection to the FI or that there is a hardware error.

Unpackaged messages consist of one byte and are: a) NAK


15H This code is sent by Slave when it detects an error
in the checksum or format of the received message. When
Host received NAK, he must send a message again with the same sequence number. b)
SYN 16H This code is sent by Slave when it receives a command that takes
longer to execute. The SYN is sent every 60 ms until the packed response message is ready.

4
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

D) PACKAGED 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> Preamble
length: 1 byte
value: 01H

<LEN> Number of bytes from <01> (without it) to <05> (incl.) Plus fixed offset from 20H
length: 1 byte
value: 20H - FFH

<SEQ> Serial number of frame length: 1


byte value: 20H - 7FH

The FI writes the same <SEQ> in the response message. If the FI receives a message with the same <SEQ> as the last
message received from it, it does not take action, but repeats the last message sent by it.

<CMD> Command code length: 1


byte value: 20H - 7FH

The FI writes the same <CMD> in the response message. If the FI receives a non-existent code, it responds with
a packet message with zero length of data field and sets the corresponding status bit.
<DATA> Data
length: 0 - 213 bytes for Host to checkout.
0 - 218 bytes for Host Cashier.
value: 20H - FFH and additionally 09H and 0AH.
The format and length of the data area depends on the command. If the command has no data, the length of this field
is zero. If there is a syntax error in the data, the corresponding status bit is established and a packet message with zero
length of the data field is returned. Divider (only for cash to Host messages) length: 1 byte value: 04H
<04>

<STATUS> Field with current FU status length: 6 bytes


value: 80H - FFH

<05> Postamble
length: 1 byte
value: 05H

<BCC> Checksum (0000H-FFFFH) length: 4 bytes


value: 30H - 3FH

The amount includes from <01> without it to <05> incl. Each digit of the two bytes is transmitted by adding 30H. For
example, the sum of 1AE3H is represented as 31H, 3AH, 3EH, 33H.
<03> Terminator
length: 1 byte
value: 03H

COMPOSITION OF MESSAGES, SYNTAX AND SYMBOLS USED

a) The data area is command dependent. b) The


parameters sent to the FI can be separated by commas and / or be of fixed length. c) The presence of a comma
between the parameters indicates that it is mandatory. When the individual parameters are enclosed in>> this means
that they are mandatory, but the brackets themselves are not contained in the message.

When a parameter is enclosed in [] parentheses, it means that it is optional. The brackets themselves are also not transmitted in the
message.
Symbols with ASCII codes below 32 (20H) have a special meaning and their use is clearly indicated in the description where necessary.
If for some reason we need to send such a symbol (for example in an ESCAPE command to the display), it must be preceded by 16 (10H) and
a 40H offset must be added to it.

Example: When we write for the data area - 2500,100, Text, then in the data area there is 2D 32 35 30 30 2C 31 30 30 2C 54 65 78 74
where each hexadecimal number represents an ASCII value.
,

5
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

LIST OF COMMANDS - BY PURPOSE


This section contains the list of FI commands, divided into groups according to their purpose:
INITIALIZATION
2BH (43) Establish HEADER and FOOTER and print options.
3DH (61) Establish date and time. Set the allowable interval of
42H (66) invoice numbers. Establish multiplier, decimal place,
53H (83) currency name and tax rates. Programming of additional payment types.
55H (85) Assign a department name. Establishment of the UIC.
57H (87)
62H (98)
65H (101) Set operator password. Set
66H (102) operator name. Defining and
6BH (107) reporting items. Loading a graphic
73H (115) logo. Storage of customer data in
8CH _ the memory of FU. Programming an item with a
FFH (255) barcode

SALES 2ÿH
(46) Opening a reversal
30H (48) voucher. Opening a fiscal
31H (49) receipt. Sales registration.
33H (51) Subtotal. Sales registration
34H (52) and display. Calculation of sum (Payment).
35H (53) Printing fiscal free text. Closing a fiscal receipt.
36H (54) Print customer information. Register the sale of a
38H (56) programmed item. Termination (cancellation) of a
39H (57) fiscal receipt. Duplicate receipt stamp.
3AH (58)
3CH (60)
6DH (109)
END OF THE DAY
45H (69) Daily financial report (with or without reset).
6CH (108) Extended daily financial report (with printout of items).
75H (117) Extended daily financial report (with a printout of the departments).
76H (118) Extended daily financial report (with printout of departments and items).
REPORTS

32H (50) Report on changes in tax rates and decimal places during the respective period.
49H (73) Detailed report of the FI (from number to number). Abbreviated report of the FI (from
4FH (79) date to date). Detailed report of the FI (from date to date). Abbreviated report of the
5EH (94) FI (from number to number). Operators report. Article report.
5FH (95)
69H (105)
6FH (111)
INFORMATION TO THE HOST
3EH (62) Read the date and
40H (64) time. Information about the last fiscal
41H (65) record. Information about the amounts
44H (68) for the day. Number of free entries in the
4AH (74) FP. Receive status bytes. Status of the
4CH (76) fiscal transaction. Date of last entry in the
56H (86) FP. Information on the accumulated
58H (88) amounts in the department. Obtaining diagnostic
5AH (90) information. Receiving tax rates. Receiving UIC.
61H (97) Information about the current receipt. Receive
63H (99) information on amounts by type of payment.
67H (103) Obtaining operator information. Get the number
6ÿH (110) of the last printed document.
70H (112)
71H (113)
72H (114) Receive information for a fiscal record or a set period.
PRINTING TEAMS
2CH (44) Move the paper.

6
Machine Translated
DATECS
by Google
Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

DISPLAY
21H (33) Clear display. Display
23H (35) text (bottom line). Display text
2FH (47) (top line). Show date and time.
3FH (63) Display - full control.
64H (100)

OTHERS

26H (38) Opening a business


27H (39) voucher. Closing a
2AH (42) business voucher. Printing free text in a
46H (70) business voucher. Official input and output
47H (71) of money. Print diagnostic information.
50H (80) Sound signal. Programming of the
59H (89) production test area. Separation line printing.
5CH (92) Opening a drawer. MAPLE support - reading,
6AH (106) printing and information.
77H (119)

7
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

DETAILED DESCRIPTION OF THE COMMANDS

21H (33) CLEANING THE DISPLAY

Data area: Answer: No data


No data

A command to clear the display is sent. If a fiscal receipt is open, only the bottom row is cleared.

23H (35) DISPLAY OF TEXT IN THE BOTTOM ROW OF THE DISPLAY

Data area: Answer: <Text>


No data

Text Text up to 20 characters, sent directly to the display. Before it, a command is sent to position and clear the bottom row.

26H (38) OPENING OF OFFICIAL VOUCHER

Data area: Answer: No data


Allreceipt

Allreceipt The number of all issued vouchers (fiscal and service) from the last end of the day to the present / 4
bytes/.

The FU performs the following actions:


• HEADER is printed. A

response containing Allreceipt is returned .

The command cannot be executed if: There



is an open fiscal receipt. A

business voucher has already been opened.

27h (39) CLOSURE OF OFFICIAL VOUCHER

Data area: Answer: No data


Allreceipt

Allreceipt The number of all issued vouchers (fiscal and service) from the last end of the day to the present / 4
bytes/.

The FU performs the following actions:


• FOOTER is printed. The serial

number, date and time of the document are printed. “OFFICIAL
• VOUCHER” is printed.

A response containing Allreceipt is returned .

2Ah (42) PRINT FREE TEXT IN OFFICE VOUCHER

Data area: <Height> <tab> [<Data>]


or
[<Data>]

Answer: No data

Height '1'
- Normal height print. '2' - 2x height
print. '3' - Print with 3x height.

• tab - Separator - one byte with value 0x09. Optional


parameters:
• Data - Text up to 40 characters.
The '#' character is printed at the beginning and end of the line.

8
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

2Bh (43) ESTABLISHMENT OF HEADER AND FOOTER AND PRINT OPTIONS

Data area: Answer: <Item><Text>


Depends on the data area

HEADER consists of 6 lines of text, which are printed at the beginning of each fiscal or official receipt. For normal operation of the FI
it is necessary to set at least 2 rows of Header. The UIC (set by command 98) is always printed on the third line, so that the rows of
the HEADER after the second are automatically moved one position down.
FOOTER consists of 2 lines of text that are printed at the end of each receipt.
HEADER and FOOTER are centered automatically.

This command must be executed up to 8 times to set all HEADER and FOOTER lines.

Item A symbol with the following meaning:


'0' to '7' is the number of the line to be set. HEADER lines are numbered 0 to 5, and FOOTER lines are 6 and 7. 'A'
Automatic sales formatting as invoice (4 separate lines).

'B' Barcode size (from 24-240).


'C' Not for FU. And it doesn't return a mistake.
'D' Sets the print density. Possible values: '1': Very pale
'2': Pale '3': Normal '4': Solid '5': Very dense

'E' Enable / disable printing of the total amount in EUR for the first payment order (53) in the receipt. Printing is disabled
by default. Optionally, the command also sets the valid course
EUR / BGN Data syntax: <Enable>
[, Rate]
Enable Flag to disable / enable printing. One byte: '0' or '1'.
Rate Exchange rate. Floating number with up to 8 significant digits and 5 decimal places. If missing,
the old value is retained. If it is 0.00000, the value in euros is not printed regardless of
Enable.
'L' Enable / disable the printing of the graphic logo immediately before HEADER. The logo is defined by command 115.
Text data is in <, Enable>, <Height> format . Height is the height of the logo, and Enable is one byte with a value of
'1' (enabled) or '0' (disabled).
'N' Enable / disable the printing of the department name at the beginning of each fiscal receipt.
'R' For FU not serviced.
'T' Allow / disable the printing of the accumulated VAT for the voucher in normal (not extended)
fiscal receipt.
'X' Enable / disable the automatic generation of a drawer opening pulse at commands 53 (35H) and 70 (46H).

'I' Allows us to read the values previously set with command 43. The letter 'I' follows
just another symbol that matches one of the above.
Text Text up to 42 characters,
such as: If <Item> is a digit from '0' to '7' - then <Text> is the text of the line. If <Item> = 'A' - then
<Text> is a '0' or '1' character, with '0' disabling and '1' enabling 'invoice' formatting. If it is allowed, then for each sale 4
lines are printed - for name, unit price, quantity and price with tax group.

If <Item> = 'B' - then <Text> is in the form <, Height>, where Height is the height of the printed barcode with
possible values 24-240. If
<Item> = 'D' the <Text> is 1 to 5. If <Item> = 'E'
the <Text> is <Enable, Rate>, where Enable is the flag disabled / enabled, and Rate
is the exchange
rate. If <Item> = 'L' - then <Text> is <Enable, H>, where H is the height of the graphic logo and Enable is the flag
forbidden / allowed. H is not serviced for the FI, and a fixed value of 96 is returned.
If <Item> = 'N', then <Text> is a '0' or '1' character, with '0' prohibiting and '1' allowing the department name to be printed
at the beginning of each fiscal receipt. If <Item> = 'T' - then <Text> is a symbol '0' or '1', with '0' forbidding and '1' allowing
the printing of the accumulated VAT in a normal (not extended) fiscal receipt. If <Item> = 'X' - then <Text> is a character
'0' or '1', with '1' disabling and '0' enabling automatic

opening a drawer at commands 53 (35H) and 70 (46H).

2Ch (44) MOVEMENT OF PAPER.

Data area: Answer: Lines


No data

Lines The number of rows to move the paper. Must be a positive number not greater than 99
/ 1 or 2 bytes /. If a parameter is missing, 1 line is assumed.

9
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

2Eh (46) OPENING A REVERSE FISCAL (CLIENT) VOUCHER

Data area: <OpCode>, <OpPwd>, <NSale>, <TillNmb>, <DocType>, <DocNumber>, <DocDateTime>,


<FMNumber>[,<Invoice>,<InvNumber>,<Reason>]
Answer: <ErrCode>
or
<AllReceipt>, <StrReceipt>
Mandatory parameters:

OpCode - Operator number (number 1 - 30).

OpPwd - Operator password (up to 8 characters).

NSale - Unique sale number (21 characters CCCCCCCC-CCCC-DDDDDDD format [0-9A-Za-z] {8} - [0-
9A-Za-z] [4} - [0-9] [7}), if reversed on a voucher for which a LPG has been issued. If no LPG has been issued for the voucher, this
field is empty.

TillNmb - Cashier number (number 1 - 99999).

DocType - Reason for reversing the document (number 0 - 1).
o 0 - operator error.
oo 2 - reduction
1 - return /ofexchange.
the tax
base.

DocNumber - Number of the document on which the reversal is (number 1 - 9999999).

DocDateTime - Date and time of the document in which the reversal format is (DDMMYYYY or DDMMYYYYYY). o Example:
March 30, 2018 16:13 - "3003181613" or "300318161300".

FMNumber - FP number from the document on which the reversal is (number recorded with 8
characters). Optional parameters: Invoice - Reversal on invoice one symbol with value - 'I'.


InvNumber - Invoice number on which the reversal is (number 1 - 9999999999).

Reason - Reason for issue. Up to 42 characters.

ErrCode - One byte error code. o 'F' -
Error.

AllReceipt - The number of all vouchers issued (fiscal and non-fiscal) from the last end of the day to
the moment.

StrReceipt - The number of all reversal fiscal vouchers from the last end of the day to the present.

2Fh (47) DISPLAY TEXT ON THE TOP OF THE DISPLAY

Data area: Answer: Text


No data

Text Text up to 20 characters, sent directly to the display. It is preceded by a command to position and clear the top row. The command
is rejected if a fiscal receipt is opened.

30h (48) OPENING OF A FISCAL (CLIENT) VOUCHER Data area:


<OpCode>,<OpPwd>,<NSale>,<TillNmb>[,<Invoice>]
or
<OpCode>,<OpPwd>,<TillNmb>[,<Invoice>]
Answer: <ErrCode>
or
<AllReceipt>,<FiscalReceipt>
OpCode Operator number / 1 to 30 /
OpPwd Operator password / 1 to 8 digits /
NSale Unique sales number LPG (21 characters CCCCCCCC-CCCC-DDDDDDD format [0-9A-Za z] {8} - [0-9A-Za-z ] {4}
- [0-9] (7}). The parameter is required in the first syntax of the command.
TillNmb Cashier's number / integer from 1 to 99999 / One symbol
Invoice with value "I". Its presence causes the printing of an extended customer note (invoice). The invoice number is
automatically printed after HEADER, and after the first payment command a printout of the amounts by tax groups is
printed. After payment, information about the buyer must be printed with command 57 (39h). The number of all issued
vouchers (fiscal and service) from the last end of the day to the present. / 4 bytes / The number of all issued fiscal
Allreceipt vouchers since the last end of the day so far. / 4 bytes /

FiscReceipt
The FU performs the following
• actions: HEADER is printed.

The number and name of the operator and the number of the cash

register are printed. AllReceipt and FiscReceipt return.
The command will not be executed successfully if: There

is an open fiscal or service voucher; FP is
• complete; FP is damaged; Missing operator

code or password or cashier number; The

operator password is incorrect; MAPLE is complete or not functioning;

The tax terminal is not functioning or the information in it does not

correspond to that in the FI; There are registered sales from eight

different cashiers.

10
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

31h (49) REGISTRATION (SALE) OF GOODS

Data area: [<L1>] [<Lf> <L2>] <Tab> <TaxCd> <[Sign] Price> [* <Qwan>] [, Perc |; Abs]
or
[<L1>] [<Lf> <L2>] <Tab> <Dept> <Tab> <[Sign] Price> [* <Qwan>] [, Perc |; Abs] No
Answer: data

L1 Text up to 22 bytes containing a line describing the sale


Lf One byte with 0Ah content. Text
L2 up to 22 bytes containing a second line describing the sale One
Tab byte with a content of 09h. One byte containing the letter indicating
TaxCd the type of tax ('A', 'B', 'C', ...). There is a restriction depending on the Enabled_Taxes parameter, which is set when
setting tax rates in command 83. Department number. Integer from 1 to 9 inclusive. The sale is assigned to the tax
Dept group with which the department is associated in its programming. One byte with a value of '-'. This is the unit price
and is up to 8 significant digits. Optional parameter specifying the quantity of the goods. The default is 1,000. Length
Sign up to 8 significant digits (not more than 3 after the decimal point). The product Price * Qwan is rounded from FU to
Price the specified number of decimal places and also must not exceed 8 significant digits. This is an optional parameter
Qwan showing the value of the mark-up or discount (depending on the sign) as a percentage of current sales. Permissible
values are from -99.00% to 99.00%. Up to 2 decimal places are accepted. This is an optional parameter showing the
value of the mark-up or discount (depending on the sign) as an amount. No discount with a value greater than the
Minute value of the sale is allowed.

Abs

Only one of the Perc or Abs arguments is valid.

FU performs the following actions:


• If the sale is by department and is allowed by command 43, subcommand 'N', the name of the
department.
• The text describing the sale is printed together with the price and the code of the tax group. If there is a set quantity, the
information about it is also printed.
• The price of the goods is added to the accumulated amounts in the registers in the operative memory. In case of overflow, the
corresponding bits of the status field are established. • If there is a discount or surcharge, it is printed on a separate line
and added to the registers of the FI.
The values for the whole day are printed in the daily financial report.
• If a department is specified, the accumulated value is added to it. Allowances and discounts, if any,
are reported.

The command will not be executed successfully if: •


No fiscal receipt is opened. • The maximum
number of sales per voucher has already been made (120). • The command
(35h) was executed successfully. • The amount of any of the tax groups
becomes negative. • The amount of allowances or discounts within the
voucher becomes negative.
• MAPLE is complete.

32h (50) TAX RATES PERFORMED DURING THE RELEVANT PERIOD

Data area: Answer: <Start>,<End>


= F - if no tax rates are found for the period or in case of error.
= PAA, BB, CC, DD, EE, FF, GG, HH, DDMMYY if rates are found, such as 'P' means 'PASS' and then the last
active rates for the specified period and the date of their setting are listed.

If there are groups that are not used (disabled with Enabled_rates), then for them instead of a percentage rate returns 'DT' (Disabled Tax).

Start Start date of the period - DDMMYY / 6 bytes /. End


End date - DDMMYY / 6 bytes /. The team prints a report
of changes in decimal places and tax rates for the specified period.

11
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

33h (51) TOTAL AMOUNT

Data area: Answer: <Print><Display>[,Perc|;Abs]


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

Print One byte, which if '1' is the value of the subtotal will be printed. One byte, which if
Display '1' is the value of the subtotal will be shown on the display. Optional parameter that shows the
Minute value as a percentage of the discount or surcharge on the amount accumulated so far. This is an optional parameter showing
the value of the mark-up or discount (depending on the sign) as an amount (up to 8 significant digits). A discount greater
Abs than the value of is not allowed

sales.

Only one of the Perc or Abs arguments is valid.

SubTotal The amount so far for the current fiscal receipt / up to 10 bytes /
TaxA The amount of tax group A / up to 10 bytes / The
TaxB amount of tax group B / up to 10 bytes /
TaxC The amount per tax group B / up to 10 bytes /
TaxD The amount per tax group D / up to 10 bytes / The
TaxE amount per tax group D / up to 10 bytes /
TaxF The amount per tax group E / up to 10 bytes / The
TaxG amount per tax group G / up to 10 bytes / The
Taj amount per tax group H / up to 10 bytes /

The amount of all sales registered in the fiscal receipt so far is calculated. If desired, the amount can be printed and / or shown on the display.
The calculated amount and the accumulated amounts for each tax group are returned to the PC. If a surcharge or discount is specified, it is printed
on a separate line and the accumulated amounts by tax groups are adjusted
respectively.

34h (52) SALES REGISTRATION AND DISPLAY

Data area: [Line]]<Tab><TaxCd><[Sign]Price>[*Qwan][,Perc|;Abs]


or
[Line]]<Tab><Dept><Tab><[Sign]Price>[*Qwan][,Perc\;Abs]
Answer: No data

Line String up to 22 bytes containing a line of text describing the sale. One
Tab byte containing 09h One byte containing the letter indicating the type
TaxCd of tax ('A', 'B', 'C', ...). There is a restriction that depends on the Enabled_taxes parameter, which is set when setting the
currency in command 83. Department number. Integer from 1 to 9 inclusive. The sale is assigned to the tax group, s
Dept
which is associated with the department in its programming. One
Sign byte with a value of '-'. This is the price and it is up to 8 significant
Price figures. Optional parameter specifying the quantity of the goods.
Qwan The default is 1,000. Length up to 8 significant digits. This is an optional parameter showing the value of the mark-up or
discount (depending on the sign) as a percentage of current sales. Permissible values are from -99.00% to 99.00%. This is
Minute an optional parameter showing the value of the mark-up or discount (depending on the sign) as an amount. No discount
with a value greater than the value of the sale is allowed.
Abs

Only one of the Perc or Abs arguments is valid.

The FI will perform the following actions:


• If the sale is by department and is allowed with command 43, subcommand 'N', the name of the department is printed. • The text
describing the sale is printed together with the price and the code of the tax group. • The price of the goods is added to the
accumulated amounts in the registers in the operative memory. In case of overflow, the corresponding bits of the status bytes are set.

• If there is a discount or surcharge, it is printed on a separate line and added to the registers of the FI.
The values for the whole day are printed in the daily financial report.
• The price of the product is shown on the top and the description on the bottom line of the display (20 characters of the name are
indicated). • If a department is specified, the accumulated value is added to it. Allowances and discounts, if any

report.

The command will not be executed successfully if:



No fiscal voucher is open. The

maximum number of sales per voucher has already been made. The

"Total" command was executed successfully. The amount of one of

the tax groups becomes negative. The amount of allowances or

discounts within the voucher becomes negative.
• MAPLE is complete.

12
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

35h (53) CALCULATION OF TOTAL (TOTAL)


Data area: Answer: [<Line1>][<Lf><Line2>]<Tab>[[<PaidMode>]<[Sign]Amount>][*<Type>]
<PaidCode><Amount>
Line1 Text up to 42 bytes containing the first
Lf line One byte with content 0Ah Text up
Line2 to 42 bytes containing the second line
Tab One byte with content 09h
PaidMode Optional code indicating the method of payment. It can have the following values: 'P' - Cash
payment (default); 'N' - Credit payment; 'C' - Debit card payment; 'D' - Payment with
the NHIF; 'I' - Voucher payment; 'J' - Coupon payment; Depending on the code, the
amounts are accumulated in different registers and can be received in the daily
report. One byte with a value of '+', indicating the sign of Amount (the amount to be
paid). The amount to be paid / up to 10 significant digits /. Pinpad payment type (card
payment only, PaidMode = 'C')

Sign
Amount
Type
'1' - Payment in cash;
'12' - Loyalty point payment (Borika only);
PaidCode One byte - the result of command execution.
'F' - Error.
'E' - The calculated subtotal is negative. No payment will be made and Amount will contain the negative subtotal.

'D' - If the amount paid is less than the amount of the voucher. The rest of the surcharge is returned to Amount.
'R' - If the amount paid is greater than the sum of the note. A RESTO message will be printed and the rest will be
returned to Amount.
‘I’ - The amount of a tax group was negative and therefore an error occurred. The Amount is back
the current subtotal.
Amount Up to 9 digits with a sign. Depends on PaidCode.

If the FI works with a pinpad, when paying with PaidMode = 'C' the answer is as follows:
“F, PP, <TransError>” - Pinpad error. The error is contained in <TransError>
"F, PP, '- 111555" - No pinpad connection.
"F, PP, -111558" -Disconnected connection to the pinpad. The transactions are the same. Please try again.
"F, PP, -111560, <Sum>, <CardNum>" - Probably the transaction was successful in the pinpad, but not in the
cash register. The amount is returned in pennies and the last 4 digits of the card number for reference
transactions. With this error, call command 55, with option 13 and choose between print (1) or cancel (2)
the transaction.
<TransError> Error returned by pinpad.
<Sum> Amount of the transaction in pennies.
<CardNum> The last 4 digits of the card number with which the transaction was made.

This command causes the calculation of the amounts from the fiscal receipt, the printing of the amount in a special font and its
display. Upon successful execution of the command, an impulse is generated to open a drawer, if this is enabled by subcommand 'X' of
command 43. If there is no more data after the <Tab> symbol , the FI automatically pays the entire available amount in cash. The command
will not be executed successfully if: • No fiscal receipt is opened. • The accumulated amount is negative. • If any of the accumulated
amounts by tax groups is negative.

37h (55) EXECUTING PINPAD COMMANDS

Data area: See options. Answer:


<ErrorCode> [, <ErrorNum>]

Option Execution option number. According to the option depends on the data area:
'1' - Cancel transaction
If the pinpad is configured to work with Borika:
Data area: <Option> <Tab> <Type> <Tab> <Amount> <Tab> <RRN> <Tab> <AC> <Tab>
If the pinpad is configured to work with UBB:
Data area: <Option> <Tab> <Type> <Tab> <Amount> <Tab> <Number> <Tab>
'2' - A copy of the last pinpad document
Data area: <Option><Tab>
'3' - A copy of a pinpad document
Data area: <Option><Tab><RRN><Tab>
'4' - Copy of all pinpad documents for the day
Data area: <Option><Tab>
'5' - Pinpad report and end of the day
Data area: <Option><Tab>
'6' - Pinpad report

13
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

Data area: <Option> <Tab>


'7' - Detailed pinpad report
Data area: <Option> <Tab>
'8' - Adjust the date and time of the pinpad
Data area: <Option> <Tab> <DD> - <MM> - <YY> <hh>: <mm>: <ss> <Tab>
'9' - Pinpad connection test
Data area: '10' - <Option><Tab>
Server connection test
Data area: <Option> <Tab>
'11' - Loyalty scheme balance (Borika only)
Data area: <Option> <Tab>
'12' - Get a pinpad update
Data area: <Option> <Tab>
'13' - In case of an error returned by command 53 when paying with a pinpad or command 55 (option 14),
if the answer contains a sum and a card number, this option is used with a choice between print (1) and
cancel (2) of the transaction.
Data area: <Option> <Tab> <Choice> <Tab>
'14' - Sale through pinpad and printing of a note, without fiscal receipt
Data area: Type of <Option><Tab><Amount><Tab>
<Type> transaction for cancellation: '7' -
return with money (Borika);
'13 - return with points under the loyal customer scheme
(Borika); - 16 - return by bus. number (UBB) - 17 - return by
note number (UBB)
<Amount> Transaction amount;
<RRN> RRN number of the transaction;
<AC> AC transaction number; -
< Number> return number (according to the type of the note): for 16 - aut. number (AC), for 17 - number of note Day;
<DD>
<MM> Month;
<YY> Year;
<hh> Time;
<mm> Minutes;
<ss> Seconds;
<Choice> Choice for the last transaction: '1'
- seal;
'2 - cancellation;
In case of choice 1 (seal), the payment goes to the FI and the payment is printed, after which it is continued
with another payment (if the payment is partial) or closing the receipt. In case of choice 2 (cancellation), the
FI expects to be scared with command 53.
<ErrorCode> Error code: 'P' - the
command passed successfully;
'F' - the command failed;
<ErrorNum> Error number returned by pinpad (if any). If there is no pinpad connection, the returned error is '-111555'.
If a pinpad connection is not configured, the return error is '-111557'

There are several types of response to option 14:


Answer: <ErrorCode> [, <ErrorNum>]
<ErrorCode> Error code:
'P' - the command passed successfully;
'F' - the command failed;
<ErrorNum> Error number returned by pinpad (if any). -111555 - no
pinpad connection -111557- if no pinpad
connection is configured
Answer: “F, PP, <TransError>” - Pinpad error. The error is contained in <TransError>:
"F, PP, '- 111555" - No pinpad connection.
"F, PP, -111558" -Disconnected connection to the pinpad. The transactions are the same. Please try again.
"F, PP, -111560, <Sum>, <CardNum>" - Probably the transaction was successful in the pinpad, but not in the cash
register. The amount is returned in pennies and the last 4 digits of the card number for reference transactions. At
this error must be invoked command 55 with option 13 and choosing between print (1) or cancel (2) the
transaction.
<TransError> Error returned by pinpad.
<Sum> Amount of the transaction in pennies.
<CardNum> The last 4 digits of the card number with which the transaction was made.

Answer: <ErrorCode>, <AC>, <CardPaymentType>, <CardNumber>, <MIDNumber>, <RRN>, TIDNumber>,


<TransAmount>, <TransDate>, <TransTime>, <TransNumber>, <TransStatus>, <TransType> ,
<FullResponseCode> <ErrorCode> Error code: 'P' - command passed successfully;

'F' - the command failed;


<AC > - transaction authorization code.
<CardPaymentType> - payment method (unknown: -1, chip: 0, contactless: 1, magnetic reader: 2, manual input: 3).

14
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

<CardNumber> - Masked card number (only the last 4 digits are visible and the rest are masked with the symbol
star (*)).
<MIDNumber> - merchant id number.
<RRN> - RRN of the transaction number.
<TIDNumber> - terminal number.
<TransAmount > - amount of the transaction.
<TransDate> - date of the transaction (DD.MM.YY).
<TransTime> - transaction time (hh: mm: ss).
<TransNumber> - transaction number.
<TransStatus> - transaction status (0-approved, 1-rejected, 2-error).

TransType - type of transaction.


FullResponseCode - Response code returned by the bank's server. All
commands except '13' must be executed in a closed receipt. Command '13' can be both closed and open.

36h (54) PRINTING OF FISCAL FREE TEXT


Data area: Text
Answer: No data

Text Text up to 36 bytes


The '#' character is printed at the beginning and end of the line. It is necessary to have an open fiscal receipt. Otherwise, the text is
not printed. If the text is longer than 36 characters, the letters after the 36th are cut out.

38h (56) CLOSING (CLOSING) A FISCAL VOUCHER


Data area: Answer: No data
Allreceipt, FiscReceipt

Allreceipt All notes issued since the last end of the day so far.
FiscReceipt All fiscal notes issued since the last end of the day. The accumulated amounts from the fiscal
receipt are added to the daily amounts in the registers of the operative memory. The command will not be
executed successfully if: • No fiscal receipt is opened. • Command 53 (35h) failed. • The amount paid under
command 53 is less than the total amount of the fiscal receipt.

39h (57) PRINT OF CLIENT INFORMATION

Data area: <EIK> <Tab> <EIKType> [<Tab> <Seller> [<Tab> <Receiver> [<Tab> <Client> [<Tab> <TaxNo>
[<Tab><Address>]]]]]
Answer: <ErrCode>
Mandatory parameters:
OAK UIC number of the buyer. Between 9 and 14
Tab characters Tab (09H). Delimiter between EIKType
parameters UIC type. 0 - Bulstat, 1 - PIN, 2 - LNC, 3 - Sl. number
O 0 - Bulstat.
O 1 - PIN. 2 -
O LNC.
O 3 - Sl. number.
Optional parameters:
• Tab - Tab (09H). Delimiter between parameters.
• Seller - Seller's name. Up to 36 characters.
• Receiver - Name of the recipient. Up to 36 characters.
• Client - Name of the buyer. Up to 36 characters.
• Seller - Seller's name. Up to 36 characters.
• TaxNo - VAT - buyer's number. Between 10 and 14 characters.
• Address - Address of the buyer. Up to two lines of text separated
by LF. Command response: ErrCode - One byte error code.

O 'P' - Command executed successfully.
O 'F' - Error.

If the parameter is empty or not set, an empty space is left for filling by hand. It must be performed immediately after
full payment of the amount accumulated for the voucher. After that, the closure of the voucher is already allowed.

15
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

3Ah (58) REGISTRATION (SALE) OF ITEM

Data area: Answer: [D]<[Sign]PLU>[<Tab><Dept><Tab>][*<Qwan>][,Perc|;Abs]


No data

D One byte with a value of 'D'. If there is, the sale is indicated on the customer display. If the length of the item name is
more than 20, the characters after the 20th are cut off. One byte with a value of '-'. This is the item number. Integer
Sign from 1 to 999999999 (up to 9 digits). One byte - tab (ASCII code 9). Department number. Integer from 1 to 9 inclusive. If
PLU this parameter is present, then the separating tabs must be present. Optional parameter specifying the quantity of the
Tab goods. The default is 1,000. Length up to 8 significant digits (not more than 3 after the decimal point). The product
Dept (Unit price) * Qwan is rounded from FU to the specified number of decimal places and also must not exceed 8
significant digits. This is an optional parameter showing the value of the mark-up or discount (depending on the sign)
Qwan as a percentage of current sales. Permissible values are from -99.00% to 99.00%. Up to 2 decimal places are accepted.
This is an optional parameter showing the value of the mark-up or discount (depending on the sign) as an amount. No
discount with a value greater than the value of the sale is allowed.
Minute

Abs

Only one of the Perc or Abs arguments is valid. FU performs the following actions:

The name, price and tax group of the goods are read from the table with the articles. If the

sale is by department and is allowed by command 43, subcommand 'N', the name of the department is printed.
Prints the name of the item, the indicated quantity and the unit price. On the second line the received price is

printed together with the letter defining the tax group. The registers for accumulated amounts and quantities of items are
updated. If invoice type text formatting is set with command 43, the product name, unit price, quantity and price are printed on
separate lines. The price of the goods is added to the accumulated amounts in the registers in the operative memory. In case
of overflow, the corresponding bits of the status field are established. If there is a discount or allowance, it is printed on a

separate line and added to the registers of the FI. The values for the whole day are printed in the daily financial report. If a
department is specified, the accumulated value is added to it. Allowances and discounts, if any,

are reported.

The command will not be executed successfully if:



An item with the specified number is not

programmed. No fiscal voucher is open. The

maximum number of sales per voucher has already been made (117). The

command (35h) was executed successfully. The amount of one of the tax

groups becomes negative. MAPLE is complete.

3Ch (60) FISCAL VOUCHER CANCELLATION (TERMINATION)

Data area: Answer: No data


No data

The command is admissible only in an open fiscal receipt, and only before the execution of command 53 (Total). Causes the cancellation of
all amounts accumulated in the voucher. It is printed with double width “= CANCELED =” and “NO PAYMENT IS DUE” and the receipt ends with the
inscription “FISCAL VOUCHER”.

3Dh (61) SETTING THE DATE AND TIME

Data area: Answer: <DD-MM-YY><space><HH:MM[:SS]>


No data

A date cannot be established earlier than the date of the last FP entry. It is planned to work until 2099 inclusive. After RESET of the memory,
the command must be executed in order to continue the normal operation of the FU. When executing the command, a block is saved in the FP for
the performed reset.
It is not possible to set a date and time earlier than the last printed document recorded in KLEN. This is for the purpose of correctness
search for documents from KLEN by date and time for printing or download on the serial port as text.

3Eh (62) READING OF DATE AND TIME

Data area: Answer: No data.


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

3Fh (63) DISPLAY OF DATE AND TIME

Data area: Answer: No data


No data

The bottom line of the display shows the current date and time of the FI in DD-MM-YY format HH: MM: SS.

16
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

40h (64) INFORMATION ABOUT THE LAST FISCAL RECORD

Data area: [<Type>]


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

Optional parameters:
• Type - Type of the requested data for the last fiscal record.
o No parameter - Amounts by sales tax groups. o '0' -
Amounts by sales tax groups. o '1' - Amounts by tax
groups of reversal transactions.
ErrCode Error code: 'P'
Command successful. Data follows.
'F' Last entry not read. This is the
N number of the last fiscal record - 4 bytes.
TaxX Amount of turnover by tax group X, depending on the input parameter. 12 bytes with sign.
Date The date of the fiscal record - 6 bytes / DDMMYY /.

The command causes the information about the last FP record to be transmitted to the computer.

41h (65) INFORMATION ABOUT THE AMOUNTS BY TAX GROUPS FOR THE DAY

Data area: [Option]


Answer: Depends on the value of Option

Option - Type of requested data for the last fiscal record. o No


parameter - Turnover by tax groups. o '0' - Turnover by tax
groups. o '1' - VAT by tax groups. o '2' - Daily counters and
amounts (1/3 part). o '3' - Daily counters and amounts (2/3
part). o '4' - Daily counters and amounts (3/3 part). o '5' -
Reversal of turnover by tax groups. o '6' - Reversal of VAT by
tax groups. o '7' - Amounts of payments CANCELED.

If the parameter is missing, '0' is the default.

Command response - depends on Option:


• ÿÿÿ ÿÿÿÿÿÿÿÿÿ ÿÿÿ '0': <TaxA>,<TaxB>,<TaxC>,<TaxD>,<TaxE>,<TaxF>,<TaxG>,<TaxH> • '1':
<VatA>,<VatB >,<VatC>,<VatD>,<VatE>,<VatF>,<VatG>,<VatH> • '2':
<qKLN>,<sPROD>,<sNDB>,<qNDB>,<sOTS>, <qOTS>,<sVD>,<qVD>,<sZSTR>,<qZSTR> • '3':
<sPYForeign>,<sPYLocal>,<sVV>,<qVV>,<sIZ>,<qIZ>,<sVValt >,<qVValt>,<sIZalt>,<qIZalt> • '4':
<sPY0>,<sPY1>,<sPY2>,<sPY3>,<sPY4>,<sPY5> • '5': <StrA>, <StrB>,<StrC>,<StrD>,<StrE>,<StrF>,<StrG>,<StrH>
• '6': <VatStrA>,<VatStrB>,<VatStrC>,<VatStrD>,<VatStrE >,<VatStrF>,<VatStrG>,<VatStrH> • '7':
<sPY0Str>,<sPY1Str>,<sPY2Str>,<sPY3Str>,<sPY4Str>,<sPY5Str>,<sPYForeignStr>,<sPYLocalStr> •
ÿÿÿ ÿÿÿÿÿÿ in ÿÿÿÿÿÿÿÿÿÿÿÿ: <ErrCode>

• ErrCode - One byte error code.


O 'F' - Read error. • TaxX -
Amount of turnover per tax group X. 12 bytes with sign. • StrX -
Amount CANCELED turnover by tax group X. 12 bytes with sign. • VatX -
Amount of VAT by tax group X. 12 bytes with sign. • VatStrX- Reversal of
VAT by tax group X. 12 bytes with sign. • sPYX - Payment amount X. 12
bytes with sign. • sPYXStr- Reversal on payment X. 12 bytes with sign. •
qKLN - Number of clients. 4 bytes. • sPROD - Sales amount. 12 bytes with
sign. • sNDB - Allowance amount. 12 bytes with sign. • qNDB - Number of
allowances. 4 bytes. • sOTS - Amount of discounts. 12 bytes with sign. •
qOTS - Number of discounts. 4 bytes. • sVD - Sum of inputs. 12 bytes with
sign. • qVD - Number of inputs. 4 bytes. • sZSTR - Amount canceled
(canceled vouchers). 12 bytes with sign. • qZSTR - Number of canceled
vouchers. 4 bytes. • sPYForeign - Amount paid in alternate currency. 12
bytes with sign. • sPYLocal - Amount paid in base currency. 12 bytes with
sign. • sPYForeignStr - Reversal amount paid in alternate currency. 12 bytes
with sign. • sPYLocalStr - Reversal amount paid in base currency. 12 bytes
with sign.

17
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

• sVV - Amount of service paid. 12 bytes with sign. • qVV - Number

of service entries. 4 bytes. • sIZ - Amount of service output. 12

bytes with sign. • qIZ - Number of service outputs. 4 bytes. • sVValt

- Amount of service paid in alternate currency. 12 bytes with sign.

• qVValt - Number of services deposited in alternate currency. 4 bytes. • sIZalt Amount of service in

alternate currency. 12 bytes with sign. • qIZalt Number of services performed in alternate currency. 4

bytes.

42h (66) ASSIGNMENT OF INTERVAL ACCOUNT NUMBERS

Data area: Answer: [Start,End]


[Start,End,Current]
Start Sets the initial value of the interval. Integer up to 10 digits. Sets the
End final value of the interval. Integer up to 10 digits.
Current The current value of the invoice counter. Integer with 10 digits.

Start must be less than or equal to End. If the command is successfully executed, the current invoice number becomes
Start. If the data area is empty, the FI returns the current interval and counter.

The command is valid if: - It


was not executed after putting the printer into operation. - RAM
reset has been performed, due to which the information about the current counter and the allowable interval is lost. - With
the increase of the invoice counter, it has gone beyond the allowable interval. A new interval must be set.

44h (68) NUMBER OF FREE FLIGHTS IN FP

Data area: [<Option>]


Answer: Command response - depends on Option: -No parameter:
<Logical>, <Physical>
-'R' : <IsOld>, <ZRepOld>, <MaxZrep>, <LastFDocOld>
-In case of execution error: <ErrCode>

Logical The number of logical places for fiscal records / 4 bytes /.


Physical Not used. Repeats the previous entry.
Returns the number of free blocks in the FI provided for the recording of daily financial statements with reset.
Optional parameters:
• Option - Type of data requested.
O No parameter - Number of free fields in the fiscal memory.
O 'R' - Daily report card information. It is used in case the FU worked before the adoption of
H18-2018, and was finalized without changing the FP.
• ErrCode - One byte error code.
O 'F' - Read error.
• Logical - Number of logical locations for fiscal records.
• Physical - Not used. Repeats the previous Logical entry.
• IsOld - A flag showing work with the old format of daily reports. '0' -
O No old format reports. '1' - There are reports from the old
O format.
• ZRepOld - Number of old daily reports. Number 0 - 1825.
• MaxZrep - Fiscal memory capacity for storing daily reports. Number 1073 - 1825.
•LastFDocOld - Number of the last fiscal document in the period of work with the old format of
daily reports. Number 0 - 9999999.

45h (69) DAILY FINANCIAL STATEMENT

Data area: [<Option>]


Answer: Closure, FM_Total, TotA, TotB, TotC, TotD, TotE, TotF, TotG, TotH Option Optional
parameter controlling the type of report generated: '0' Z-report is printed. The printout
ends with the inscription "FISCAL VOUCHER". '2' A daily financial report is made
without resetting (ie no entry is made in the FI and the registers are reset). The printout ends with the text
"OFFICIAL VOUCHER".
Closure Fiscal record number - 4 bytes.
FM_Total The sum of all sales - 12 bytes with a sign
TotX The amounts in each of the tax groups 'A', 'B', 'C',… - 12 bytes with a sign.

18
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

46h (70) OFFICIAL IMPORT AND EXPORT OF MONEY

Data area: [<Amount>]


Answer: ExitCode,CashSum,ServIn,ServOut

Amount The registration amount (up to 10 significant digits). Depending on the sign of the number, it is interpreted as
import or export.

ExitCode 'P' The request has been executed. If the requested amount is non-zero, the FI shall print an official receipt for registration of
the operation.
'F' Request denied. This is done if: • The
cash flow is less than the requested official export. • Has an
open fiscal or business voucher.
CashSum Cash. In addition to this command, the amount increases with each cash payment.
ServIn The sum of all Business Import commands.
ServOut The sum of all Business Export commands.
Changes the contents of the cash register. Depending on the sign of the indicated amount, it is accumulated in the register for
official import or export. The information is not recorded in the FP and is available until the end of the day. It is printed at command 69
(45h) and when triggering a daily report without resetting by FU. Upon successful execution of the parameter command, a pulse is
generated to open the drawer, if this is enabled by subcommand 'X' of command 43.
47h (71) RECEIPT OF DIAGNOSTIC INFORMATION
Data area: [<Type>]
Answer (1): [ErrCode]
Answer (2): ErrCode, <<Synchronized>, <Minutes>, <NapSellXD>, <NapSellChN>, <SellForSend>,
<SellErrDocNumber>,<SellErrCnt>,<SellErrCode>,<ZChN>,<ZForSend>,<ZErrDocNumber>,
<ZErrCnt>,<ZErrCode>,<NapLastSentDate>,<NapLastErr>]
ÿÿÿÿÿÿÿ (3): ErrCode[,<SIM>,<IMSI>,<isReg>,<Operator>,<Signal>]
Answer (4): ErrCode, <DeviceID>, <VolumeSize>, <ValidBlocks>, <BlockSize>

Optional parameters: •
Type
o No parameter - Print diagnostic information. o '0' - Print
diagnostic information. The printed receipt contains: the date and version of the software, the firmware
checksum and the current date and time Answer (1)
o '1' - Test print - GPRS. o '5' - Answer (1)
Print information about the tax terminal. o '6' - Answer (1)
Receiving information about the tax terminal. o '7' - Receive Answer (2)
modem information. o '8' - Flash memory information. • Answer (3)
ErrCode - One byte error code. o 'P' - Command executed Answer (4)
successfully. o 'F' - Error.

• <Synhronized> - Status of the tax terminal (DT). One byte with a value of '1' or '0'. o '1' - DT is
synchronized with NRA. o '0' - DT is in the process of synchronization. • <Minutes> =
""> - Minutes to the next attempt to synchronize number (0 - 120). With Synchronized
DT (Synchronized = 1), it is always 0. • <NapSellXD> - Date and time of the last NRA-approved sales document. String in
the format "DD-MM

YY hh:mm:ss".
• <NapSellChN> - Number of the last sales document confirmed by the NRA. •
<SellForSend> - Number of documents to be sent (the number includes all documents issued after the last sales
document confirmed by the NRA, which have not yet been processed by DT).
• <SellErrDocNumber> - Number of the sales document to which the NRA server responded with an error. • <SellErrCnt>
- Number of attempts to send the sales document number SellErrDocNumber ending in

the same error from the NRA server. •


<SellErrCode> - Error code from the NRA server for document number SellErrDocNumber. •
<ZChN> - Number of the last daily Z report sent to the NRA. • <ZForSend> - Number of daily Z
reports waiting to be sent. • <ZErrDocNumber> - Number of daily Z report, when sent to which
the NRA server responded with an error. • <ZErrCnt> - Number of attempts to send a daily report with the number
ZErrDocNumber, which ended with the same error from the NRA server. • <ZErrCode> - Error code from the NRA
server for document number ZErrDocNumber. • <NapLastSentDate> - Date and time of the last connection with the NRA. •
<NapLastErr> - Status of the last connection with NRA (integer with sign). 0 - the connection was successful. • <SIM>
- SIM card status number (0-1). 1 - ready to work. • <IMSI> - IMSI SIM card number ascii string. To be filled in after the
modem has successfully initialized the SIM

the map.
• <isReg> - Registration status number (0-1). 1 - the modem is registered in the mobile network. •
<Operator> - Mobile operator name ascii string. • <Signal> - Signal level in percentage number (1-100).

19
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

• <DeviceID> - ID of the chip.

• <VolumeSize> - Memory size. • <ValidBlocks>


- Number of blocks. • <BlockSize> - Size of
one block

49h (73) FP REPORT BY BLOCK NUMBER

Data area: [<Start>, <End>]


Answer: No data

Start Number of the starting block. 4 bytes.


End End block number. 4 bytes.
This command causes a complete FP report to be printed from one number to another. If there is no input data, the entire period of
operation is accepted.

4Ah (74) OBTAINING STATUS

Data area: [Option]


Answer: <S0><S1><S2><S3><S4><S5>

Option One byte with the following


meanings: W: First waits for all FU buffers to be printed.
X: Don't wait for FU.
Sn Byte status N.

4Ch (76) STATUS OF THE FISCAL TRANSACTION

Data area: [Option]


Answer: Open,Items,Amount[,Tender]

Option = 'T'. If this parameter is specified, the command will return information about the current status of the account
currently due from the customer.
Open One byte, which is '1' if there is an open fiscal or service receipt (which can be understood exactly by the status
bits), and '0' if there is no open receipt.
Items The number of sales registered on the current or last fiscal receipt. 4 bytes.
Amount The amount of the last fiscal receipt - 9 bytes with a sign.
Tender The amount paid on the next or last receipt. 9 bytes with sign.
This command allows the PC application to establish the status and, if necessary, to restore and complete fiscal
operation interrupted by an emergency and untimely, for example when the power supply is switched off.

4Fh (79) SUMMARY OF THE FIU BY DATE

Data area: Answer: <Start>[,<End>]


No data

Start Start date - 6 bytes (DDMMYY) End


End date - 6 bytes (DDMMYY)

The command leads to the calculation and printing of an abbreviated FP


report. If the second parameter is missing, the command generates a monthly or annual report. The syntax in this
Start case is: Month - 4 bytes (MMYY) for a monthly report. Year - 2 bytes (YY) for annual report.
Start

50H (80) SOUND SIGNAL

Data area: [<Hz>, <mSec>]


Answer: No data

The command is used to issue a series of tones with a set frequency and duration. If there is no
input, an audible signal with a frequency of 2 kHz and a duration of 300 ms is output. If the input
data are of the type: <Hz>, <mSec> , where Hz and mSec are integers, then an audible signal is
issued with frequency Hz hertz (between 100 and 5000) and duration mSec
milliseconds (m / y 50 and 2000).

53h (83) ESTABLISHMENT OF DECIMATES, CURRENCY AND TAX RATES

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


Answer: Multiplier,Decimals,Currency_name,EnabledT,TaxA,TaxB,TaxC,TaxD,…

Multiplier Multiplier - between 0 and 3 and shows the power of 10 before multiplying by the input or output number. IN
is currently disabled and not in use. This is
Decimals a byte with a value between 0 and 2 and shows where to put the decimal point. The name of the currency.
Currency Up to 3 bytes. 8 bytes with a possible value of '0' or '1', determining whether the relevant tax group is
EnabledT prohibited ('0') or permitted ('1'). The value of tax rates. If nothing is set in the data area, the FI returns the
currently valid values. If one of the parameters must be specified, then the others must be set. The establishment
TaxX of new tax rates is allowed only before the issuance of the first customer fiscal receipt for the day. Prior to
fiscalization, command data is stored only in RAM and can be changed indefinitely

times.

20
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

54h (84) BARCODE PRINT Data area:


<Type>; <Data>
or
<Type>,<Data>
Answer: <ErrorCode>

If the input parameters are separated by commas, a text with the contents of the barcode is printed. The height of the barcode is set with
command 43, option 'B' (number from 24 to 240). Mandatory parameters:

• Type - Barcode type o '1' -


EAN8, o '2' - EAN13k
o '3' - Code 128.

• Data - Barcode data. Depending on the type of barcode.


o EAN8 - 7 digits. The checksum (8 digits) is calculated by the device, o EAN13 - 12 digits. The
checksum (12 digits) is calculated by the device, o Code128 - Up to 30 characters. Response
parameters: • ErrCode - One byte error code. o 'P' - Successful command execution. o 'F' - Command
failed to execute.

55H (85) PROGRAMMING NAMES OF PAYMENTS

Data area: Option [, Name]


Answer: Result|Name

Option: 'N' Payment 1


'C' Payment 2
'D' Payment 3
'I' Payment 4
'J' Payment 5
Name Name of the respective payment type (up to 10 characters). If not specified, returns the current name.
Result One byte: 'P' No
error.
'F' The name is more than 10 bytes.

The command sets the comment text, which is printed in front of the data from the additional payment types (command 53).
It is allowed only before the issuance of the first customer fiscal voucher for the day. Only 10
payment name symbols are accepted, the rest are truncated.

56H (86) READING THE DATE OF THE LAST FISCAL RECORD

Data area: [<Option> [, <Number>]]


Answer: Date or
DateTime [, RegNumber] or
Cnt or
F
Option Optional parameter If
missing, returns the date of the last entry in the FP.
'T' - Returns the time of the last recording.
'R' - Read registration record.
'D' - Read deregistration record.

Number Optional parameter only for options 'R' and 'D'. Serial number of the registration / deregistration record decimal number 1 - 10. If
missing, the number of registrations / deregistrations so far is returned.

Date The date is in the format: DD-MM-YYYY DateTime Date


and time in the format: DD-MM-YYYY hh: mm: ss RegNumber Only for option
'R' - registration number of the FI returned by the NRA.
Cnt Only for option 'R' and 'D' without <Number> number of registrations / deregistrations made so far.
F No data available.

57H (87) PROGRAMMING NAME OF DEPARTMENT

Data area: Answer: <Dept>,<TaxGr>,<Line1>[<LF><Line2>]


No data

Dept Department number. Integer from 1 to 9. Tax group


TaxGr associated with the department. Name or explanatory
Line1 text for the department. Up to 22 characters. Divider. One symbol -
LF ASCII code 10. Name or explanatory text for the department - second
Line2 line. Optional parameter - up to 22 characters.

The command can be executed only if no fiscal vouchers have been issued for the department since the last Z-report. After the RAM reset, the
department names are the default. The programmed name is printed in a daily financial report if the FI works with trustees.

21
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

58H (88) RECEIVING DATA ON ACCRUED DEPARTMENT AMOUNTS

Data area: Answer: <Dept>[,<StornoType>]


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

Dept Department / Trustee Number. Integer from 1 to 9. At a value of 10, the department returns the data on sales made
without specifying a department. In this case, the tax group is missing.
StornoType - Reversal type.
o '1' - Revocation / Complaint Revocation.
o '2' - Reversal of operator error. o '3' -
Reversal of reduction of the tax base.
ErrCode One byte with possible values:
'P' Command executed successfully. Data follows.
'F' Error reading last entry.
TaxGr Tax group of the department - one symbol with value (A - I).
RecSales Number of sales for the department in the voucher. If the optional StornoType parameter is specified, the number is more
instructions type reversal. Format with three decimal places (BVXX).
RecSum Accumulated amount for the current or last fiscal receipt for the respective department. If specified
the optional parameter for StornoType amount is according to the specified reversal type. Two decimal place
format (BVX).
TotSales Number of sales for the department per day. If the optional StornoType parameter is specified, the number is more
instructions type reversal. Format with three decimal places
TotSum (BVXX). Accumulated amount for the day for the respective department. Floating number with
Line1 two decimal places. Name or explanatory text for the department.
LF "Line feed" byte with value 0x0A.
Line2 Explanatory text for the department.

59h (89) PROGRAMMING OF THE PRODUCTION TEST AREA

Data area: <Test> Answer:


Result,Free
Test One byte. If it is 'T', an entry is made in the FP, otherwise there is no entry, only the parameters are returned.
Result One byte:
= P (50h) No error.
= F (46h) There is an error.
Free The number of other free blocks to record such blocks. 4 bytes.

This command is executed to test the FP. Test


unit for recording in FP: 55h, AAh, 33h, CCh, 5Ah, A5h, 3Ch, C3h.

5Ah (90) READING DIAGNOSTIC INFORMATION

Data area: <Calc>


Answer: <Name> <FwRev> <Sp> <FwDate> <Sp> <FwTime>, <Chk>, <Sw>, <FM>, <Ser>
Calc It has a value of '1' - a checksum of the code memory (firmware) is calculated, otherwise 'FFFF' is returned. 1 byte.

Name Name of FU.


FwRev Software Version. 4 bytes. Interval. 1 byte.
Sp
FwDate The date of the DDMmmYY software. 7 bytes.
Sp Interval. 1 byte.
FwTime HHMM Software Time. 4 bytes.
Chk EPROM checksum. 4 bytes string in hexadecimal. For example, if the checksum is 214Ah, it will be transmitted 32h,
31h, 34h, 41h. Not supported by FI. Individual device number - 8 bytes. Fiscal module number - 8 bytes.
Sw
To be

FM

5Ch (92) SEPARATION ON A DISTRIBUTION LINE

Data area: Type


Answer: No data

Type One byte with a valid value:


'1' Fill with symbol '-'. '2' Fill in
with the characters '-' and '' in sequence. '3' Fill with
symbol '='.
The FU prints a dividing line of the specified type across the entire width of the paper. A
fiscal or business receipt must be open.

22
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

5Eh (94) FULL REPORT FP BY DATE

Data area: <Start> [, <End>]


Answer: No data
Start The start date of the fiscal record. 6 bytes (DDMMYY).
End Fiscal Record End Date. 6 bytes (DDMMYY). This
command prints a full FP report for the period between two dates. If
the second parameter is missing, the command generates a monthly or annual report. The syntax in this case
Start is: Month - 4 bytes (MMYY) for a monthly report. Year - 2 bytes (YY) for annual report.
Start

5Fh (95) SUMMARY REPORT OF FP BY BLOCKS


Data area: <Start>, <End>
Answer: No data
Start Initial number of the fiscal record.
End Fiscal record end number.
The command leads to the calculation and printing of an abbreviated FP report.
61h (97) READING OF ESTABLISHED TAX RATES
Data area: No data
Answer: TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH
TaxA Tax rate A
TaxB Tax rate B
TaxC Tax rate B
TaxD Tax rate D
TaxE Tax rate E
TaxF Tax rate E
TaxG Tax rate G
TaxH Tax rate H
62h (98) ESTABLISHMENT OF THE UIC
Data area: <Text> [, <Name>]
Answer: Result
Text These are up to 14 bytes containing UIC as text.
Name This is the commentary text before the UIC. The default is "UIC".
Result 'P' No mistake.
'F' Error.
63h (99) READING OF THE UIC
Data area: No data
Answer: Text,Name
Text UIC as text.
Name The commentary text before the UIC.

64h (100) DISPLAY TEXT


Data area: Text
Answer: No data
Text Text up to 40 characters to be sent to the display. If it is necessary to transmit ASCII characters less than
20h (control sequences), they are increased by 40h and preceded by 10h.
Example: to transmit 1Bh, 4Bh, 00h in the data field is written 10h, 5Bh, 4Bh, 10h, 40h.
65h (101) SET OPERATOR PASSWORD

Data area: <OpCode>, <OldPwd>, <NewPwd>


Answer: No data
OpCode Operator Code. From 1 to 30.
OldPwd Old password (1 to 8 digits).
NewPwd New password (1 to 8 digits).
Sets one of the thirty operator passwords. The password will be requested when opening a fiscal receipt.
After initializing or resetting the RAM, the passwords are the same as the operator number.
66h (102) ASSIGNING AN OPERATOR

Data area: <OpCode>, <Pwd>, <OpName>


Answer: No data

OpCode Operator Code. From 1 to 30.


Pwd Password (1 to 8 digits).
OpName Operator name (up to 10 characters).
Specifies one of the thirty operator names. The number and the name of the operator are printed at the beginning of each
fiscal (customer) voucher. After initialization or resetting the RAM and the names of the operators are "OPERATORX". Where XX is
the operator number.

23
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

67h (103) CURRENT VOUCHER INFORMATION

Data area: No data


Answer: ErrCode[,<CanVd>,<TaxA>,<TaxB>,<TaxC>,<TaxD>,<TaxE>,<TaxF>,
<TaxG>,<TaxH>,<Inv>,<InvNum>,<Type>]
Command response:
• ErrCode - One byte error code.
O 'P' - Command executed successfully. Data follows.
O 'F' - Error reading last entry.
• CanVd - Is it possible to return (sell with a negative sign).

TaxA: Accumulated amount by tax group A TaxB:

Accumulated amount by tax group B TaxC:

Accumulated amount by tax group C TaxD:

Accumulated amount by tax group D TaxE:

Accumulated amount by tax group E TaxF:

Accumulated amount by tax group E TaxG:

Accumulated amount by tax group G TaxH:

Accumulated amount by tax group H Inv - Is the
• invoice open? '0' - No. '1' - Yes.
O
O
• InvNum - Number of the next invoice (number 10 positions).
• Type - Type of
O voucher. '0' -
O Fiscal. '1' - Reversal operator error.
O '2' - Reversal / Complaint. '3' -
O Reversal of tax reduction. basis

Provides information on the accumulated amounts by tax groups and whether it is possible to return registered goods.

69h (105) OPERATORS REPORT

Data area: No data


Answer: No data

Information on sales by operators is printed. For each operator the name, number, number of fiscal vouchers are printed,
discounts, allowances, rebates, adjustments and accumulated amounts.

6Ah (106) OPENING A DRAWER

Data area: [<mSec>]


Answer: No data
mSec Pulse length in milliseconds (5-100)

Sends an impulse to open a drawer. The parameter sets a new value of the pulse length, which is stored by the FU. If the parameter is
omitted, the last setpoint is used. After RESET the memory value is set to 15 ms.

6Bh (107) DEFINITION AND READING OF ARTICLES

Data area: <Option> [Parameters]


Answer: ErrorCode[,Data]

Option One byte specifying the type of operation requested. Depending on it, the command may or may not require
additional parameters. Possible values: 'I', 'P', 'D', 'A', 'C', 'R', 'F', 'L', 'N', 'X', 'f', 'l' , 'n', 'x'. One byte indicating
the result of the operation, meaning: • 'P The command is successful. • 'F' command failed. Command data.
ErrorCode They are described in detail below under <Option>.

Parameters

• 'I' Article information


Syntax: <I> Answer:
Total, Prog, Len Total Total
number of programmable items.
Progr Number of programmed items.
Len Maximum length of item name.

• 'P' Program an item. Syntax: <P>


<TaxGr> <PLU>, <Group>, <SPrice>, [<Replace>] <Quantity>, <Name> Tax Group ('A', 'B',
TaxGr 'C', 'D' ...) Article number (1 to 999999999) Product group (1 to 9) Unit
PLU price. Up to 8 significant digits. Optional parameter - one byte with value
Group 'A'. Changes the value of the next parameter (Quantity).
SPrice
Replace

24
Machine Translated
DATECS
by Google
Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

Quantity Number with up to 3 decimal places - the available quantity for the given item. FU does not support
quantity and returns 0.000 Name Item name. Up to 22 bytes. The command will be rejected if
there is already such an item and there are sales on it. It can change

item with zero accumulated amounts.

• 'A' Change the available quantity for an item. Syntax:


<A> <PLU>, <Quantity>
PLU Article number (1 to 999999999).
Quantity Quantity correction - a floating number with up to 3 decimal places. Positive numbers increase the
amount, negative numbers decrease it. The command is rejected if the item is not programmed.
FU does not maintain quantity and returns 0.000.

• 'D' Delete item. Syntax: <D>


<A | PLU | PLU1, PLU2> 'A' All items with
non-zero accumulated amounts are
deleted.
PLU Deletes the item with the specified number if there are no accumulated amounts.
PLU1, PLU2 Delete items within the set interval without accumulated amounts.
• 'R' Read item data. Syntax: <R>
<PLU> Answer: <'P'> <PLU>,
<TaxGr>, <Grp>, <SPrice>, <Total>, <Sold>, <Avail>, <Name> <PLU> Number of the
article. Between 1 and 999999999.
<TaxGr> Tax group. One byte.
<Grp> Commodity group. From 1 to 9.
<SPrice> Unit price. Floating number with decimal places current for FU.
<Total> Accumulated amount for the given item.
<Sold> Quantity sold. Floating number with 3 decimal places.
<Avail> Available quantity. FU does not support quantity and returns 0.000 > Item Name.
Up to 22 bytes. If an item is not found, one byte 'F' is returned.

• 'F' Returns the data for the first programmed item found.
Syntax: [<PLU>] The
returned data is as in the 'R' subcommand. If the PLU parameter is set , the search starts from it in ascending
direction, otherwise the search starts from 1.

• 'L' Returns the data for the last programmed item found.
Syntax: [<PLU>] The
returned data is as in the 'R' subcommand. If the PLU parameter is set , the search starts from it in descending
direction, otherwise the search starts from 999999999.

• 'N' Returns the data for the next programmed item found. Syntax: <N>
The returned data is as in the 'R' subcommand.

The last three subcommands are for retrieving data for all programmed items from the PC. Subcommand 'F' or 'L' is given
and then subcommand 'N' until the answer 'F' is received, which means that the last article has been read.
Items are returned sorted by number in ascending or descending direction depending on the first command given.
• 'f' Returns data for the first item found with non-zero sales. Syntax: [<PLU>]
The returned data is as in the 'R' subcommand. If the PLU parameter is
set , the search starts from it in ascending direction, otherwise the search starts from 1.

• 'l' Returns data for the last found item non-zero sales. Syntax: [l] <<PLU> The
returned data is as in the 'R' subcommand. If the PLU parameter is set ,
the search starts from it in descending direction, otherwise the search starts from 999999999.

• 'n' Returns data for the next found item non-zero sales. Syntax: The returned
data is as in the 'R' subcommand.

The last three subcommands are for retrieving data for all sales items for the day from the PC. Subcommand 'f' or 'l' is given
and then subcommand 'n' until the answer 'F' is received, which means that the last article has been read. Items are returned sorted
by number in ascending or descending direction depending on the first command given.

• 'X' Find the first free (unprogrammed) item. Syntax: <X> [<PLU>]
Answer: PLU

If the PLU parameter is set , the first free (unprogrammed) item with a number greater than or equal to
him. If not, the default is PLU = 1.

• 'x' Find the last available (unprogrammed) item.


Syntax: [X> [<PLU>] Answer:
PLU If the PLU parameter is
set , the first free (unprogrammed) item with a number less than or equal to it is returned.
If not, the default is PLU = 999999999.

25
Machine Translated
DATECS
by Google
Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

6Ch (108) EXTENDED DAILY FINANCIAL STATEMENT

Data area: Answer: [<Option>]


Closure,FM_Total,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH

The command has the same syntax as command 69 (45H), but at the beginning of the daily report a report is printed on items for
which there are sales for the day.

6Dh (109) DUPLICATE VOUCHER STAMP

Data area: Answer: <Count>


No data

Count Number of duplicate vouchers (only value 1 is accepted!).

It causes a copy of the last closed sales receipt to be printed. The copy is marked as a SERVICE VOUCHER and immediately after
the HEADER a line is printed in bold "DUPLICATE". On retry the command
will refuse to print.

6Eh (110) ADDITIONAL INFORMATION FOR THE DAY

Data area: Answer: [Type]


ErrCode[,<Cash>,<Credit>,<Debit>,<Pay4>,<Pay5>,<Pay6>,<Rsrv1>,<Rsrv2>,
<Closure>,<Receipt>]
Type - Type of information. If missing, the amounts in the answer are from
sales. o '0' - From sales. o '1' - From reversal operation.

• ErrCode - One byte error code.


O 'P' - Command executed successfully. Data follows.
O 'F' - Error reading last entry.
• Cash - Paid in cash.
• Credit - Paid with credit.
• Debit - Paid by card.
• Pay4 - Paid by the National Health Insurance Fund.
• Pay5 - Paid with a voucher.
• Pay6 - Paid with a coupon.
• Rsrv1 - Always 0.
• Rsrv1 - Always 0.
• Closure- Current (last) fiscal record (Z report number).
• Receipt- Number of the next fiscal receipt (within the Z report).

Returns information about the distribution of the amount for the day by payment method.

6Fh (111) ARTICLE REPORT


Data area: Answer: <Option>[<Start>,<End>[,<Group>]]
ErrorCode

Option Specifies the type of information to be printed. Possible values: • 'S'


Only sales items for the day are printed. The item number is printed for each item,
the tax group, the name, the quantity sold and the turnover.
• 'P' All programmed items are printed, with item number, tax group, product group, name, barcode, department
affiliation, programmed price type and unit price.
Start Starting number of the item to be included in the report. The default is 1. Last
End item number to include in the report. The default is 999999999. Number from 1 to 9. If this
Group parameter is set, only items in this group are included in the report, otherwise all groups are printed.

The items are sorted by number. In case of daily financial report with resetting, the accumulated amounts by items are reset if
apparently not specified to be preserved.

70h (112) RECEIPT OPERATOR INFORMATION

Data area: <Operator> [, <Type>]


Answer: ErrCode[,<Receipts>,<Total>,<Discount>,<Surcharge>,<Void>,<Name>[,Password]]

Mandatory parameters:
Operator - Operator number (number 1 - 30).
Optional parameters: Type

O '1' - Reversal information.
Command response:
For Type = 1: ErrCode [, <STRReceipts>, <STRTotal>, <STRReturn>, <STRError>, <STRTaxbase>, <Name> [, Password]]
• ErrCode - One byte error code.
O 'P' - Command executed successfully. Data follows.

26
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

O 'F' - Error.
• Receipts - Number of fiscal vouchers issued by the operator.
• Total - Number of sales and total accumulated amount.
• Discount - Number of discounts and total amount of discounts.
• Surcharge - Number of allowances and total amount of allowances.
• Name - The name of the operator.
• Password - Operator password. Only if a service jumper is installed.
• STRReceipts - Number of reversal vouchers issued by the operator.
• STRTotal - Number of reversals and total accumulated amount.
• STRReturn - Number of reversal return / claim and total accumulated amount of return / claim.
• STRError - Number of reversal operator error and total accumulated amount of operator error.
• STRTaxbase - Number of reversal of tax base reduction and total accumulated amount of tax reduction
basis.

The command allows to obtain the information printed when reporting operators. Amounts are returned as floating numbers
with the current number of decimal places.

71h (113) GETTING THE NUMBER OF THE LAST PRINTED DOCUMENT

Data area: No data


Answer: DocNum

DocNum Number of the last issued document (7 digits).

72h (114) INFORMATION ON FISCAL RECORD OR FISCAL PERIOD

Data area: <Closure1>, <Type> [, Closure2]


Answer: Depends on the value of Type

Optional parameters:
• Closure1-Number / start number of the fiscal memory entry. For Type 0 to 4 (number 1-1825). For Type 5 (number 1-31)
• Type - Type of information.
o '0' - Information on the active tax rates for the specified record. o '1' -
Turnover information for the specified record or period. o '2' - Information on
the net amounts for the specified record or period. o '3' - Information on the
VAT charged for the specified record or period. o '4' - Additional information for
the specified record. o '5' - Information on the specified VAT kit number. o '7' -
Reversal turnover information for the specified record or period. o '8' - Information
on the net amounts reversed for the specified record or period. o '9' - Information
on the reversed VAT for the specified record or period.

• Closure2 - Final number of a record from the fiscal memory (number 1 - 1825). Only for Type 1,2,3,7,8 and 9.
Command response:
• Type = '0': ErrorCode[,<DecRec>,<Dec>,<Enabled>,<PercA>,<PercB>,<PercC>,<PercD>,<Percÿ>,
<PercF>,<PercG>,<PercH>,<DT>]
• Type = '1': ErrorCode[, <Closure>, <Receipts>, <TotA>, <TotB>, <TotC>, <TotD>, <TotE>, <TotF>, <TotG>, <TotH>]
• Type = '2': ErrorCode[<Closure>,<Receipts>,<NetA>,<NetB>,<NetC>,<NetD>,<NetE>,<NetG>,<NetG>, <NetH>]
• Type = '3': ErrorCode[,<Closure>,<Receipts>,<TaxA>,<TaxB>,<TaxC>,<TaxD>,<TaxE>,<TaxF>,<TaxG>,<TaxH>]
• Type = '4': ErrorCode[<Closure>,<DecRec>,<ResetRec>,<KLEN,DT>]
• Type = '5': ErrorCode[<Dec>,<Enabled>,<PercA>,<PercB>,<PercC>,<PercD>,<Percÿ>,<PercF>,
<PercG>,<,PercH>,<DT>]
• Type = '7': ErrorCode[,<Closure>,<STRTotA>,<STRTotB>,<STRTotC>,<STRTotD>,<STRTotE>,
<STRTotF>,<STRTotG>,<STRTotH>]
• Type = '8': ErrorCode[<Closure>,<STRNetA>,<STRNetB>,<STRNetC>,<STRNetD>,<STRNetE>,
<STRNetG>,<STRNetG>,<STRNetH>]
• Type = '9': ErrorCode[,<Closure>,<STRTaxA>,<STRTaxB>,<STRTaxC>,<STRTaxD>,<STRTaxE>,
<STRTaxF>,<STRTaxG>,<STRTaxH>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully. Data follows.
O 'F' - Invalid record checksum. No data.
O 'E' - No such record. No data.
• Closure - Number of fiscal records for the specified period.
• DecRec - Last (active) record with tax rates.
• Dec - Number of decimal places for the specified Z-report record.
• Enabled - Allowed tax rates - 8 bytes with st-st '0' or '1', where '1' means "allowed".
• Receipts - Number of vouchers.
• PercX - Tax rate for the respective tax group in percentages.
• TotX - Turnover for the respective tax group.
• STRTotX- Reversal of the tax for the respective tax group.
• NetX - Net amount for the respective tax group.

27
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

• STRNetX- Net amount reversal for the respective tax group.


• TaxX - VAT charged for the respective tax group.
• STRTaxX- Reversal of VAT for the respective tax group.
• ResetRec- Last reset of RAM to this fiscal block.
• KLEN - KLEN number for this fiscal block. • DT - Date and
time of data in the format: DD-MM-YY hh: mm: ss.

The command returns information by tax group for an individual record or for a specified period. The periodic reference for more
a long period can take a few seconds.

73h (115) GRAPHIC LOGO PROGRAMMING

Data area: <RowNum>, <Data>


or R<RowNum>
Answer: No data
or Data

R If the 'R' symbol is present at the beginning of the data, the command returns the contents of the
corresponding graphic line in hexadecimal form. Shows the order we are programming. Number from 0 to 95.
RowNum
Data Graphic data. Set to hexadecimal, two characters for each byte of information. The length of the data is up
to 48 bytes, if they are less, they are automatically supplemented with 00.

The command allows you to define a graphic logo with up to 284x96 pixels at the user's request. His seal is
activated with command 43. To define the entire logo, the command must be executed up to 96 times, once for each line.
Note: The number of rows of the logo must be a multiple of 8.

75h (117) DAILY FINANCIAL STATEMENT WITH PRINTED DATA BY DEPARTMENT

Data area: Answer: [<Option>]


Closure,FM_Total,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH

Before the daily report, a report is printed by departments for which there are sales for the day.
Commands 69, 108, 117 and 118 with option '0' (daily financial report with reset) also reset the accumulated data by departments.

76h (118) DAILY FINANCIAL STATEMENT WITH PRINT OF DEPARTMENTS AND ARTICLES

Data area: Answer: [<Option>]


Closure,FM_Total,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH

Before the daily report, the reports by departments and articles are printed. Command 69 is left unchanged. Teams
69, 108, 117 and 118 with option '0' (daily financial report with reset) also reset the accumulated data by departments.

77h (119) WORK WITH MAPLE

Data area: <Type> [, <InpData>]


Answer: It depends on the input data

Type Maple command class. One byte with a valid value:


'N' Reading the next line of text by MAPLE.
'R' Reading data from KLEN.

Command class 'R': Reading data from KLEN.


<Flg> <DT1>, <DT2> Returns the first line of a document with date and time DT1 and sets the end of the search for a document
with date and time DT2 (inclusive). There is filtering of the documents that are selected, depending on
the Flg argument. The following lines are drawn by sending a class 'N' command. Input argument format:
A string of characters that specifies the type of document to choose to read. Possible characters in the
Flg string: All types of documents.

'A'

DT1 Start date and time of the report in DDMMYY format [hhmmss]. If the time is missed, it means "000000",
ie 00:00:00. End date and time of the report in DDMMYY format [hhmmss]. If the hour is missed, it means
DT2 "235959", ie 23:59:59.

Return one of the answers below: P, Text There is


another text line in MAPLE, its content is in Text. The read text is always in code table 1251, regardless of whether the DOS
code table mode is selected from the keys. The code table is important for the correct calculation of the SHA-1
checksum. There is no more data in KLEN.
F

The way of work is the following:


One of the previous commands is given. If the answer is 'F', then there is no such data in KLEN. Otherwise
sends a class 'N' command until a 'F' response is returned (no more data). Thus, the desired part of MAPLE can be downloaded line by
line as text.

28
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

Q<Addr>,<Bytes> Direct reading of KLEN data in "raw" form. The command returns 2 * Bytes characters representing Bytes
bytes from MAPLE, starting at Addr. Addr is set to hexadecimal and Bytes is set to decimal. The data is
returned in hexadecimal. No additional data after this symbol. Used in combination with some Class 'N'
the same as for the initial command
commands:
class'Class'
'R' andRare
commands.
describedUsed
above.
to read the next line of text from KLEN. The possible answers are

ATTENTION! Sending this command without a previous 'R' class, setting the scope of the report, can lead to
reading meaningless data!

7Ch (124) READING A MAPLE

Data area: Answer: <Type>[,<InpData>]


depending on the parameters

Parameters:
• Type - Type of the requested information.
O 'D' - Search in MAPLE by date and time. Answer (1).
O 'Z' - Search in KLEN by Z report number. Answer (1).
O 'I' - Information about KLEN. Answer (2).
• InpData - Command data depending on the field Type: Type D:
O <DocType>, <BegDate>, <EndDate> Type Z: <DocType>,
O <BegZ>, <EndZ> Type I: No input. Description of the
O fields in InpData: DocType - Type of searched
documents. '0' - All. '1' - Fiscal vouchers (all fiscal vouchers, sale, reversal,
O invoice, reversal invoice (kr. Notice), daily financial report (Z
report)). '2' - Daily Z report. '3' - Fig. input / output. '4' -
Daily X report. '5' - Service vouchers (all but those listed in option 1). '6' - Invoice. '7' - Reversal of fiscal
vouchers. '8' - Reversal invoice (cr. Notice).

O BegDate - Start date (date and time) for searching documents. 6/12 digits (DDMMYY or DDMMYYhhmmss
format).
O BegDate - End date (date and time) for searching documents. 6/12 digits (DDMMYY or DDMMYYhhmmss
format).
O BegZ - Number of Z report to start the search range. Number (1..1825).
O EndZ - The number of the Z report for the end of the search range. Number (1..1825).
Answer (1): <ErrCode>, <FirstDoc>, <LastDoc>
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• FirstDoc - Number of the first document found (number 0 - 9999999).
• LastDoc - Number of the last found document (number 0 - 9999999); Answer
(2): <ErrCode> [, <isValid>, <isCurrent>, <IDnumber>, <Number>, <DateTime>, <Serial>, <fromZ>, <toZ>,
<fromDoc>,<toDoc>,<Size>,<Used>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• isValid - Flag SD card contains valid MAPLE.
O '1' - There is a valid MAPLE on the
O map. '0' - No valid MAPLE is recognized on the card.
• isCurrent - Flag KLEN on SD card is the current KLEN on FU.
O '1' - MAPLE is current for the device.
O '0' - MAPLE is "Old" or from another device.
• IDnumber - Identification number of the device from which the MAPLE is. String 8 characters (format
DTXXXXXX, 2 letters + 6 digits).
• Number - Maple serial number for the device. Number (0..100).
• DateTime - Date and time of maple activation. String 19 characters format "DD.MM.YYYY hh: mm: ss".
• Serial - The serial number of the SD card. 8 characters asciihex (example AC536E00).
• fromZ - First Z report saved on this MAPLE. Number (1..1825). toZ - Last Z report
• recorded on this MAPLE. Number (1..1825). fromDoc - First document saved in
• MAPLE. toDoc - Last document saved in MAPLE.

• Size - Size of MAPLE (SD card) in MBytes. Number up to 4000.


• Used - Used bytes in MAPLE (SD card) in MBytes. Number up to 4000.

29
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

7Dh (125) READING DATA FROM DOCUMENT BY NUMBER


Data area: Answer: <Option>[,<DocNum>,<RecType>[,<ToNumber>]]
Mandatory depending on the parameters
parameters: Option - Type
• of requested information o '0' -
Preparation of the document for reading. Answer (1) o '1' - Read the next line of the document.
Answer (2) o '2' - Read the next line with structured information from the document. Answer
o '3' - Print
(3)
the document in text form on paper (copy of the document). Answer (1) o '4' - Read theof text
next/ line
structured data. Answer (4) o '5' - Reading data from fiscal vouchers according to appendix 34.
Answer (5)

• DocNum - Document number to read.


• RecType - Document type. '0'
O - All. '1' - Fiscal
O vouchers (all fiscal vouchers, sale, reversal, invoice, reversal invoice-credit notice). '2' - Daily Z report.
'3' - Fig. input / output. '4' - Daily X report. '5' - Service vouchers (all but those listed in option 1). '6' - Invoice. '7' -
O Reversal of fiscal vouchers. '8' - Reversal invoice (cr. Notice).
O
O
O
O
O
O
Optional parameters:
• ToNumber - Voucher number to search for if the requested voucher is of a type other than the
instructions. Answer 1: <ErrCode>, <DocNumber>, <Date>, <Type>, <Znumber> ErrCode - One byte error code.

O 'P' - Command executed successfully.
O 'F' - Error.
• DocNumber - Document number.
• Date - Date and time of the document.
• Type - The type of
O document. '1' - Fiscal receipt
O for sale. '2' - Daily Z report.
O '3' - Fig. introduced. '4' - Fig.
O derived. '5' - Daily X report.
O '6' - Official voucher. '7' -
O Invoice. '8' - Reversal of a
O fiscal receipt. '9' - Reversal
O invoice (kr. Notice).
O
• Znumber - Z report number.
Answer 2: <ErrCode> [, <Text>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Text - One text line of the document (42 ascii characters).
Answer 3: <ErrCode> [, <Data>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Data - A line of binary data from the document encoded in base64 (128 characters).
Answer 4: <ErrCode> [, <Type>, <Data>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Type - Type of data in the response (Data field).
O '1' - Text line (Data - 42 ascii characters).
O '2' - Data line (Data - base64 128 characters).
• Data - One line of binary data from the document encoded in base64 (128 characters), or one line of text from
document (42 ascii characters), depending on the Type field.
Answer 5: depending on the type of operation performed in the
voucher - Opening a fiscal voucher: <ErrCode> [, 3, <bonType>, <nBon>, <nSale>, <decPoint>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• bonType - Type of fiscal receipt.
O '1' - Fiscal receipt for sale. '7'
O - Invoice. '8' - Reversal of a
O fiscal receipt.

30
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

O '9' - Reversal invoice (kr. Notice).


• nSale - LPG of the fiscal receipt. The field contains 21 LPG characters (XXXXXXXX-XXXX-XXXXXXX) if
the voucher is issued by sales management software. Otherwise the field is empty.
• decPoint - Position of the decimal point for amounts and prices in the voucher. A number with a value of 2 or 0 (0 for
the case of working with integers).
- Voucher sale description: [EErrCode> [, 4, <Price>, <Qty>, <Suma>, <Vat>, <Name>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Price - Integer 0..99999999, the position depends on the decimal position used in the voucher.
• Qty - Quantity (integer 0..999999999), the decimal position for quantity is always 3!
• Suma - Sales amount (0..99999999999), the decimal position depends on the decimal used
position in the voucher.
• Vat - Sales tax group number (1..8).
• Name - Name of the sale (product / service). -
Description of discount / surcharge: <ErrCode> [, 5, <Suma>, <Name>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Suma - Amount of the discount / surcharge (integer with a sign -99999999 .. 999999999), the decimal position is in
depending on the decimal position used in the voucher.
• Name - Name of the discount / surcharge. -
Total amount of the voucher (total of the voucher): <ErrCode> [, 6, <Suma>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• Suma - - Total amount of the voucher (number from 0..99999999999), the decimal position depends on the used
decimal position in the voucher.
- Description of reversal voucher data: <ErrCode> [, 7, <strDocNumber>, <strType>, <strToInvoice>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• strDocNumber - Number of the document on which the reversal is made (number from
• 1..9999999). strType - Reversal type: '0' - Operator error. '1' - Return / Complaint. '2' - Reduction
O of the tax base. strToInvoice - Invoice number on which the reversal is made (number
O from 1 .. 9999999999), only in case of reversal
O

by invoice. Otherwise the field is empty. - Invoice


data description: <ErrCode> [, 8, <invNumber>, <EIK>, <EIKType>]
• ErrCode - One byte error code.
O 'P' - Command executed successfully.
O 'F' - Error.
• invNumber - Invoice number (1..9999999999).
• EIK - UIC of the recipient (string up to 14 characters)
• EIKType - Type of UIC. '0'
O - Bulstat '1' -
O PIN '2' - LNC '3'
O - Sl. number
O

8Ch (140) STORAGE OF THE CLIENT'S DATA IN THE MEMORY OF FU


Data area: [<Option>]< Data>
Answer: depends on Option:
Option '#', '~', '@':
<EIK><Tab><EIKType><Tab><Receiver><Tab><Client><Tab><TaxNo><Tab><Address_1><Tab><Address_2>
ÿÿÿ <ErrCode>
Option '$': <Seller>
Option '+', '-', '^', '!' :<ErrCode>
Option:
• '+' - Record / change UIC customer data. The device can store up to 1080 records with customer data. - '- Deletion of UIC
• customer data. '#' - Read IEC customer data.

'^'
• - Record data for seller's name. Vendor field when issuing invoices.
• '$' - Read the seller's name field.
• '~'
- Read data for the first client stored in the device memory. '@' - Read
• data for the next client stored in the device's memory. '!' - Erase the data for all
• clients stored in the memory of the device.
Optional parameters: Data
• - Command data. Depending on the Option field.

31
Machine Translated
DATECS
by Google
Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

O Option '+': <EIK><Tab><EIKType><Tab><Receiver><Tab><Client><Tab><TaxNo><Tab><Address_1>


<Tab><Address_2> Option '-', '#': <EIK> Option '^': <Seller> Option '$', '~', '@', '!': ÿÿÿÿ ÿÿÿÿÿ.
O
O
O
• ErrCode - One byte error code.
O 'P' - Successful execution.
O 'F' - Error.
• EIK - UIC number of the buyer. Between 9 and 13 characters.
• EIKType. UIC type. 0 -
O UIC Bulstat. 1 -
O PIN. 2 - LNC. 3 -
O Sl. number.
O
• Tab - Tab (09H). Delimiter between parameters.
• Seller - Seller's name. Up to 36 characters.
• Receiver - Name of the recipient. Up to 36 characters.
• Client - Name of the buyer. Up to 36 characters.
• TaxNo - VAT number of the buyer. Between 10 and 14 characters.
• Address_1 - Address of the buyer first line. Up to 36 characters.
• Address_2 - Address of the buyer second line. Up to 36 characters.

FFH (255) BARCODE PROGRAMMING Data field: Record data for


article:
<0x86><0x30><0x3B><PLU>;<Name>;<TaxGr>;<BAR>;<SPrice>;<TPrice>;<Dep>;<Group>;<0x30>;
Reading data for article: <0x84> <0x30> <0x3B> <PLU>; Read the
first programmed item, starting from the submitted PLU code. <0x89> <0x30> <0x3B>
<PLU>; <ErrorCode> [<ErrNumber>]
Answer:
or
<0x30>; <PLU>; <Name>; <TaxGr>; <BAR>; <SPrice>; <TPrice>; <Dep>; <Group>; <0x30>;
Mandatory parameters:
• PLU - Nomenclature code of the item up to 15 digits.
• Name - The name of the item up to 22 characters.
• TaxGr - Tax group (1 to 8). 1 for tax group A, 2-B, etc.
• BAR - Barcode of the item up to 13 digits.
• SPrice - Unit price. Up to 9 digits.
• TPrice - Price type (0,1, 2). 0 -
O Sale only with programmed price; 1 - Sale
O with programmed and free price; 2 - Sale with a
O price less than or equal to the programmed price.
• Dep - Department.
• Group - Commodity group (1 to
• 9). 0x30 - One byte of value - Hex (0x30). 0x3B
• - One byte of value - Hex (0x3B). 0x84 - One
• byte of value - Hex (0x84). 0x86 - One byte of
• value - Hex (0x86). 0x89 - One byte of value -
• Hex (0x89).
Response parameters;
• ErrCode - One byte error code.
O 'D' - Successful command execution.
O 'E' - Error. The following is 4 bytes of error code
• ErrNumber - Four bytes with error code. Significant are the last 2. o XX01 -
Wrong command. o XX01 - Wrong command. o XX02 - Wrong command. Wrong
field Const. o XX03 - Wrong field for nomenclature code. o XX04 - Wrong data field
format. o XX05 - Data field value error. o XX06 - Item cannot be added. o XX07 -
System error. 0x30 - One byte of value - Hex (0x30).

• Name - The name of the article.


• TaxGr - Tax group.
• BAR - Barcode of the item.
• SPrice - Unit price.
• TPrice - Price type Dep -
• Department.
• Group - Stock group.

32
Machine Translated by Google
DATECS Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

APPLICATION 1

A SET OF SIGNS OF FU

_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F

0_ 0@ P pARa rARa p

1_ ! 1 AQ a qBCb cbcb s


2_ 2BRb r In T in tWTw t

3_ # 3CS c sGUg uGUg u


4_ $ 4DTd tDFdfDFdf

5_ % 5 EU and uÿÿÿ xEXe x

6_ & 6 VF f vÿÿÿÿÿÿÿÿ


7_ 7 GW gw C H c h ÿÿÿ h

8_ ( 8HXh x I W and W I W and W

9_ ) 9 IY i y Y Shch and Shch Y Shch and shch

*
A_ :
JZ j zKbkbKbk uh

B_ +;K[ k {L Y l y L Y l y

C_ , <L\ l |Mbmmmmm

D_ -
=M]m}NEneNEn e

^
AND_ . >N n ~ O Yu O Yu O Yu O Yu

F_ / ?O _ O PInIPIn I

33
Machine Translated
DATECS
by Google
Software interface for cash registers DP-05, DP-25, DP-35, WP-50, DP-150 Version 2.04GB

APPLICATION 2
LIST OF FISCAL COMMANDS - BY INCREASING NUMBER
HEX FUNCTION HEX FUNCTION
(DEC) (DEC)
21h (33) Clear display 23h (35) 66h (102) Set operator name 67h (103)
Display text on the bottom line of the display 26h (38) Current voucher information 69h (105)
Open voucher 27h (39) Close voucher Operator report 6Ah (106) Open drawer
6Bh (107) Define and report items 6Ch
2Ah (42) Print free text in a voucher (108) Extended daily financial report (with a
2Bh (43) Set HEADER and FOOTER and print options printout of art.).
2Ch (44) Move the paper 6Dh (109) Duplicate voucher
2Eh (46) Opening a reversal fiscal (customer) voucher printing 6Eh (110) Additional information for
2Fh (47) Display text on the bottom line of the display the day 6Fh (111) Article report 70h (112)
30h (48) Open fiscal (customer) voucher Obtain operator information
31h (49) Registration of sales 71h (113) Receive the number of the last printed document
32h (50) Tax rates set during the respective period 72h (114) Information on fiscal record or fiscal period
33h (51) Subtotal 73h (115) Graphic logo programming 75h
34h (52) Registration of sales and display 35h (53) (117) Daily financial report with printing of data by departments 76h
Calculation of collection (Total) 36h (54) Printing of fiscal (118) Daily financial report with printing of department. and art. 77h
free text 37h (55) Execution of pinpad commands 38h (56) (119) Working with MAPLE - reading, printing and information 7Ch
Closing of fiscal receipt 39h (57 ) Print customer information. (124) Reading MAPLE
7D (125) Reading data from a document by number
8Ch (140) Storage of client data in the memory of the FU.
3Ah (58) Register sale of programmed item. FFh (255) Barcode item programming
3Ch (60) Termination (cancellation) of fiscal receipt
3Dh (61) Set the date and time
3Eh (62) Read date and time 3Fh (63)
Display date and time on display
40h (64) Information on the last fiscal record
41h (65) Information about the amounts for the day

42h (66) Set the allowable interval for the invoice number
44h (68) Number of available fields in
the FP 45h (69) Daily financial report with or without
reset 46h (70) Official input or output 47h (71)
Receipt of diagnostic information 49h (73) Detailed
report of the FP by record number
4Ah (74) Receiving 4Ch statuses
(76) Fiscal transaction status 4Fh (79) FP
summary report by date 50h (80) Audible
signal 53h (83) Des. signs, currency and
permitted tax. rates 55h (85) Programming payment names 56h (86)
Reading the date of the last fiscal record 57h (87) Programming
department name

58h (88) Obtaining data on the accumulated amounts for the department
59h (89) Programming the production test area
5Ah (90) Read diagnostic information
5Ch (92) Separation line printing
5Eh (94) Full FP report by date
5Fh (95) Summary of FP report by blocks
61h (97) Reading of established tax rates. 62h (98)
Setting the UIC 63h (99) Reading the set UIC 64h (100)
Showing the text on the display 65h (101) Setting the
operator password

34

You might also like