0% found this document useful (0 votes)
287 views33 pages

FP-700 Fiscal Printer User Manual

The document provides information about the FP-700 fiscal printer, including: 1) It is a compact thermal printer that prints receipts and reports on 58/80mm paper and is compatible with various fiscal systems. 2) It has buttons on the front for control and connections on the back for easy cable access. It also has an automatic paper cutter. 3) The printer has over 50 commands that are mostly related to initialization, diagnostics and reports, with fewer for receipts and user operations.

Uploaded by

Bledina Berisha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
287 views33 pages

FP-700 Fiscal Printer User Manual

The document provides information about the FP-700 fiscal printer, including: 1) It is a compact thermal printer that prints receipts and reports on 58/80mm paper and is compatible with various fiscal systems. 2) It has buttons on the front for control and connections on the back for easy cable access. It also has an automatic paper cutter. 3) The printer has over 50 commands that are mostly related to initialization, diagnostics and reports, with fewer for receipts and user operations.

Uploaded by

Bledina Berisha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Fiscal Printer FP-700

Fiscal Printer

FP-700
USER’S MANUAL
INTRODUCTION
DATECS FP-700 is a compact thermal printer with fiscal memory, which prints cash receipts and daily reports
on one paper rolls 58/80 mm wide. It is compatible to most European and World fiscal legislation systems.
The functions of the device are controlled with the help of buttons, located on its frontal part as well as
commands, sent via the serial interface. The couplings for the cable connections are conveniently located for fast
access and easy manipulations. The printing devices have low noise emission levels and high printing speeds - 50
mm/sec.
The printer has an automatic paper cutter. Optionally, it can support a display and a cash drawer.
Contemporary commercial activities and the demands of acting fiscal legislation systems demand a
comparatively good knowledge on the ways to operate fiscal devices of different kinds - cash registers, electronic
scales, different types of printing devices. It is for this reason, that the careful reading of this manual before
starting work with the printer may save you lots of time and trouble later on.

WORKING WITH THE FP-700 FISCAL PRINTER


The over 50 different commands which the printer can execute may initially create the impression that learning
to work with it is a difficult job. Most of these commands, however, are related to the starting initialization,
diagnostics and the generating of reports thus decreasing greatly the number of commands directly engaged with
the issuing of receipts and other user’s operations.

PROGRAM SUPPORT
To function normally the program for operating the fiscal printer must be able to control the execution of the
commands, which often fail mainly due to the lack of paper, the sending of invalid commands or simply because of
some minor cable problem. The current status of the printer is monitored by 6 bytes, returned by every command.
Part of the bits are informative (opened fiscal receipt for instance), others indicate error (no paper, invalid
command, etc.). The program must inform of existing errors or - if possible - react to these errors.
There are commands with the help of which the control program can acquire the whole needed information on
the current status of the printer. The printer saves this info in the memory as well as the accumulated sums (during
the day or only within the current receipt) even after it has been switched of from the power feed. If the device is in
the “document opened” mode it cannot close down automatically but only from the control program.

GENERAL DESCRIPTION OF THE FP-700

The functional control of the printer is performed with the help of buttons, located on its frontal part and
commands, sent via the serial interface. The coupling of the cable connections are located in such a way as to make
them easily connectable and the whole device fast to set up for normal operation.
Prior to using this device please read these instructions and the descriptions of the application programs
carefully and make sure that you have really learned how to operate the FP-700.
Upon delivery, the DATECS package will contain:
- Paper roll - 1 piece;
- Serial cable for connecting to a PC;
- User’s Manual;
- Instructions for the taxation authorities;
- Passport of the device.

1
Fiscal Printer FP-700

THE PROGRAM INTERFACE


Version 1.00 xx, where xx is the code of the country, where the device will operate:
EN - England
BG - Bulgaria
UA - The Ukraine
LT - Lithuania
RO - Romania
SR - Serbia
MC - Macedonia
BD - Bangladesh
AL - Albania
KS - Kosovo

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

TAXATION CATEGORIES AND CALCULATION OF VAT


Each concluded sale can be related to a certain taxation category (VAT) defining a tax rate, applicable to the
base price used for the formation of the sale price. The fiscal printer can operate with a maximum of 8 taxation
categories, which are most often indicated with the first letters of the language of the country, where the fiscal
printer is used-in the case of Kosovo these letters are A, B, C, D, E, F, G and H.
Each of the first 8 taxation groups (except ‘A’) has a set tax rate (in percent) which is expressed by a number
not greater than 99.00 and by no more than two digits after the decimal point. Group ‘A’ is tax exempt.
Part of the eight standard taxation groups may be forbidden by using Enabled parameter in the 83 (53H)
command. The commands for registering sales expect these eight letters as a parameter.

FUNCTION MODES OF THE FISCAL DEVICE


The fiscal device has two functional modes:
1. The training mode. The device is not fiscalized and all data needed for its normal functioning are
entered and saved in the fiscal memory with the exception of the tax registration number of the owner.
Fiscal receipts can be opened and closed but they always bear the inscription that they are not fiscal. Daily
financial reports (Z-reports) can be generated but they are not written to the fiscal memory.
2. Normal mode. The device is fiscalized and the tax registration number of the owner is saved in the
fiscal memory. Al fiscal rules apply.

STATUS OF THE FISCAL DEVICE

The status of the fiscal device can differ. Shifting from one to another condition is not always possible. The
control of the printer and the shifting between the different functions - when this is possible - is executed by the
application program Host (PC), which must relate to the included protocol. If this protocol is not applied correctly
the printer might enter into an undesirable status or to skip a given functional status, leading to an ERROR.

A) INITIAL STATUS
This is the functional status in which the date and the time are set, the number of the fiscal memory is entered
as well as the serial.
THE ABOVE-DESCRIBED OPERATIONS ARE PERFORMED PRIOR TO SELLING THE DEVICE TO
THE CLIENT ONLY BY AN AUTHORISED SERVICE SPECIALIST!

2
Fiscal Printer FP-700

The following commands must be performed in the order in which they are presented: 61 (3DH) and 91
(5BH).

B) STATUS AFTER THE FORMATTING OF THE FISCAL MEMORY


This is the state in which the name of the currency is entered, the number of the digits after the decimal point
and the tax rates. After performing these operations the fiscal printer is ready for delivery to the future operator
(owner). This is also the status in which the device is kept in the warehouse of the manufacturer.
Command 83 (53H) is sent to the printer.

C) TRAINING MODE
The fiscal printer is in this status prior to fiscalization. Receipts can be issued but it must be born in mind that
they will bear the mark “non-fiscal”. The generation of a daily fiscal report is possible but it will not be saved into
the fiscal memory. A tax registration number is entered but not into the fiscal memory and is subject to change. The
clearing of the memory does not cause an entry in the fiscal memory. The clock may be set arbitrarily.

D) A FISCALIZED PRINTER
In this functional status fiscal receipts may be issued and they will be marked “fiscal”. The Z-report is
registered in the fiscal memory and the setting of the date is possible only ahead in relation to the last entry in the
fiscal memory. The tax registration number is registered in the FM and cannot be changed from this point on.
The tax registration number of the owner of the device must be known prior to fiscalization. Command 98
(62H) after which the command 72 (48H) must be executed.

E) IRRECOVERABLE ERROR IN THE FISCAL PRINTER


This is the status of the printer when a serious technical or logical mistake has occurred as well as in case of
fiscal memory failure. After switching ON the device in this mode a bold sign “FATAL ERROR: 4” appears. The
printer does not perform commands for opening fiscal receipts as well as documents, which save data entries into
the fiscal memory. Only diagnostic commands and periodic reports can be executed. Clearing the RAM and
placing a new fiscal memory module must be performed because the module used before the error is now switched
to the READ ONLY mode. ALL THESE OPERATIONS MUST BE PERFORMED BY AN AUTHORIZED
SERVICE SPECIALIST.
The events, which can bring the printer to this state, are:
- Impossibility to make a correct entry in the fiscal memory;
- Invalid control sum, tax number, serial number, reg. No. of the fiscal memory or some of the entries
which contain the tax rates.
- Unidentified format of the fiscal memory module;
- If during the fiscal memory check up (immediately after switch ON) more than three invalid control
sums from a daily report fiscal entry are found.

The current status of the device is coded in a field 6 bytes long which is sent within each message of the fiscal
printer. Description of each byte in this field:
Byte 0: General purpose
0.7 Reserved
0.6 Rotated Open
0.5 General error - OR of all errors marked with ‘#’
0.4 Failure in printing mechanism
0.3 Display is disconnected
0.2 The clock needs setting
0.1 # Code of incoming command is invalid
0.0 # Incoming data has syntax error
Byte 1: General purpose
1.7 Reserved
1.6 Modem Not Responding
1.5 Cover Open
1.4 # Operational memory was cleared
1.3 RAM backup battery low
1.2 # RAM failure after power ON
1.1 # Command Not Permitted
1.0 Total Overflow
Byte 2: General purpose
2.7 Reserved
2.6 Journal Close Near End

3
Fiscal Printer FP-700

2.5 NonFiscal Receipt Open


2.4 Journal Near End
2.3 A fiscal receipt has been opened
2.2 Journal End
2.1 Receipt Near End
2.0 # Receipt Paper End
Byte 3: The status of the configuration keys
3.7 SW1 state. Selects serial speed. Reserved
3.6 SW2 state. Selects serial speed.
3.5 SW3 state. Selects serial speed.
3.4 SW4 Internal Display
3.3 SW5 Narrow Paper
3.2 SW6 Auto Cutter
3.1 SW7 Half Cut
3.0 SW8 Transparent Display
Byte 4: The fiscal memory
4.7 Reserved
4.6 Fiscal memory number programmed
4.5 OR of all mistakes marked by ‘*’ from bytes 4 and 5.
4.4 * Fiscal memory is full.
4.3 There is place for not more than 50 entries in the FM.
4.2 Serial number programmed
4.1 VAT registration number programmed
4.0 * Error writing to fiscal memory
Byte 5: The fiscal memory
5.7 Reserved
5.6 Fiscal Memory is missing
5.5 Fiscal memory read error
5.4 VAT rates have been entered at least once
5.3 The printer is in the fiscal mode
5.2 Last fiscal closure not OK
5.1 The fiscal memory has been formatted
5.0 * The fiscal memory is in the “read-only” mode

POWER SUPPLY CUT-OFF


The status of the printer at each particular moment is reflected in the so-called “status bytes”. The application
program must get information on the status of the printer when switched ON after a power cut-off. This is
performed by the commands 76 (4AH) and 103 (67H).
The application program must make a decision on the future behaviour of the printer depending on its current
status. It is guaranteed that the fiscal memory will not be affected by the power failure as well as that all
accumulated sums in the operational memory of the device will be valid. If the power cut-off has occurred during a
printing session, when switched ON, again the printer will print a line containing the text “POWER FAIL” in an
expanded bold type and will then complete the print.

ISSUING FISCAL RECEIPTS


