FPRLIN : INPUT FILE FORMAT DESCRIPTION 1. It is a text file 2. Every line is a separate command (or comment) 3. The first line must be "КARAT" (this is the start mark) 4. The last line must be "END KARAT" (this is the end mark) COMMANDS DESCRIPTION: 1. Command "receipt type" /always before the other commands/ | Rd | n | , where n is a number between 0 and 5 2 - receipt + duplicate If this command is missing the receipt type is the one setup in the ECR 2. Sell command: | * | NAME | PRICE | DECIMAL_POINT | QUANTITY | TAX_GROUP | DEPARTMENT | 0 | | * | - ASCII character '*' | NAME | - 24 ASCII characters. Might include numbers, signs capital latin and cyrilic characters, which will be printed on one line of the receipt as an article description. | PRICE | - 8 number characters ХХХХХХХХ, representing the price and depending on the DECIMAL_POINT field. Leading zero(s) needs to be applied if the number is less than 8 characters: | DECIMAL_POINT| - 1 number character with decipal point position: DECIMAL_POINT = '0' no decimal point, price = ХХХХХХХХ DECIMAL_POINT = '2' with decimal point, price = ХХХХХХ.ХХ | QUANTITY | - 9 number characters ХХХХХХХХХ, representing the quantity ХХХХХХ.ХХХ | TAX_GROUP | - 1 number character representing the tax group. Depends on the ECR: '0' - Tax group A '1' - Tax group B '2' - Tax group C | DEPARTMENT | - 1 number characters, representing the department, between '0' and '9'. 3. Command "discount" : | - | SUM | DECIMAL_POINT| TAX_GROUP | | - | - ASCII character '-'; | SUM | - 8 number characters ХХХХХХХХ, representing the sum of the discount and depending on the DECIMAL_POINT field. Leading zero(s) needs to be applied if the number is less than 8 characters: | DECIMAL_POINT| - 1 number character with decipal point position: DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ | TAX_GROUP | - 1 number character representing the discount tax group. Depends on the ECR: '0' - Tax group A '1' - Tax group B '2' - Tax group C 4. Command "addition": | + | SUM | DECIMAL_POINT| TAX_GROUP | | + | - ASCII character '+'; | SUM | - 8 number characters ХХХХХХХХ, representing the sum of the addition and depending on the DECIMAL_POINT field. Leading zero(s) needs to be applied if the number is less than 8 characters: | DECIMAL_POINT| - 1 number character with decipal point position: DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ | TAX_GROUP | - 1 number character representing the addition tax group. Depends on the ECR: '0' - Tax group A '1' - Tax group B '2' - Tax group C 5. Print text command | Р | TEXT | | TEXT | - 22 ASCII characters, only the first 16 are printed You could print name here or quantity x price and then send the sum only with command following next. The is the recommended practice to avoid the rounding error. The entire file could contain only "Print text" commands. In this case the ECR will print NON FISCAL receipt and the character '*' will be added on the right 6. Sum command | S | SUM | DECIMAL_POINT| TAX_GROUP | DEPARTMENT | 0 | | SUM | - 8 number characters ХХХХХХХХ, representing the sum of the addition and depending on the DECIMAL_POINT field. Leading zero(s) needs to be applied if the number is less than 8 characters: | DECIMAL_POINT| - 1 number character with decipal point position: DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ | TAX_GROUP | - 1 number character representing the addition tax group. Depends on the ECR: '0' - Tax group A '1' - Tax group B '2' - Tax group C | DEPARTMENT | - 1 number characters, representing the department, between '0' and '9'. 7. Payment command - must the last command preceding the END KARAT line: | T | 000001000 | PAY_TYPE | PAY_NAME | | T | - ASCII символ 'T'; | PAY_TYPE | - 1 number character representing the payment type (depending on ECR type, usually between '0' and '3'. | PAY_NAME | - 6 ASCII characters with payment name (ex: 'CASH ') ';' is the comment character all lines starting with ; are ignored