A fiscal receipt is first opened, the sales are registered, payment is performed and the receipt is finally closed.
The following commands are used: 48 (30H), 51 (33H), 53 (35H), 54 (36H) and 56 (38H). At the end of the
day a daily financial report and clear are performed in order to enter and save the accumulated information in the
fiscal memory. The function is started with the command 69 (45H).

GENERATING REPORTS
Reports are generated singularly by the fiscal printer upon receiving the respective command from the PC. In
these reports the user’s program will not add any changes to the appearance and content of the reports, i.e., they
appear exactly as they have been defined in the fiscal printer. The following commands are used for the generation
of reports:
50 (32H) Report on changes in tax rates and decimal points
69 (45H) Daily financial report (X or Z)
79 (4FH) / 95 (5FH) Short financial report from date to date /from number to number of the respective fiscal
entries
94 (4EH) / 73 (49H) Detailed financial report from date to date /from number to number of the respective
fiscal entries

4
Fiscal Printer FP-700

LOW LEVEL PROTOCOL

A) PROTOCOL TYPE - MASTER (HOST) / SLAVE


The fiscal printer performs the commands sent by the Host and returns messages, which depend on the result.
The fiscal printer cannot instigate asynchronous communications itself. Only responses to commands from the
Host are sent to the Host. These messages are either wrapped or single byte control codes. The fiscal printer
maintains the communication via the RS232 serial connection at baud rates of 1200, 2400, 4800, 9600, 19200,
38400, 57600 and 115200 bps, 8N1. The baud rate is set by adjusting the configuration switches SW1, SW2 and
SW3:

SW1 SW2 SW3 Speed


0 0 0 1200 bps
0 0 1 2400 bps
0 1 0 4800 bps
0 1 1 9600 bps
1 0 0 19200 bps
1 0 1 38400 bps
1 1 0 57600 bps
1 1 1 115200 bps

Function OFF (0) ON (1)


SW4 Internal Display External Display Internal Display
SW5 Narrow Paper Wide Paper (80mm) Narrow Paper (57mm)
SW6 Auto Cutter Without auto cutting With auto cutting
SW7 Half Cut Full cut Half cut
SW8 Transparent Display Normal Display Transparent Display

B) NON-WRAPPED MESSAGES - TIME-OUT


When the transmitting of messages from the Host is normal, Slave answers not later than 60 ms either with a
wrapped message or with a 1 byte code. Host must have 500 ms of time-out for receiving a message from Slave. If
there is no message during this period of time the Host will transmit the message again with the same sequence
number and the same command. After several unsuccessful attempts Host must indicate that there is either no
connection to the fiscal printer or there is a hardware fault.
Non-wrapped messages consist of one byte and they are:
A) NAK 15H
This code is sent by Slave when an error in the control sum or the form of the received message is found.
When Host receives a NAK it must again send a message with the same sequence number.
B) SYN 16H
This code is sent by Slave upon receiving a command which needs longer processing time. SYN is sent every
60 ms until the wrapped message is not ready for transmitting.

C) WRAPPED MESSAGES
a) Host to printer (Send)
<01><LEN><SEQ><CMD><DATA><05><BCC><03>
b) Printer to Host (Receive)
<01><LEN><SEQ><CMD><DATA><04><STATUS><05><BCC><03>
Where:
<01> Preamble.
1 byte long. Value: 01H.
<LEN> Number of bytes from <01> preamble (excluded) to <05> (included) plus the fixed offset
of 20H. Length: 1 byte. Value: 20H - FFH.
<SEQ> Sequence number of the frame.
Length : 1 byte. Value: 20H – FFH.
The fiscal printer saves the same <SEQ> in the return message. If the FP gets a message
with the same <SEQ> as the last message received it will not perform any operation, but
will repeat the last sent message.
<CMD> The code of the command.
Length: 1 byte. Value: 20H - 7FH.

5
Fiscal Printer FP-700

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

MESSAGE COMPOSITION, SYNTAX, AND MEANINGS


a) The data field depends on the command.
b) The parameters sent to the printer may be separated with a comma and/or may have a fixed length.
c) The comma between the parameters shows that it is mandatory.
d) When the parameters are closed by <> they are mandatory although the brackets themselves are not present
in the message. When a given parameter is closed in [ ] it is not mandatory - the bracket themselves are also not
present in the message. When parameters are separated by ‘|’ symbol, only one of them may present in the input
data.
The symbols with ASCII codes under 32 (20H) have special meanings and their use is explained whenever
necessary. If such a symbol has to be sent for some reason (for example in an ESCAPE-command to the display) it
must be preceded by 16 (10H) with an added offset 40H.
Example: when we write 2500, 100, Text for the data field then in that field there will be 2D 32 35 30 2C 31
30 30 2C 54 65 78 74 where each hexadecimal digit is an ASCII value.

LIST OF FISCAL COMMANDS - FUNCTIONAL ARRANGEMENT


This section contains a list of the fiscal printer commands arranged in groups depending on their functions:
INITIALIZATION
29H (41) Write settings to flash
2BH (43) Setting header, footer and printing options
3DH (61) Setting date and time
42H (66) Selecting printer language
48H (72) Fiscalization
52H (82) Set next service date
53H (83) Setting the multiplier, decimal points and VAT rates
55H (85) Programming additional payment types
5BH (91) Programming the manufacturer’s serial number and fiscal memory number
62H (98) Programming VAT registration number
65H (101) Programming operator’s password
66H (102) Programming operator’s name
6BH (107) Programming or reading articles
73H (115) Loading the graphic logo
SALES
30H (48) Opening a fiscal receipt
33H (51) Subtotal
35H (53) Total (payment)

6
Fiscal Printer FP-700

38H (56) Closing a fiscal receipt


3AH (58) Registering an programmed item sale
3CH (60) Cancel receipt
6DH (109) Printing a duplicate receipt
DAILY CLOSURE
45H (69) Daily financial report (Z- or X-report)
REPORTS
32H (50) Report on changed tax rates and decimal points through the period
43H (67) Report on changed header lines
49H (73) Detailed report of the fiscal memory (from number to number)
5EH (94) Short report of the fiscal memory (from date to date)
4FH (79) Detailed report of the fiscal memory (from date to date)
5FH (95) Short report of the fiscal memory (from number to number)
69H (105) Operator’s report
6FH (111) Items report
INFORMATION TO HOST
3EH (62) Reads the date and the time
40H (64) Information on the last fiscal entry
41H (65) Information on daily taxation
44H (68) Number of free entries in the fiscal memory
4AH (74) Receiving the status bytes
4CH (76) Status of the fiscal transaction
56H (86) Reading date of last fiscal memory record
5AH (90) Reading diagnostic information
61H (97) Reading the VAT rates
63H (99) Reading VAT registration number
67H (103) Information on the current receipt
6EH (110) Receiving information on the sums arranged according to the type of payments
70H (112) Receiving information on the operator
71H (113) Receiving information on the last printed document
72H (114) Receiving information on a fiscal entry or selected period
74H (116) Read fiscal memory block
77H (119) Read and periodical fiscal report
PRINTER CONTROL COMMANDS
2CH (44) Advance paper
2DH (45) Cut paper
5CH (92) Print separator line
DISPLAY
21H (33) Clearing the display
23H (35) Showing a text (lower line)
2FH (47) Showing a text (upper line)
3FH (63) Showing the date and the hour
64H (100) Display - full control
OTHER
46H (70) Service cash-in and cash-out
47H (71) Printing diagnostic information
50H (80) Sound signal
59H (89) Programming the manufacturing test area
6AH (106) Drawer kick-out
SERVICE COMMANDS
76H (118) Read code memory (firmware) block
7FH (127) Service RAM reset

7
Fiscal Printer FP-700

DETAILED DESCRIPTION OF THE COMMANDS


20H (32) INFORMATION ABOUT LAST REGISTERED ERROR
Data fields: No data
Response: <Cmd>,<ErrCode>,<ErrTime>
Cmd – command number
ErrCode – error code
ErrTime – date and time of the last registered error in format: DD-MM-YYYY hh:mm:ss
Returns information for the error in last non successful command.
If there is no error after last RAM reset <Cmd> and <ErrCode> have value 0.
Information about last error is stored till RAM reset or new error occurs.
Description of corresponding error codes can be found in Appendix 3.

21H (33) CLEARING THE DISPLAY


Data field: No data
Response: None
A clear display command is sent. If a fiscal receipt is opened and SW4 is OFF only the lower line is cleared.

23H (35) TEXT ON THE LOWER LINE OF THE DISPLAY


Data field: <Text>
Response: None
Text A text of up to 20 symbols sent directly to the display. Prior to this a command for
positioning and clearing the lower line is sent automatically from the printer.
24H (36) LAN SETTINGS
Data fields: [Option, [fpIP, fpSubnetMask, fpPort[, Gateway[, DNS]]] |
[fpPort] | [servIP,servPort]| [MACAddr]]
Response: […]
Option ‘0’: Without DHCP static settings fpIP, fpSubnetMask, fpPort[, Gateway[, DNS]].
‘1’: With DHCP and fpPort.
‘3’: MACAddr.
fpIP, fpSubnetMask, Gateway, DNS, servIP
4 digits from 0 to 255 separated with point, representing IP.
fpPort,servPort Digit from 1 to 65535 representing TCP port.
MACAddr Till 12 hexadecimal symbols representing MAC address of the device. This sub
command is working only when service jumper is present!!!

If there are no additional parameters, the command will return current settings.

29H (41) WRITE CURRENT SETTINGS TO FLASH MEMORY


Data field: [Sw]
Response: None

Sw The configuration switches from Sw1 to Sw8 - a 8 bytes string with ‘0’ or ‘1’.
The command writes to flash memory the graphics logo, barcode height, print darkness, default drawer pulse
length and software switches. If data for software switches is not entered there will be no change in its
configuration. After RAM reset they are restored with the saved values.
After restart during initialization printer reads software switches and starts with this configuration.

8
Fiscal Printer FP-700

2BH (43) SETTING HEADER, FOOTERS AND PRINTING OPTIONS


Data field: <Item><Text>
Response: None or current settings in case of Item = ‘I’
Footer consists of 2 lines of text printed at the end of each receipt. It is automatically centred.
Item One symbol having the following meaning:
“0” to “5” Programs one of the header lines. The printer must NOT be switched off while
programming the header. After setting all header lines the command with option “W”
must be executed.
“6” or “7” Programs the footer lines: “6” is the first line; “7” is the second.
“B” Set bar code height in pixels (0.125 mm). Possible values from 24 (3 mm) to 240 (30
mm). The barcode is printed with command 84 (54H).
“C” Permission/rejection of the automatic cutting of paper after each receipt. After
switching ON, the performance of printer is defined in accordance with the setting of
the switch SW5.
“D” Set print darkness. Possible values:
‘1’: Very low
‘2’: Low
‘3’: Normal
‘4’: Dark
‘5’: Very dark
“L” Height of graphic logo and permission/rejection of the printing of graphic logo
immediately before the header. This logo is defined with command 115 (73H).
“X” Enable / disable automatic cash drawer pulse in commands 53 (35H) and 70 (46H).
“W” Makes new header lines active. If printer is fiscalized, writes them to fiscal memory.
“I” Gives us the option to read values, set earlier with command 43. After the letter “I”
only one more symbol follows which coincides with some of the above.

Text A text string:


 If <Item> is from ‘0’to ‘7’ - the text of the header / footer line (up to 36 symbols). ‘0’ to ‘5’ are
header lines, ‘6’ and ‘7’ are footer lines.
 If <Item> = ‘B’ - A number – the height of bar code in pixels.
 If <Item> = ‘C’ - One symbol value ‘0’ or ‘1’, where “0” forbids and “1” permits the automatic
cutting of the receipt.
 If <Item> = ‘D’ - The print darkness (1 to 5).
 If <Item> = ‘L’ Syntax <Enabled>,<Height>
Height Graphics logo height in lines (0.125 mm). A number from 8 to 96.
Enabled ‘0’ or ‘1’, where ‘1’ means, that logo printing is enabled.
 If <Item> = ‘X’ – One symbol: ‘0’ or ‘1’, where ‘1’ disables and ‘0’ enables automatic cash
drawer pulse in commands 53 (35H) and 70 (46H).

Warning! The command uses the current language selected. To program the messages in all 3
languages, this command must be executed 3 times (selecting different language with command 66).
Header lines are writtten to fiscal memory. There is place for 10 header records inside.

2CH (44) ADVANCING PAPER


Data field: [Lines[,Option]]
Response: None
Lines Advancing paper measured in lines. The programmed line count cannot be greater than 99 (1
or 2 bytes). If the parameter is not there the default setting is 1 line.
Option One byte, which defines which paper to be advanced:
“0” No effect
“1” The receipt paper roll is advanced
“2” The journal paper roll is advanced
“3” Both paper rolls are advanced to the set length.
If the second parameter is missing the default setting is to advance only the receipt paper roll.

2DH (45) CUTTING OFF PRINTED DOCUMENTS


Data field: None
Response: None

9
Fiscal Printer FP-700

The command causes the cutting off of the printed, ready document. It must be considered that the program
must advance the paper with at least two lines or the document will not be cut off correctly. If the printer is in the
“automatic cut off” mode it positions the paper itself and the command becomes redundant.
When the printing mechanism blocks for some reason, the paper roll must be taken out of the cutter
mechanism and the command must be executed again. This will position the blade in the extreme right-end of the
mechanism.

2F(47) DISPLAYING A TEXT ON THE UPPER LINE OF THE DISPLAY


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

30H(48) OPENING A FISCAL CLIENT’S RECEIPT


Data field: <OpCode>;<OpPwd>;<TillNmb>
Response: FReceipt
OpCode Operator’s number (1 to 16)
OpPwd Operator’s password (4 to 8 digits)
TillNmb Number of point of sale (a whole number of maximum 5 digits)

The FP performs the following actions:


 Prints the header
 Prints the tax registration number
 Prints the number and name of the operator
 Sends receipt counts
The command will not be successful if:
 There is an opened fiscal receipt
 The maximum number of receipts, as fixed for the day, has already been issued
 The fiscal memory is full
 The fiscal memory is damaged
 The operators password is not correct
 No tax registration number available
 Wrong operator password
 The clock needs setting
 Less than two header lines programmed (depends on the selected language!).
After entering three wrong operator’s passwords the printer blocks and must be switched off and ON again to
restart operating.

32H (50) TAX RATES ENTERED DURING THE ACCOUNTED PERIOD


Data field: <YY1>[<MM1>[<DD1>]][,<YY1>[<MM1>[<DD1>]]]
Response: Data
YY1 Starting year - 2 bytes (00-99)
MM1 Starting month - 2 bytes (01-12)
DD1 Starting day - 2 bytes (01-31)
YY2 End year - 2 bytes (00-99)
MM2 End month - 2 bytes (01-12)
DD2 End day - 2 bytes (01-31)
If month or day from start date is missing, then they are replaced with the first month of the year and first day
of the month.
If month or day from end date is missing, then they are replaced with the last month of the year and last day of
the month.
If the second date is missing, then year or monthly report is printing.
If end date is before start date, then nothing is printed.
Data 1 byte:
‘F’ if no tax rates for the period have been found or in case of error

10
Fiscal Printer FP-700

‘PAA,BB,CC,DD,EE,FF,GG,HH,DDMMYY’ if rates have been found, where ‘P’ means ‘PASS’ after
which the active rates are listed out as well as the date of their entry. If there are unused groups (Enabled field in
command 83) for them instead of a rate in percent a ‘DT’ is returned (Disabled tax).

The command prints a report on the changes made in the decimal points and tax rates during the selected
period.

33H(51) SUBTOTAL
Data field: <Print><Display>[,Perc|;Abs]
Response: TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH
Print One byte, which if ‘1’ the sum of the subtotal will be printed out.
Display One byte which if ‘1’ the sum of the subtotal will appear on display.
Perc A non-mandatory parameter, which shows the value of discount or surcharge in percent over
the sum accumulated so far.
Abs A non-mandatory parameter, which shows the value of discount as absolute value (up to 8
digits). Only one of the parameters Perc and Abs is permitted in the command line.
TaxX The sum over tax group A (VAT exempt), B, C, D, E, F, G and H - 10 bytes each field
The sum of all sales registered in the fiscal receipt is calculated. If necessary, the sum may be printed out
and/or brought out on display. The calculated total sum and the accumulated separate sums for each tax group are
returned to the PC. If a discount or surcharge is entered, it is printed out on a separate line and the accumulated
sums over the different tax groups are respectively corrected.

35H(53) CALCULATION OF A TOTAL


Data field: [[<PaidMode>]<[Sign]Amount>]
Resonse: <PaidCode><Amount>
PaidMode A non-mandatory code indicating the terms of payment. It may have the following
values:
‘P’ Payment in cash
‘N’ Payment with coupon
‘C’ Payment in checks
‘D’ Payment with a card
‘I’ Programmable payment 1
‘J’ Programmable payment 2
‘K’ Programmable payment 3
‘L’ Programmable payment 4
Depending on the code, the sums are accumulated in different registers and are printed in the daily report.
Sign One byte with a value ‘+’ indicating the Amount (the sum which has to be tendered)
Amount The sum tendered (up to 10 meaningful symbols)
PaidCode One byte - resulting from the execution of the command
‘F’ Error
‘E’ The calculated sub-total sum is negative. Payment is withheld and Amount will
contain a negative sub-total.
‘D’ If the paid sum is less than the sum on the receipt. The residual sum due for
payment is returned to Amount
‘R’ When the paid sum is greater than the sum on the receipt. A message
“CHANGE” will be printed out and the change will be returned to Amount.
‘I’ An error has occurred because the sum under one of the tax groups is negative.
The current subtotal is returned to Amount.
Amount Up to 9 digits with a sign. Depends on PaidCode.
This command starts the calculation of the sums from fiscal receipt, the printing of the sum with a special font
and showing the result on display.
When the command has been successfully executed a further command for opening a cash drawer is activated.
If there is no input parameters, the printer will automatically pay out the whole available sum in cash.
The command will not be successful if:
 No fiscal receipt has been opened,
 The accumulated sum is negative,
 If some of the accumulated sums under taxation (tax group) is negative.
After the successful completion of the command, fiscal printer will not perform the commands 49 and 51
within the opened receipt, although it can still perform command 53.
Note: The codes of error ‘E’ and ‘I’ will never appear in this version of the printer because commands 49 and
52 (registering a sale) do not accept negative sums.

11
Fiscal Printer FP-700

38H(56) CLOSING A FISCAL RECEIPT


Data field: No data
Response: FReceipt
FReceipt The number of all fiscal receipts since last fiscal closure (4 bytes).
The accumulated sums from the fiscal receipt are added to the daily sums in the registries of the operational
memory.
The command will not be successful if:
 No fiscal receipt has been opened,
 Command 53 (35h) has failed,
 The sum paid in command 53 is less than the total sum of the fiscal receipt.

3AH (58) REGISTERING THE SALE OF A PROGRAMMED ITEM


Data field: [<Display>][<Exch>]<[Sign]PLU[*Quan>][,Perc|;Abs][#Price]

Response: None
Display One optional byte with value of ‘D’. If present, the article name and sum is displayed.
Exch One byte – the symbol ‘^’. If present, this is an exchange (turn back) operation.
Sign One byte with a value of ‘-’
PLU The individual number of the item - a whole number between 1 and 999999999 (not more
than 9 digits).
Quan A non-mandatory parameter setting the quantity of the items for sale with a default value of
1.000. Length cannot be longer than 8 meaningful digits (not more than 3 after the decimal
point). The resulting singular price (*Quan) is rounded up to the set number of digits after
the decimal point and also cannot be greater than 8 meaningful digits.
Perc A non-mandatory parameter showing the value of surcharge or discount (depending on the
symbol) in percent over the current sale. Possible values are between -99.00% to 99.00%. Up
to 2 digits after the decimal point are acceptable.
Abs This is a non-mandatory parameter which sets the value of discount or surcharge (depending
on the sign) over the current sale. Up to 8 significant digits. Only one of the parameters Perc
and Abs allowed.
Price An optional parameter - up to 8 significant digits. If present, the article is sold using this
price. The value is used in this command only - the programmed price of the PLU remains
unchanged. If this optional parameter is used, the printer checks the article group (see
command 107) and following restrictions apply:
 If article group is 1, then new prise is used.
 If article group is 2, then new price is used if it is less or equal than the programmed
price, otherwise command is not permitted.
 If article group is greater than 2, then it is not permitted to replace the programmed
PLU price.
The fiscal printer performs the following operations:
 The name, price and tax group of the item is read from items list, programmed in the printer.
 Prints out the name of the item, selected quantity and singular price. The second printed line
contains the final price together with the letter, designating the tax group from which the sale will
be performed. The registries for accumulated sums and item quantities are updated.
 The price of the item is added to the accumulated sums in the registries of operational memory. In
case of overflow, the respective bytes from the status field will be set.
 If there is a discount or surcharge, it is printed out on a separate line and is added in specially
selected registries in the printer. The values from the whole day will be printed together with the
daily financial report.
The price of the item is shown on the upper line of display and its description - on the lower.
The exchange operation must be with value <= of the accumulated sum for this tax group in the receipt.
After the first exchange command, all other registration commands in this receipt must be of exchange type.
Exchange commands didn’t allow using of discount or mark up.
The command will not be successful if:
 No item has been programmed under the given number
 The item is programmed, but the name for the selected language is empty
 No fiscal receipt has been opened
 The maximum number of sales for one receipt (512) has already been registered
 The command 35h has been successfully executed
 The sum under one or more of the tax groups has turned out negative

12
Fiscal Printer FP-700

3CH (60) CANCEL FISCAL RECEIPT


Data field: None
Response: None
The command cancels an open fiscal receipt. All sales in the receipt are discarded. The message
"CANCELLED RECEIPT" is printed and then the receipt is closed as non-fiscal. The command is not permitted,
if command 53 (Total) is already executed for this receipt.

3DH(61) SETTING THE CLOCK - DATE AND TIME


Data field: <DD-MM-YY><space>HH:MM[:SS]>
Response: None
You cannot set a date, which is earlier than the date of the last entry into the fiscal memory of device and the
capacity of this memory includes the year 2099. After RESET of memory, this command must be executed –
otherwise, the normal functioning of device cannot be resumed. The printer’s real-time clock must always be set
correctly.

3EH (62) READING CURRENT DATE AND HOUR


Data field: None
Response: <DD-MM-YY><Space><HH:MM:SS>

3FH (63) DISPLAYING THE DATE AND HOUR


Data field: None
Response: None
Current date and time are displayed on lower line using the format: DD-MM-YY HH:MM:SS.

40H (64) LAST FISCAL CLOSURE DETAILS


Data field: None
Response: ErrorCode[Rec,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH,Date]
ErrCode Exit code:
‘P’ Successful command. Data present after ‘,’ symbol.
‘F’ Can’t read last record. No data present.
Rec Receipt count
TotX VAT group total (12 bytes with sign each field).
Date Closure date in format DDMMYY.
The command returns the accumulated sums by VAT groups for the last fiscal closure.

41H (65) DAILY TOTALS


Data field: None
Response: TotA,TotB,TotC,TotD,TotE,TotF,TotE,TotG,TotH

TotX VAT group total (12 bytes with sign each field).
The command returns the accumulated sums by VAT groups for the day.

42H (66) SELECT PRINTER LANGUAGE


Data field: [<Base>][<LngIndex>]
Response: BaseIndex,ReceiptIndex

Base Optional parameter - one letter 'Z'. If present, the base language is set. If not present, receipt
language is set.
LngIndex One byte with possible value:
‘0’ English
‘1’ Albanian
‘2’ Serbian
BaseIndex One byte, containing the current base language.
‘0’ English
‘1’ Albanian

13
Fiscal Printer FP-700

‘2’ Serbian
ReceiptIndex One byte, containing current receipt language.
The command selects printing languages.
Receipt language is used in fiscal (customer) receipts only. It may be changed before every fiscal receipt.
Base language is used for all other documents. It can be changed only before the first document for the day
(immediately after Z-report).
Warning! Header lines, footer lines, additional payment types and programmed PLU names are in one of the
languages, too. If You intend to use some of the languages, You must program these strings for this language. Some
of the commands will not work, if the strings in the current language are not programmed!

43H (67) PRINT HEADER CHANGES REPORT


Data field: <YY1>[<MM1>[<DD1>]][,<YY1>[<MM1>[<DD1>]]]
Response: Data
YY1 Starting year - 2 bytes (00-99)
MM1 Starting month - 2 bytes (01-12)
DD1 Starting day - 2 bytes (01-31)
YY2 End year - 2 bytes (00-99)
MM2 End month - 2 bytes (01-12)
DD2 End day - 2 bytes (01-31)
If month or day from start date is missing, then they are replaced with the first month of the year and first day
of the month.
If month or day from end date is missing, then they are replaced with the last month of the year and last day of
the month.
If the second date is missing, then year or monthly report is printing.
If end date is before start date, then nothing is printed.
Data 1 byte:
‘F’ if no tax rates for the period have been found or in case of error
‘P’ Valid data found for this period.
The command prints a report on the changes made in the header during the selected period (all 3 languages).

44H (68) THE NUMBER OF FREE FIELDS IN THE FISCAL MEMORY


Data field: None
Response: Logical,Physical
Logical The number of logical locations for fiscal entries (4 bytes)
Physical Not used. Repeats the value of Logical.
The number of free fields in the fiscal memory, reserved for saving information from the daily report.

45H (69) DAILY FINANCIAL REPORT


Data field: [<Option>[N][A]]
Response: Response: Closure, TotA,TotB,TotC,TotD,TotE,TotF,TotE,TotG,TotH
Option A non-mandatory parameter controlling the type of generated report.
‘0’ A Z-report (Daily report with writing to fiscal memory and clearing the daily
registers).
‘2’ A X-report (Daily report without writing to fiscal memory and clearing the daily
registers)..
N The presence of this symbol at the end of the data cancels the option to clear the data
accumulated on the operators during a Z-report.
A The presence of this symbol at the end of the data cancels the option to clear the data about
sold article quantities during a Z-report.
Closure Fiscal closure (Daily report) number – 4 bytes.
TotX VAT group total (12 bytes with sign each field).

46H (70) INTERNAL DEBITING AND CREDITING (SERVICE IN AND OUT)


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

14
Fiscal Printer FP-700

ExitCode One byte:


‘P’ The order has been completed. If the ordered sum is not 0, the printer will print an
interior receipt for registering the operation.
‘F’ The order has been canceled. This happens if:
- The cash sum available is less than the ordered interior credit (serveIn),
- There is an opened fiscal receipt.
CashSum Available cash. Apart from this command, the sum grows after each payment in cash.
ServIn The sum from all commands “Interior credit”
ServOut The sum from all commands “Interior debit”
Changes the content of the cash availability register. Depending on the sign of the sum in question, it is
accumulated in the register for interior debit-credit. The information is not saved in the fiscal memory of device
and is accessible until the performance of the daily closure. It is printed out at the command 69 (45h) and at the
generation of the daily report without closure from the printer itself. At successful completion of this command,
the drawer “kick-out” function is automatically activated.

47H (71) PRINTING DIAGNOSTIC INFORMATION


Data field: None
Response: None

The command initiates the generation of an interior receipt containing diagnostic information as follows:
- Prints the date and version of the employed software,
- Prints country,
- Prints the control sum of the employed firmware,
- Prints the serial port’s band rate,
- Prints out the status of memory switches,
- Prints emergency time after power supply cut-off,
- Prints the number, date and hour of the last reset of the RAM (if there is such),
- Prints the current temperature of the two printer heads,
- Prints the overall number of fields in the fiscal memory and the number of the free fields,
- Prints the current date and time.
The command will not be executed when there is an open receipt in progress or when the paper roll has
finished. It may also be activated by pressing the <FEED> button until the first sound signal is heard.

48H (72) FISCALIZATION OR REFISCALIZATION


Data field: <OldPwd>,<NewPwd>,<Serial|TaxNo>
Response: ErrCode
OldPwd Old password for refiscalization. 4 to 8 digits. For first fiscalization the password is
“000000”.
NewPwd New password. 4 to 8 digits. Must be entered correctly for refiscalization of the printer.
Serial The serial number of device - it must be the number entered with command 5Bh. Used in the
fiscalization command only.
TaxNo The new tax registration number as a text (from 8 to 14 bytes) – for refiscalization only.
ErrCode Error or ‘P’ code when the action has been successful.
The command will not be executed (and an error code will be set) if:
‘1’ The serial number is invalid,
‘2’ The printer has been refiscalised more than 11 times,
‘3’ No serial number has been programmed,
‘4’ The serial number is different from the one programmed,
‘5’ There is an opened receipt in progress,
‘6’ There are some already issued fiscal receipts or the 70 (46h) command has been executed after the last
daily report with closure,
‘7’ No tax rates have been entered into the memory of device,
‘8’ The tax registration number consists only of zeros,
‘9’ The clock needs setting.
Fiscalization of device must be performed and after successful execution of the command, the returning of
printer to a “non-fiscalized” mode becomes impossible.

15
Fiscal Printer FP-700

The tax number and current VAT rates is entered in the fiscal memory, together with the current date and hour.
All registries are cleared (to zero) after which the printer opens the first fiscal receipt, marks the moment of
fiscalization on this receipt and closes it.
If the command is executed after fiscalisation, the printer is registered with new tax registration number. There
is place for 15 refiscalizations in fiscal memory.
The command is permitted in service mode only.

49H (73) DETAILED FISCAL MEMORY REPORT BY CLOSURE NUMBER


Data field: [<Option>]<Start>,<End>
Response: None
Option One optional byte ‘S’. If present, a shorter form of the report is printed – for every Z-report is
printed date and time only.
Start The number of the starting fiscal entry - 4 bytes
End The number of the ending fiscal entry - 4 bytes
The command leads to the printing of a detailed report of the fiscal memory from one selected number to
another.

4AH (74) READING THE STATUS OPTIONS


Data field: [Option]
Response: <S0><S1><S2><S3><S4><S5>
Option One byte with the following meanings:
‘W’ All printer buffers must be printed out first.
‘X’ The status is returned immediately (default).
Sn Status byte n.

4CH (76) STATUS OF THE FISCAL TRANSACTION


Data field: [Option]
Repsonse: Open,Items,Amount[,Tender]
Option =’T’ If the parameter has been selected the command will return the information on the
current state of the sum due for payment by the client.
Open One byte which is ‘1’ if a fiscal or a non-fiscal receipt has been opened (which it is can be
understood from the status bytes) and ‘0’ if there is no opened receipt.
Items The number of sales registered on the on the current or last fiscal receipt - 4 bytes.
Amount The sum from the last fiscal receipt - 9 bytes with a sign.
Tender The sum tendered against the current or the last receipt - 9 bytes with a sign (Only if Option
is present).
The command supports the PC application’s ability to monitor the status and if needed to restore and complete
am already started fiscal operation which has been interrupted on emergency or out of time - for example as a
result of a power failure.

4FH (79) SHORT PERIODICAL FISCAL REPORT


Data field: <YY1>[<MM1>[<DD1>]][,<YY2>[<MM2>[<DD2>]]]
Response: None
YY1 Starting year - 2 bytes (00-99)
MM1 Starting month - 2 bytes (01-12)
DD1 Starting day - 2 bytes (01-31)
YY2 End year - 2 bytes (00-99)
MM2 End month - 2 bytes (01-12)
DD2 End day - 2 bytes (01-31)
If month or day from start date is missing, then they are replaced with the first month of the year and first day
of the month.
If month or day from end date is missing, then they are replaced with the last month of the year and last day of
the month.
If the second date is missing, then year or monthly report is printing.
If end date is before start date, then nothing is printed.
This command prints out a short financial report on the period between two selected dates or on the selected
month or year.

16
Fiscal Printer FP-700

50H (80) SOUND SIGNAL


Data field: [<SoundData>]
Response: None
This command is used for making (beeping) a sequence of sounds with a certain frequency and duration. The
data is in format, similar to the one used for writing notes and can be of any length up to 218 bytes. The first
invalid character cancels the command. If the input string is empty, the one sound signal with frequency 2 kHz and
duration 300 ms is emitted. SoundData format is a sequence of the following subcommands:
 Notes of the scale: One latine letter with value from ‘A’ to ‘G’.
‘C’ - Do
‘D’ - Re
‘E’ - Mi
‘F’ - Fa
‘G’ - Sol
‘A’ - La
‘B’ – Si
If immediately after the note comes character ‘#’, then the note is higher in pitch by a semitone (sharp).
If immediately after the note comes character ‘&’, then the note is lower in pitch by a semitone (flat).
 Pause: Character space (ASCII 20h).
After a note or pause there can be one or a few bytes, which specify the duration. Valid are characters
from ‘0’ to ‘5’, they have the following meaning:
‘0’ basic duration of a note/pause
‘1’ basic duration * 2
‘2’ basic duration * 4
‘3’ basic duration * 8
‘4’ basic duration * 16
‘5’ basic duration * 32
If there are a few durations one after another they are summed up.
 Going to higher scale: character ‘+’.
 Going to lower scale: character ‘-‘.
 Specifying tempo: character ‘^’, followed by a number. The number specifies the percentage:
duration of notes and intervals to basic duration. Values:
‘1’ 200 %
‘2’ 175 %
‘3’ 140 %
‘4’ 120 %
‘5’ 100 %
‘6’ 80 %
‘7’ 60 %
‘8’ 50 %
‘9’ 40 %
 Return to scale 1 (it is default). Character ‘@’. Tone ‘La’ in it is 440 Hz.

52H (82) SETTING NEXT SERVICE DATE


Data field: <OldPwd>,<NewPwd>,<ServDate>,<InfoMsg>
Response: None
OldPwd Old password. 4 to 8 digits. For first use of the command the password is “000000”.
NewPwd New password. 4 to 8 digits. Must be entered correctly last valid password.
ServDate Next service date. Must be after the current date. 6 digits (DDMMHH).
InfoMsg Text up to 24 symbols, which is printed in the warning message. For example – the phone
number of the service company.
There is place for 20 service dates. 30 days before the period expires, the printer starts to print a warning
message before the Z-report. If the period expires, the printer stops executing command 48 (Open fiscal receipt)
and allows only one Z-report to be done.
If no service date is entered, no restrictions exists (expiration date is assumed 31.12.2099).
The command is permitted in service mode only.

53H (83) SETTING THE MULTIPLIER, DECIMALS AND ENABLED TAXES


Data fields: [Multiplier,Decimals,Enabled,,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH]
Response: Multiplier,Decimals,Enabled,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH

17
Fiscal Printer FP-700

Multiplier A multiplier between 0 and 3 which shows the degree of 10 before multiplying it times the
input or output value (at present deactivated and not used).
Decimals One byte with a value 0 or 2 and shows the exact place of the decimal point.
Enabled 9 bytes with value ‘0’ or ‘1’, corresponding to VAT groups ‘B’, ‘C’, ‘D’, ‘E, ‘F’, ‘G’ and ’H’
in this order. ‘0’ means disabled VAT group, ‘1’ – enabled VAT group. VAT group A is always
enabled and is with VAT rate 0.00%.
TaxX The VAT rate for the corresponding VAT group in % with up to 2 decimals (0.00 to 99.00).
If nothing is entered in the data field, the FP returns the currently valid values. Even when only one of the
parameters must be changed, the rest must be entered too.
The fiscal memory has a fixed capacity for a set number of entries, and for that reason the command can be
performed not more than 19 times after the fiscalization. Before the fiscalization the data are hold in RAM only
and may be changed without limitations. The command may be executed only before the first fiscal receipt for the
day.
The command is permitted in service mode only.

55H (85) DIFINE ADDITIONAL PAYMENT TYPES NAME


Data field: Option[,Name]
Response: Result|Name
Option:
‘I’ Additional payment 1
‘J’ Additional payment 2
‘K’ Additional payment 3
‘L’ Additional payment 4
Name Name (comment text) of the payment. Up to 20 bytes. If not present, the current name is
returned.
Result One byte:
‘P’ No error.
‘F’ Name longer than 20 bytes.
The command defines the comment text, printed before the additional (programmable) payments. The
command is not permitted after the first fiscal receipt for the day.
Warning! The command uses the current language selected. To program the messages in all 3
languages, this command must be executed 3 times (selecting different language with command 66).

56H (86) GET LATEST FISCAL MEMORY RECORD DATE


Data field: No data
Response: Date
Date Date of last (latest) record in the fiscal memory in format:
DD/MM/YYYY

59H (89) PROGRAMMING THE PRODUCTION TEST AREA


Data field: <Test>
Response: Result, Free
Test One byte. If ‘T’ an entry into the fiscal memory is done - otherwise there will be no ‘save’
performed and only the parameters will be returned.
Result One byte:
‘P’ No error
‘F’ Error
Free The number of the free blocks left for saving such entries - 4 bytes.
The command is executed for testing the fiscal memory.
Test block for entries into the fiscal memory: 55h,AAh,33h,CCh,5Ah, A5h,3Ch,C3h
If- and when- the S1.1 flag has been raised the fiscal memory has not been formatted or is in the READONLY
mode.

5AH (90) RETURNS DIAGONSTIC INFORMATION


Data field: <Calc>
Response: <Name>,<FwRev><Sp><FwDate><Sp><FwTime>,<Chk>,<Sw>,<Ser>,<FM>

18
Fiscal Printer FP-700

Calc If ’1’ the control sum of the fiscal memory is calculated - 1 byte.
Name Name of the printer (the string “FP550”).
FwRev The version of the software program - 4 bytes.
Sp Space - 1 byte.
FwDate The date of the software program DDMmmmYY - 8 bytes.
Sp Space - 1 byte.
FwTime Hour of the software program HHMM - 4 bytes.
Chk The EPROM control sum - a 4 bytes string in the hexadecimal code. For example if the
control sum is 214Ah it will be presented as 32h, 31h, 34h, 42h
Sw The configuration switches from Sw1 to Sw8 - a 8 bytes string with ‘0’ or ‘1’.
Ser The serial number - 8 bytes.
FM Number of the fiscal module - 8 bytes.

5BH (91) PROGRAMMING THE SERIAL NUMBER AND FISCAL MEMORY NUMBER
Data field: <SerialNum>[,<FiscalNum>]
Response: Result,CountryStr
SerialNum The serial number. From 8 to 10 symbols – 2 letters and digits.
FiscalNum The fiscal memory number. From 8 to 10 symbols – all digits.
Result One byte. ‘P’ - OK; ‘F’ - errors.
CountryStr The name of the country. For example: “KOSOVO”
If only SerialNum is present, then FiscalNum is not programmed and the command must be executed later
again to set the fiscal number.
Programming of serial number is permitted only in service mode and is performed by the manufacturer of the
printer. The printer is handed over to the owner with the serial number programmed. Fiscal number may be
programmed in customer mode or in service mode.
If the serial number is programmed and the command is executed to set the fiscal number, the printer checks is
the SerialNum in the parameters is equal to the already programmed serial number, otherwise the command will
not pass.
If Result = ‘F’ and the S1.1 flag is raised the command has not been successful because either the fiscal
memory has not been formatted or the serial number has already been entered.

5CH (92) PRINT SEPARATOR LINE


Data field: <Type>
Response: None
Type The type of the separator line. One symbol with possible value:
‘1’ 36 times the symbol ‘-‘.
‘2’ 18 times the sequence ‘-‘ and ‘ ‘.
‘3’ 36 times the symbol ‘=‘.
The command prints a separator line using the full paper width. Permitted in a fiscal receipt only,

5EH (94) DETAILED FISCAL MEMORY REPORT BY CLOSURE DATE


Data field: [<Option>]<YY1>[<MM1>[<DD1>]][,<YY2>[<MM2>[<DD2>]]]
Response: None
Option One optional byte ‘S’. If present, a shorter form of the report is printed – for every Z-report is
printed date and time only.
YY1 Starting year - 2 bytes (00-99)
MM1 Starting month - 2 bytes (01-12)
DD1 Starting day - 2 bytes (01-31)
YY2 End year - 2 bytes (00-99)
MM2 End month - 2 bytes (01-12)
DD2 End day - 2 bytes (01-31)
If month or day from start date is missing, then they are replaced with the first month of the year and first day
of the month.
If month or day from end date is missing, then they are replaced with the last month of the year and last day of
the month.
If the second date is missing, then year or monthly report is printing.
If end date is before start date, then nothing is printed.

19
Fiscal Printer FP-700

This command prints out a detailed financial report on the period between two selected dates or on the selected
month or year.

5FH (95) SHORT FISCAL MEMORY REPORT BY CLOSURE NUMBER


Data field: <Start>,<End>
Response: None
Start Starting number of the fiscal entry
End End number of fiscal entry
The command starts the calculation and the printing of a short periodic financial report.

61H (97) READING THE SET TAX RATES


Data field: None
Response: TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH
TaxA Current tax rate A
TaxB Current tax rate B
TaxC Current tax rate C
TaxD Current tax rate D
TaxE Current tax rate E
TaxF Current tax rate F
TaxG Current tax rate G
TaxH Current tax rate H

62H (98) SETTING THE TAX REGISTRATION NUMBER


Data field: <TaxNo>
Response: None
TaxNo The tax registration number as a text (from 8 to 14 bytes).
The command changes the tax registration. Before fiscalization this data are hold in RAM only, so they can be
changed unlimited times.
The fiscalization writes the current data set using this command to the fiscal memory.

63H (99) READING THE TAX REGISTRATION NUMBER


Data field: None
Response: TaxNo
TaxNot The tax registration number as a text.

64H (100) SHOWING TEXT ON DISPLAY


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

65H (101) SETTING THE OPERATOR’S PASSWORD


Data field: <OpCode>,<OldPwd>,<NewPwd>
Response: None
OpCode Operator’s code (1 to 16)
OldPwd Old password (4 to 8 digits)
NewPwd New password (4 to 8 digits)
Sets one of the 16 operator’s passwords, which will be demanded upon opening a fiscal receipt. After three
erroneous password entries, the printer will block, it must then be switched OFF and ON again to continue
operating.
After initialization or reset of the operational memory, all 16 passwords are “0000”.

20
Fiscal Printer FP-700

66H (102) ENTERING OPERATOR’S NAME


Data field: <OpCode>,<Pwd>,<OpName>
Response: None
OpCode Operator’s code (1 to 16)
Pwd Password (4 to 8 digits)
OpName Name of the operator (up to 24 symbols)
Enters one of the 16 operator names. The number and the name of the operator are printed at the beginning of
each fiscal (clients) receipt. After three erroneous password entries the printer will block, it must then be switched
OFF and ON again to continue operating. After initialization or reset of the operational memory all 16 passwords
locations are empty.

67H (103) INFORMATION ON THE CURRENT RECEIPT


Data field: None
Response: CanVd,TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH
CanVd Possible/impossible return (sale registration with a negative sign) [‘0’ / ’1’]
TaxX The sum accumulated for each VAT group (9 digits with sign each field)
The command offers information on sums accumulated so far under the different tax groups and whether it is
possible to return the registered items sold.

68H (105) OPERATOR’S REPORT


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

6AH (106) DRAWER KICK OUT


Data field: [<mSec>]
Response: None
mSec The length of the impulse in milliseconds (5-100)
Sends an impulse for opening the cash drawer. This parameter sets a new value for the length of the impulse,
which is stored in the memory of the printer. If this parameter is skipped, the last entered value remains valid. After
memory RESET a value of 15 ms is set.

6BH (107) DEFINING AND READING ITEMS


Data field: <Option>[Parameters]
Response: ErrorCode[,Data]
Option One byte, defining the type of the selected operation. Depending on this, the command might
- or might not - demand the entering of additional parameters. The possible values are: ‘I’,
‘P’, ‘D’, ‘A’, ‘C’, ‘R’, ‘F’, ‘L’, ‘N’, ’X’, ’f’, ‘l’, ‘n’, ‘x’.
ErrorCode One byte, showing the result from the operation and having the following meaning:
- ‘P’ Successful command
- ‘F’ Unsuccessful command
Parameters Data on the command - described in detail further on.
SUBCOMMANDS (depending on Option):
- ‘I’ Article information
Syntax: <I>
Returns: <Total>,<Prog>,<Len>
Total Total programmable article count (10000 for this printer).
Progr Programmed article count.
Len Maximal article name length (32 for this printer).
- ‘P’ or ‘p’ Programming an item
Syntax: <P><TaxGr><PLU>,<Grp>,<Price>,[<Repl>]<Quantity><Name>

21
Fiscal Printer FP-700

or
<p><TaxGr><PLU>,<Grp>,<Price>,[<Repl>]<Quantity><Eng><Tab><Alb><Tab><S
er>
TaxGr Tax group. One byte (‘A’, ‘B’, ‘C’, ‘D’, ‘E, ‘F’, ‘G’ or ‘H’).
PLU Number of the item (1 to 999999999)
Grp Article group (1 – 99).
Price Singular price - up to 8 meaningful digits.
Repl A non-mandatory parameter – one byte with value ‘A’. Changes the meaning of
the next parameter (Quantity).
Quantity A number with up to 3 decimals – the available quantity of the article. If
Replace is present, then the available quantity is replaced with this parameter,
otherwise it is added to the old value (if the article is already programmed, of
course). Every sale command of this article will decrease this value.
Name Name of the item - up to 32 bytes. It is possible to program the name in two
lines – the separator is line feed (ASCII code 0Ah). The name is written for the
currently selected language.
Eng, Alb, Ser The 'p'-form of the command programs the name of the PLU in all 3 languages
in this order: English, Albanian, Serbian, separated by <Tab> symbol (ASCII
code 09h). All 3 fields are obligatory. Every field is up to 32 characters.
Up to 10000 different items may be programmed and the command will be rejected if a similar item has
already been programmed in the memory of printer and sales of this item have been registered. An item with zero
accumulated sums is subject to change. The number of the free items is returned after an ErrorCode parameter.
- ‘A’ Change the quantity of an item
Syntax: <A><PLU>,<Quantity>
PLU Article number (1 to 999999999).
Quantity Quantity correction - a floating-point number with 3 decimal places. Positive
number increases the available quantity, negative decreases it.
Changing the quantity is possible, if the article is programmed.
- ‘C’ Change the price of an item
Syntax: <C><PLU>,<SPrice>
PLU Article number (1 to 999999999).
SPrice Singular price - up to 8 meaningful digits.
Changing the price is possible, if the article is programmed and no sales of this article are made in the fiscal
receipt (if a fiscal receipt is open).
- ‘D’ Deleting an item
Syntax: <D><A | PLU | PLU1, PLU2>
A Delete all items with non-zero accumulated sums.
PLU Deletes article with selected number if there are no accumulated sums.
PLU1,PLU2 Deletes the articles within a set interval which do not have accumulated sums.
- ‘R’ Reading Item data
Syntax: <R><PLU>
PLU Item number. 9 digits.
Returns: <P><PLU>,<TaxGr>,<Group>,<SPrice>,<Total>,<Sold>,<Available>,<Eng><Tab>
<Alb><Tab><Ser>
PLU Individual number of the item. 9 digits (000000001 to 999999999)
TaxGr Tax group - 1 byte
Group Article group. 2 digits (01 - 99).
SPrice Singular price. A floating-point number – decimal places depend on the count
set using command 83 (53h).
Total Accumulated sum for this article.
Sold Accumulated quantity - a floating-point number with 3 decimal places.
Available Available quantity of this article.
Eng, Alb, Ser The names of the item in all 3 languages. Up to 32 symbols.
Tab One byte - ASCII code 09h.
If the item cannot be found, one ‘F’ byte is returned.
- ‘F’ Returning the data on the first found programmed item.
Syntax: <F>[<PLU>]
If the parameter PLU is present, then the first programmed article with number greater than or equal to PLU is
returned. If missing, PLU=1 is assumed. The returned data is similar to the subcommand ‘R’.
- ‘L’ Returning the data on the programmed item with the greatest number.
Syntax: <L>[<PLU>]
If the parameter PLU is present, then the first programmed article with number lower than or equal to PLU is
returned. If missing, PLU=999999999 is assumed. The returned data is similar to the subcommand ‘R’.

22
Fiscal Printer FP-700

- ‘N’ Returning the data on the next found programmed item. Depending of the starting subcommand
(‘F’ or ‘L’), the articles are enumerated in ascending or descending order.
Syntax: <N>
The returned data is similar to the subcommand ‘R’.
The last three commands are used to receive a list of programmed items. The subcommand ’F’ or ‘L’ is
followed by ‘N’ until the response ‘F’ comes. This means that the process of reading has ended with the last
available item.
- ‘f’ Returning the data on the first sold item.
Syntax: <f>[<PLU>]
If the parameter PLU is present, then the first sold article with number greater than or equal to PLU is
returned. If missing, PLU=1 is assumed. The returned data is similar to the subcommand ‘R’.
- ‘l’ Returning the data on the sold item with the greatest number.
Syntax: <l>[<PLU>]
If the parameter PLU is present, then the first sold article with number lower than or equal to PLU is returned.
If missing, PLU=999999999 is assumed. The returned data is similar to the subcommand ‘R’.
- ‘n’ Returning the data on the next found sold item. Depending of the starting subcommand (‘f’ or
‘l’), the articles are enumerated in ascending or descending order.
Syntax: <n>
The returned data is similar to the subcommand ‘R’.
The last three commands are used to receive a list of sold items. The subcommand ’f’ or ‘l’ is followed by ‘n’
until the response ‘F’ comes. This means that the process of reading has ended with the last available item.
- ‘X’ Returning the data on the first free item.
Syntax: <X>[<PLU>]
Returns: PLU
If the parameter PLU is present, then the first free (not programmed) article with number greater than or equal
to PLU is returned. If missing, PLU=1 is assumed.
- ‘x’ Returning the data on the last free item.
Syntax: <x>[<PLU>]
Returns: PLU
If the parameter PLU is present, then the first free (not programmed) article with number lower than or equal
to PLU is returned. If missing, PLU=999999999 is assumed.
- ‘Z’ Fills the name in additional language for an already programmed PLU.
Syntax: <Z><PLU>,<Name>
Returns: ‘P’ – OK, or ‘F’ - error
The command will be not executed if:
 The PLU is not programmed
 The PLU is programmed, there is already a name in this language and the PLU is sold at least once since last Z-
report (Not allowed to change the name if already used this day).
Warning! The command uses the current language selected to program or read articles. For programming an
article in all languages You need to:
 Program the article in one of the languages using subcommand ‘P’.
 Program the name of the article in the other languages using subcommand ‘Z’ (selecting different language with
command 66).

6DH (109) PRINTING A DUPLICATE RECEIPT


Data field: <Count>
Response: None
Count Number of duplicate receipts (only a value of 1 or 2 is accepted!).
The command initiates the printing of a copy of the last closed receipt containing registered sales. Immediately
after the tax registration number the inscription “DUPLICATE” is printed out in bold letters.
The printer will refuse to execute this command twice.

6EH (110) ADDITIONAL DAILY INFORMATION (PAYMENT INFO)


Data field: None
Response: Cash,Coupon,Card,Check,Pay1,Pay2,Pay3,Pay4,Closure,FReceipt,CReceipt
Cash Paid in cash
Coupon Payment credited

23
Fiscal Printer FP-700

Card Paid with a debit card


Check Paid with a cheque
PayX Paid with one of the additional payment types (‘I’, ’J’, ’K’, ’L’).
Closure Current (last) fiscal entry
FReceipt Number of the next fiscal receipt
CReceipt Number of the next exchange receipt
Returns information on the distribution of the daily sum according to the terms of payment used.

6FH (111) ITEMS REPORT


Data field: <Option>[<Start>,<End>[,<Group>]]
Reponse: None
Option Defines the type of information under print. Possible values:
- ‘S’ Only sold items are printed out. The data on these items include: the individual
number, VAT group, group, name, single price, sold quantity and total sum for the
day.
- ‘P’ All programmed items are printed out, containing their number, VAT group, group,
name, sold quantity, available quantity and single price.
Start First article number (PLU) printed. PLUs less than this are not included in the report.
Default: 1.
End Last article number (PLU) printed. PLUs greater than this are not included in the report.
Default: 999999999.
Group A number from 1 to 99. If present, only articles from this group are printed, otherwise all
articles are printed.
Items are arranged according to their individual numbers. When a Z-report is printed, then the accumulated
sums are cleared, if the parameter ‘A’ is not present in the command line.

70H (112) READING INFORMATION ON THE OPERATOR


Data field: Operator
Response: Total,Discount,Surcharge,Void,Name
Operator Number of the operator (1 to 16)
Total Number of registered sales and total accumulated sum, divided by a ‘;’
Discount Number of discounts and total number of discounts
Surcharge Number of surcharges and total number of surcharges made
Void Number of voids (and corrections of sums) and their total sum
Name Name of the operator
The command leads to the reading of the available information, which will be printed out in the operator’s
report. The sums are returned as floating-point numbers incorporating the currently set number of decimal places.

71H (113) READING THE NUMBER OF THE LAST PRINTED DOCUMENT


Data field: None
Response: DocNum
DocNum The number of the last issued document (8 digits)

72H (114) INFORMATION ON THE FISCAL ENTRY OR A FISCAL PERIOD


Data field: <Record>[,<Type>[,Record1]]
Response: ErrorCode,Data
Record Start number of the fiscal memory record.
Type The type of the information demanded.
Record1 Optional end number of fiscal memory record for Type ‘1’, ‘2’ and ‘3’. For all other
subcommands this field is empty.
ErrorCode One byte with a value of:
 ’P’ Valid data found
 ‘F’ Wrong control sum (Data is invalid)
 ‘E’ The selected entry is empty
Data Returned data.

24
Fiscal Printer FP-700

Type Data format


“0” DecRecord,Decimals,Enabled,RateA,RateB,RateC,RateD,DateTime
“1” ClosCnt,RecCnt,TotA,TotB,TotC,TotD,TotE,TotF,TotG,TotH
“2” ClosCnt,RecCnt,NetA,NetB,NotC,NetD,NetE,NetF,NetG,NetH
“3” ClosCnt,RecCnt,TaxA,TaxB,TaxC,TaxD,TaxE,TaxF,TaxG,TaxH
“4” Closure,DecRecord,ResetRecord,DateTime
“5” Decimals,Enabled,RateA,RateB,RateC,RateD,DateTime
“6” DateTime
Closure Z-report record number
DecRecord Fiscal memory decimals record number.
Decimals Decimals
Enabled Enabled taxes mask
RateX VAT rate (in %)
DateTime Date and time in format DD-MM-YY hh:mm:ss
ClosCnt Closure count for the period
RecCnt Fiscal receipt count for the period
TotX Accumulated turnover sum for the period
TotExcX Accumulated turnover sum from exchanges for the period
NetX Accumulated net sum for the period
NetExcX Accumulated net sum from exchanges for the period
TaxX Accumulated VAT sum for the period
TaxExcX Accumulated VAT sum from exchanges for the period
The command returns information on the different tax groups for each separate entry or a selected period of
time. Periodic references for longer time periods may take a few seconds to process.
Depending on Type, different information is returned:
“0” Information on the active decimals and VAT rates record for the Z-report with number Record
“1” Information on the accumulated turnover sums
“2” Information on the accumulated net sums
“3” Information on the accumulated VAT sums
“4” Information on the active decimals and VAT rates record for the Z-report with number Record
“5” Information on the decimals and VAT rates record with number Record
“6” Information on reset record with number Record

73H (115) PROGRAMMING A GRAPHIC LOGO


Data field: <RowNum>,<Data>
or R<RowNum>
Response: None
or <Data>
R If the letter is present at the beginning of the command, then the command returns the data of
the corresponding line.
RowNum Shows the line, which is being programmed - a number between 0 and 95
Data Graphic data. Two symbols for each byte of information are entered in the hexadecimal code
(Two symbols for every byte). The length of the data is up to 54 bytes, and if they are less, an
automatic addition of “00” follows.
This command offers the option to define a graphic logo with dimensions 72 x 12 mm (432 x 96 dots)
designed by the user themselves. The printing of this logo is activated with command 43. It is printed out
immediately before the HEADER - at the beginning of each fiscal or non-fiscal receipt. In order to define the
whole logo, the command must be executed 96 times - once for each line. After RESET of memory, default logo is
active.

74H (116) READ FISCAL MEMORY BLOCK


Data field: [<Option>]<Address>,<Bytes>
Response: Data
Option One byte with value “*”. If present the command causes physical reading of data in flash of
the fiscal memory.
Address Starting address in the fiscal memory in hexadecimal representation (up to 5 hexadecimal
digits). From 00000 to 1FFFF for 1 Mbit fiscal memory.
Bytes Block length. From 1 to 64.
Data The data, read from the logical or physical fiscal memory in hexadecimal form (2 symbols
for each data byte).

25
Fiscal Printer FP-700

76H (118) READ CODE MEMORY BLOCK


Data field: <Address>,<Bytes>
Response: Data
Address Starting address in the code memory in hexadecimal representation (up to 5 hexadecimal
digits). From 00000 to 2FFFF.
Bytes Block length. From 1 to 64.
Data The data, read from the code memory in hexadecimal form (2 symbols for each data byte).
The value (Address+Bytes) may not be greater than 30000h (for example Address=2FFF0 and Bytes=17 is
wrong).
This command offers the option to read directly a block of data from the code memory (firmware). It is
possible to read the whole code memory, sending the command many times with different start addresses.
The command is permitted only when the service jumper is placed on the main board of the printer.

77H (119) WORKING WITH ELECTRONIC JOURNAL


Data field: <Type>[,<InpData>]
Response: Depends on input data
Type Command class. A byte with value:
'C' Verification of ELECTRONIC JOURNAL or a part of it.
'I' Information about ELECTRONIC JOURNAL.
'N' Reading of a next text line from ELECTRONIC JOURNAL.
'R' Data reading from ELECTRONIC JOURNAL.
'P' Data printing from ELECTRONIC JOURNAL.
'i' Print information for ELECTRONIC JOURNAL.
Commands class 'C': Verification of ELECTRONIC JOURNAL or a part of it.
P[#] Prints report about the validity of all SHA-1 check sums for Z-reports, found in
ELECTRONIC JOURNAL. The check sums are compared with those from the
fiscal memory. If a difference is found, a line with the number of the Z-report, date
and time is printed. If the optional symbol ‘#’ presents, information for all SHA-1
is printed regardless if they are valid or not.
R[<Num>] Returns information from ELECTRONIC JOURNAL for Z-report with number
Num. The data is read as a document. Response format:
P,FDocs,DT,SK Information about the found Z-report.
FDocs Document number of the Z-report.
DT Date and time of the Z-report in format „DD-MM-YYYY hh:mm:ss”.
SK 40 symbols – SHA-1 of the Z-report in a hex format.
F No data is found in ELECTRONIC JOURNAL for this Z-report.
Z[<Num>] Returns information from ELECTRONIC JOURNAL for a Z-report wiyh number
Num. It is read the real text of the document records in ELECTRONIC
JOURNAL, SHA-1 is calculated and compared with SHA-1 of the Z-report. It is
possible a long time to be necessary for the command to be finished in case of too
many documents.
Response:
P,Docs,Bytes,SK The check sum is valid. The documents (Docs) and data bytes (Bytes) are
read. SK is 40 symbols – the check sum in a hexadecimal.
F,Docs,Bytes,SK,SZ The check sum is invalid. Docs and Bytes are read. SK and SZ are 40
symbols each – the respectively stored value in ELECTRONIC
JOURNAL and the calculated one.
F No data is found in ELECTRONIC JOURNAL for this Z-report.
Commands class 'I': Information about ELECTRONIC JOURNAL.
[X] The 'X' symbol can be omitted. Response:
P,Tot,Used,C1,C2,D1,D2
Tot Total capacity of the electronic journal in bytes.
Used Used space of the electronic journal.
C1 First number of a Z-report in the electronic journal.
C2 Last number of a Z-report in the electronic journal.
D1 First number of document Z-report in the electronic journal.

26
Fiscal Printer FP-700

D2 Last number of a document Z-report in the electronic journal.


Commands class 'R': Data reading from ELECTRONIC JOURNAL.
<D1>[,<D2>] Returns the first line from document D1 and sets the end of searching are
document D2 (including). Next lines are got with command class 'N'. If
the second argument is missed, only one document is set - D1.
*<Cl>,[<D1>[,<D2>]] Returns the first line from document number D1, for Z-report Cl and sets
the end of searching at document D2 (including) for the same Z-report.
Next lines are got with command class 'N'. Document counter is for the Z-
report. Example: command „*5,1,3“ will select the first tree documents
from Z-report number 5. If D2 is missed, only one document is selected –
D1. If D1 and D2 are missed, all documents are selected for the Z-report.
<Flg>,<DT1>,<DT2> Returns the first line from a document with date and time DT1 and sets the
searching end at document with date and time DT2 (including). There is a
filtration of the selected documents depending on the argument Flg. Next
lines are got with command class 'N'. Input arguments format:

Flg A symbol which sets the type of document for reading:


'A' All types of documents.
'F' Fiscal receipts.
'S' Receipts form service manipulations.
'X' X-reports.
'Z' Z-reports.
DT1 Beginning and end date of the check up in format DDMMYY[hhmmss]. If
time is missed a default value is used „000000“ ([Link]).
DT2 End date and time of the check up in format DDMMYY[hhmmss]. If the
time is missed a default value is used „235959“ ( [Link]).
The tree previous subcommands (by document, Z-report and data) return one of the next responses:
P,Text There is a destroyed text line in ELECTRONIC JOURNAL. Its content is in Text.
The read text is always coded with table 1251, regardless if it is chosen a DOS
table by the switches. The code table is important for the right calculation of the
SHA-1 check sum.
*, There is a destroyed text line in ELECTRONIC JOURNAL and it is an empty line -
document separator. Can be used for counting of the found documents or for
stopping of the reading exactly at the end of the document.
F No more data in ELECTRONIC JOURNAL.
Example:
One of the previous commands is sent. If the response is 'F', there is not such data in ELECTRONIC
JOURNAL. Otherwise a command class 'N' is being sent until a response 'F' (no more data) is received.
By this way all desired lines from ELECTRONIC JOURNAL can be got one by one as a text.
Q<Addr>,<Bytes> Direct reading of data from ELECTRONIC JOURNAL in a raw format.
This command returns 2*Bytes symbols starting from address Addr. Addr
is set hexadecimal and Bytes – decimal. Data is returned in hexadecimal
format.
q<Addr>,<Bytes> Direct reading of data from ELECTRONIC JOURNAL in a raw format.
The difference in comparison with the previous command: the symbols are
returned as a normal text if they are printable (above 1Fh) or in format
„<XX>” (hexadecimal), if they are check numbers (under 20h).
Commands class 'N':
There is no additional data after this symbols. It is used in combination with some
of the commands class 'R'. Reads the next line in ELECTRONIC JOURNAL. The
responses are the same as the initial command class 'R' and described above.
ATTENTION! The sending of this command without previous one from class 'R'
setting a range of the inquire can cause reading of illegal information!
Commands class 'P': Data printing from ELECTRONIC JOURNAL.
[<Fnt>]<D1>[,<D2>] Documents from number D1 to D2 including are printed. If the second
argument is missed, only one document is selected - D1.
[<Fnt>]*<Cl>,[<D1>[,<D2>]] Documents from number D1 for Z-report Cl to number D2
including for the same Z-report are printed. The document counter is for
the Z-report. Example: command „*5,1,3“ will print the first 3 documents

27
Fiscal Printer FP-700

from Z-report number 5. If D2 is missed, only one document is selected –


D1. If D1 and D2 are missed, all documents for the Z-report are selected.
[<Fnt>]<Flg>,<DT1>,<DT2> Documents with date and time from DT1 to DT2 including are
printed. There is a filtration of the documents selected depending on the
argument Flg. Input arguments format:
Fnt Optional parameter. By virtue of it a document from ELECTRONIC
JOURNAL can be printed with a font with a set height (if the printer can
accept it). One byte with a possible value:
'>' Printing with a normal font.
'<' Printing with ½ font height.

Flg A symbol which sets the type of document for reading:


'A' All types of documents.
'F' Fiscal receipts.
'S' Receipts form service manipulations.
'X' X-reports.
'Z' Z-reports.
DT1 Beginning and end date of the check up in format DDMMYY[hhmmss]. If
time is missed a default value is used „000000“ ([Link]).
DT2 End date and time of the check up in format DDMMYY[hhmmss]. If the
time is missed a default value is used „235959“ ( [Link]).
The 3 previous subcommands (by document, Z-report and data) return in a result the count of printed
documents as an integer.
The copies of the documents from ELECTRONIC JOURNAL are almost identical with the original
documents. The differences are:
5 The copies never have a graphical logo before the header.
6 In the copies there is no graphical fiscal logo.
7 The notice “FISCAL RECEIPT” with fiscal logo is substituted with notice “FISCAL
RECEIPT - COPY” with double wight.

INFORMATION FOR THE VIEW OF THE RETURNED TEXT AT ELECTRONIC JOURNAL


READING
8 The read documents do not have a graphical logo.
9 The centering is imitated with adding of interval at the beginning of the line.
10 Printing with double width is imitated with adding of interval before each letter.
11 If in the fiscal or officail receipts there is a barcode, it will be substituted with a notice
„БАРКОД [XXXX]” („BARCODE [XXXX]”), where XXXX is the text string from the barcode.
12 The read line include only text without the symbols <CR> and <LF> at the end of the line. At
getting a text information from ELECTRONIC JOURNAL these symbols must be added at the end of each
line. If this is done, an external program will be able to calculate the SHA-1check sum and to collate it with
the one recorded in ELECTRONIC JOURNAL - they should be the same.
13 A returned line with a prefix '*' (end of document) must be added in the file too (as an
empty line – only the symbols <CR> and <LF>), because takes a part in SHA-1 for the Z-report.

78H (120) SENDING DATA TO FTP


Data field: <Option> | <Data>
Response: Answer
Option Selects the required action. Possible values:
‘‘I’ Information about data sent and accumulated.

Returns count of sent Z reports and all accumulated Z Reports.

“L” Send all accumulated but not send until the moment Z Reports.

Data <YY1>[<MM1>[<DD1>]][,<YY2>[<MM2>[<DD2>]]]
Sends Z Reports for selected period.
or
<N><FN>,<LN>
Sends Z Reports from given number range
/Because of specific format of report files there can be Z Reports which are in same date as
requested range/

28
Fiscal Printer FP-700

YY1 Starting year - 2 bytes (00-99)


MM1 Starting month - 2 bytes (01-12)
DD1 Starting day - 2 bytes (01-31)
YY2 End year - 2 bytes (00-99)
MM2 End month - 2 bytes (01-12)
DD2 End day - 2 bytes (01-31)
FN Start Z Report number (1 - )
LN Last Z Report number ( - 4000)

Answer <ErrCode>[,<Zfirstsent>,<Zlastsent>]

ErrCode Exit code:


‘P’ Successful command.
Zfirstsent – Number of first sent Z report
Zlastsent – Number of last sent Z report
‘F’ Unsuccessful command.
‘E’ Successful command, but no data for sending.

7FH (127) RAM RESET


Data field: None
Response: None
The command clears the operational memory of the printer (like the CMOS error). After executing it, the clock
must be set with command 61, which writes a “CMOS error” record in the fiscal memory with this date and time.
The command is permitted only when the service jumper is placed on the main board of the printer.
There is place for 100 records in the fiscal memory.

86H (134) EJ REPORT AND CLOSING OF EJ CARD

Data field: Report


Response: ErrCode

Report One byte with value “R”

ErrorCode One byte, showing the result from the operation and having the following meaning:
- ‘P’ Successful command

- ‘F’ Unsuccessful command


Command causes printing of EJ data report and closing of EJ card (EJ card can not be used more for
normal working with printer, it can be used only for references.)

90H (144) SETTING GPRS DATA

Data field:
<gprsAPN><Tab><gprsUser><Tab><gprsPwd><Tab><gprsPIN><Tab><ftpAddr><Ta
b><ftpUser><Tab><ftpPwd><Tab><ftpDir><Tab><ftpPort>

Response: ErrorCode

gprsAPN - GPRS APN Name


gprsUser - GPRS User Name
gprsPwd - GPRS Password
gprsPIN - SIM Card PIN
ftpAddr - FTP Address
ftpUser - FTP User Name
ftpPwd - FTP Password

29
Fiscal Printer FP-700

ftpDir - FTP Dirctory


ftpPort - FTP Port

ErrorCode One byte, showing the result from the operation and having the following meaning:
- ‘P’ Successful command

- ‘F’ Unsuccessful command

APPENDIX 1
FP-700 CHARACTER SET

0_ 1_ 2_ 3_ 4_ 5_ 6_ 7_ 8_ 9_ A_ B_ C_ D_ E_ F_

_0 0 @ P ` P € ° Ŕ Đ ŕ đ

_1 ! 1 A Q a Q ‘ ˇ ± Á Ń á ń

_2 “ 2 B R b R ‘ ’ ˘ ˛ Â Ň â ň

_3 # 3 C S c S ƒ “ Ł ł Ă Ó ă ó

_4 $ 4 D T d T „ ” ¤ ´ Ä Ô ä ô

_5 % 5 E U e u … • Ą µ Ĺ Ő ĺ ő

_6 & 6 F V f v † – | ¶ Ć Ö ć ö

_7 ‘ 7 G W g w ‡ — § · Ç × ç ÷

_8 ( 8 H X h x ˜ ¨ ¸ Č Ř č ř

_9 ) 9 I Y I y ‰ ™ © ą É Ů é ŭ

_A * : J Z j z Š š Ş ş Ę Ú ę ú

_B + ; K [ k { ‹ › « » Ë Ű ë ű

_C , < L \ l | Ś ś ¬ Ľ Ě Ü ě ü

_D - = M ] m } Ť ť ˝ Í Ý í ý

_E . > N ^ n ~ Ž ž ® ľ Î Ţ î ţ

_F / ? O _ o Ź ź Ż ż Ď ß ð

APPENDIX 2
LIST OF FISCAL COMMANDS - IN ASCENDING ORDER

HEX DEC Function


21h 33 Clear the display
23h 35 Show text on lower line of display
29h 41 Write current settings to flash memory
2Bh 43 Set header, footer and printing options
2Ch 44 Advance paper
2Dh 45 Paper cut
2Fh 47 Show text on upper line of display
30h 48 Open fiscal receipt (invoice)
32h 50 Tax rates set during selected period
33h 51 Subtotal
35h 53 Calculate total (Payment command)
38h 56 Close fiscal receipt
3Ah 58 Sell a programmed article
3Ch 60 Cancel receipt
3Dh 61 Set date and time

30
Fiscal Printer FP-700

3Eh 62 Get current date and time


3Fh 63 Show date and time on display
40h 64 Info on last fiscal entry
41h 65 Info on daily accumulated sums
42h 66 Select printer language
43h 67 Report on changed header lines
44h 68 Number of free fields in fiscal memory
45h 69 Daily financial report with/without writing to fiscal memory
46h 70 Internal debiting/crediting
47h 71 Print diagnostic info
48h 72 Fiscalization
49h 73 Detailed report of the fiscal memory selected by number of entry
4Ah 74 Read status bytes
4Ch 76 Status of the fiscal transaction
4Fh 79 Short report of the fiscal memory selected by date of entry
52h 82 Set next service date
53h 83 Set multiplier, decimals and enabled taxes
55h 85 Program additional payment types
56h 86 Get last fiscal memory record date
59h 89 Program production test area
5Ah 90 Return diagnostic info
5Bh 91 Program serial number and fiscal memory number
5Dh 92 Print separator line
5Eh 94 Detailed of fiscal memory (selected by date of entry)
5Fh 95 Short report of fiscal memory (selected by entry number)
61h 97 Return tax rates
62h 98 Set tax registration number
63h 99 Return tax registration number
64h 100 Show free text on display
65h 101 Set operator’s password
66h 102 Enter operator’s name
67h 103 Info on current receipt
68h 104 Clear data on operator
69h 105 Operator report
6Ah 106 Drawer kick-out
6Bh 107 Define items and items info
6Dh 109 Print duplicate receipt
6Eh 110 Info on accumulated sums (different payment types)
6Fh 111 Report on programmed items
70h 112 Reading info on operator
71h 113 Read the number of the last printed document
72h 114 Read info on fiscal entry or period
73h 115 Program graphic logo
74h 116 Read fiscal memory block
76h 118 Read code (firmware) memory block
77h 119 Read and print monthly report
7Fh 127 Service RAM reset

APPENDIX 3

DESCRIPTION OF CORRESPONDING ERROR CODES

DESCRIPTION ERROR CODE


SYNTAX ERROR -150001
INVALID COMMAND -150002
PRINTER IS BLOCKED -150010
DATETIME NOT SET -150100
PAPER END -150101
EL JOURNAL ERROR -150102

31
Fiscal Printer FP-700

MATH OVERFLOW -150103


INVALID PASSWORD -150104
LESS HEADER LINES -150105
INVALID SERIAL NUMBER -150106
INVALID DATA -150107
PRINTER FAULT -150108
INVALID IOSA -150109
INVALID RECEIPT NUMBER -150110
RECEIPT IS OPEN -150200
RECEIPT NOT OPEN -150201
SHIFT IS STARED -150202
NO SHIFT STARED -150203
SHIFT OVER 24H -150204
TIME BEFORE FM TIME -150205
TIME BEFORE EJ TIME -150206
PROBABLY WRONG TIME -150207
NOT IN SERVICE MODE -150208
CANNOT READ EJ -150209
CANNOT WRITE EJ -150210
CANNOT FORMAT EJ -150211
CANNOT OPEN DOCUMENT -150212
NO ACCESS TO DISPLAY -150213
JOURNAL NEAR END -150214
CANNOT FORMAT VALID EJ -150215
FORBIDDEN RECEIPT TYPE -150216
TIME ALREADY ADJUSTED -150217
TIME BEFORE CURRENT TIME -150218
MALOPR NOT ENABLED -150219
INVALID ARTICLE GROUP -150223
VOID NOT ALLOWED -150224
STORNO STARTED -150225
REST NOT ALLOWED -150226
INVALID MAC ADDRESS -150227
FM NOT FORMATTED -150300
SERIAL NUMBER NOT SET -150301
TAX NUMBER NOT SET -150302
VAT RATES NOT SET -150303
NO ACTIVE VAT RATES -150304
NOT FISCALISED -150305
IS FISCALISED -150306
NO RECORDS IN FM -150307
NO FM RESPONSE -150308
TOO MANY RECORDS -150309
SER NUM ALREADY SET -150310

32
Fiscal Printer FP-700

FM READ ONLY -150311


FM DISCONNECTED -150312
NOT IOSA NUMBER -150313
IN SERVICE REPAIR -150314
NOT IN SERVICE REPAIR -150315
FISCAL NUMBER SET -150316
DATA NOT SENT -150317
SERVICE CONTRACT EXPIRED -150318
NO HEADER RECORD -150319
PLU NOT EXISTS -150400
DPT NOT EXISTS -150401
INVALID VAT GROUP -150402
VAT NOT PERMITED -150403
TOO MANY SALES -150404
VOID AFTER PAY OR DISCOUNT/MARK UP -150405
NEGATIVE TOTAL -150406
DISCOUNT TOO BIG -150407
VOID NONEXISTING SALE -150408
PAYMENT STARTED -150409
PAYMENT NOT DEFINED -150410
EVERYTHING IS PAID -150411
TOTAL NOT PAID -150412
NOT ENOUGH CASH -150413
CASH ONLY ALLOWED -150414
NO CHANGE ALLOWED -150415
NONZERO OPERATOR DATA -150416
NONZERO PLU DATA -150417
NONZERO DPT DATA -150418
NO FREE PLUS -150419
TOO MANY TEXT LINES -150420
NO TEXT LINES -150421
NONZERO PAY DATA -150422
PLU SOLD IN RECEIPT -150423
NO VELEPROD INFO -150424
VELEPROD INFO SET -150425
NO VELEPROD RECEIPT -150426
ZERO OR NEG SUM INPUT -150427
PAYMENT TYPE NOT ALLOWED -150428
DUPLICATE NAME -150429
NO ARTICLE NAME -150430
BLANK ARTICLE NAME -150431

33

You might also like