Конфигурирование модуля ЕГАИС

Обращение к серверам ЕГАИС для передачи информации об обороте алкогольной продукции осуществляется через транспортный модуль.

Перед подключением модуля необходимо убедиться в доступности транспортного модуля.

Подключение транспортного модуля Egais возможно при наличии идентификатора модуля, данных о размещении плагина и других параметрах. Для указания параметров транспортного модуля необходимо создать файл с расширением .xml, например, egais.xml, в директории /linuxcash/cash/conf/plugins.

НаименованиеТип данныхВозможные значенияОписаниеПримечания
idстроковый

Egais

Уникальное наименование модуля


pluginстроковый/linuxcash/cash/plugins/libEgais.so

Полный путь до плагина


addressстроковый
  • http://<host>:<port>/xml
    (для старого формата чека)
  • http://<host>:<port>/xml?type=ChequeV3
    (для формата чека ChequeV3)
  • http://<host>:<port>/xml?type=ChequeV4
    (для формата чека ChequeV4)

Url транспортного модуля ЕГАИС, используемый для розничной продажи по безналичному расчету:

  • акцизной алкогольной и спиртосодержащей продукции (старый формат чека и формат ChequeV3),
  • разливной маркированной алкогольной продукции при оказании услуг общественнного питания (формат чека ChequeV4).

timeoutцелочисленныйЦелое положительное числоТаймаут ожидания ответа от сервера в секундахПо умолчанию 30 секунд
Пример настройки
<objects>
    <object id="Egais" plugin="/linuxcash/cash/plugins/libEgais.so" >
        <property name="address">
           <value>http://127.0.0.1:58080/xml</value>
       </property>
       <property name="timeout">
          <value>30</value>
       </property>
    </object>
</objects>
Начиная с версии 4.6.184 в кассовом ПО Artix поддержана работа с форматом ChequeV3

Для работы с форматом ChequeV3 необходимо:

  1. В БД Dictionaries таблице Shop заполнить поле fsraridexcise.
  2. В файле /linuxcash/cash/conf/plugins/egais.xml задать значение параметра address в виде "http://<host>:<port>/xml?type=ChequeV3".
Пример настройки для использования формата чека ChequeV3
...
<property name="address">
<value>http://127.0.0.1:58080/xml?type=ChequeV3</value>
</property>
...
Начиная с версии 4.6.248 в кассовом ПО Artix поддержана работа с форматом ChequeV4

Для работы с форматом ChequeV4 необходимо:

  1. В БД Dictionaries таблице Shop заполнить поле fsraridexcise.
  2. Указать объем/вместимость тары (в литрах):
    1. для алкогольных товаров – в БД Dictionaries таблице Tmc заполнить поле unit_weight,
    2. для алкогольных наборов – в БД Dictionaries таблице Alcoset заполнить поле taracapacity.
  3. В файле /linuxcash/cash/conf/plugins/egais.xml задать значение параметра address в виде "http://<host>:<port>/xml?type=ChequeV4".
Пример настройки для использования формата чека ChequeV4
...
<property name="address">
<value>http://127.0.0.1:58080/xml?type=ChequeV4</value>
</property>
...

Настройка кассы

Настройка модуля ЕГАИС

Параметры взаимодействия с модулем УТМ задаются в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

НаименованиеТип данныхВозможные значенияОписаниеПримечания
enableлогический
  • true
  • false
Включение проверки ЕГАИСПо умолчанию false
barcodeMaskстроковый
Маска для проверки штрих-кода акцизной маркиПо умолчанию "([1-9]\d{2}|\d([1-9]\d|\d[1-9])){2}([1-9]\d{7}|\d([1-9]\d{6}|\d([1-9]\d{5}|\d([1-9]\d{4}|\d([1-9]\d{3}|\d([1-9]\d{2}|\d([1-9]\d|\d[1-9])))))))(0[1-9]|1[0-2])(1[8-9]|[2-9][0-9])([1-9]\d{2}|\d([1-9]\d|\d[1-9]))[0-9A-Z]{129}|\d\d[a-zA-Z0-9]{21}\d[0-1]\d[0-3]\d{10}[a-zA-Z0-9]{31}|[0-9]{40}"

enableAdditionalBarcode

логический
  • true
  • false

Включить сканирование дополнительного штрих-кода DataMatrix акцизной марки

По умолчанию false

additionalBarcodeMask

строковый

Маска для проверки дополнительного штрих-кода DataMatrix акцизной марки

По умолчанию "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"

checkAlcoCode

логический
  • true
  • false
Включить проверку алкокода акцизной марки в БД кассыПо умолчанию false
sendFnInfoлогический
  • true
  • false
Отправлять в качестве номеров документа и кассы значения фискального документа и номера ФНПо умолчанию true
useExciseMarkInInventoryлогический
  • true
  • false
Запрашивать считывание акцизной марки при инвентаризации акцизной продукцииПо умолчанию false
Пример настройки
[EGAIS]
; Настройки плагина ЕГАИС

; Включение проверки ЕГАИС
; По умолчанию false
;enable = false

; Маска для проверки штрих-кода Pdf417 акцизной марки
; По умолчанию "([1-9]\d{2}|\d([1-9]\d|\d[1-9])){2}([1-9]\d{7}|\d([1-9]\d{6}|\d([1-9]\d{5}|\d([1-9]\d{4}|\d([1-9]\d{3}|\d([1-9]\d{2}|\d([1-9]\d|\d[1-9])))))))(0[1-9]|1[0-2])(1[8-9]|[2-9][0-9])([1-9]\d{2}|\d([1-9]\d|\d[1-9]))[0-9A-Z]{129}|\d\d[a-zA-Z0-9]{21}\d[0-1]\d[0-3]\d{10}[a-zA-Z0-9]{31}|[0-9]{40}"
;barcodeMask = "([1-9]\d{2}|\d([1-9]\d|\d[1-9])){2}([1-9]\d{7}|\d([1-9]\d{6}|\d([1-9]\d{5}|\d([1-9]\d{4}|\d([1-9]\d{3}|\d([1-9]\d{2}|\d([1-9]\d|\d[1-9])))))))(0[1-9]|1[0-2])(1[8-9]|[2-9][0-9])([1-9]\d{2}|\d([1-9]\d|\d[1-9]))[0-9A-Z]{129}|\d\d[a-zA-Z0-9]{21}\d[0-1]\d[0-3]\d{10}[a-zA-Z0-9]{31}|[0-9]{40}"
 
; Включить сканирование доп. штрих-кода DataMatrix
; По умолчанию false
; enableAdditionalBarcode = false

; Маска для проверки штрих-кода DataMatrix акцизной марки
; По умолчанию "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"
; additionalBarcodeMask = "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$
 
; Проверять алкокод акцизной марки
; По умолчанию false
; checkAlcoCode = false
  
;Отправлять в качестве номеров документа и кассы значения из ФН
; По умолчанию true
; sendFnInfo = true

; Контролировать АМ при инвентаризации
; По умолчанию false
; useExciseMarkInInventory = false

Использование УТМ активируется параметром enable:

  • при значении true модуль ЕГАИС включен,
  • при значении false модуль ЕГАИС отключен.
При добавлении и сканировании алкогольных товаров помимо штрих-кода товара (EAN13) обязательно сканирование акцизной марки (PDF417), маска которой указывается в параметре barcodeMask секции [EGAIS].
Ручной ввод данных акцизной марки запрещен, данные необходимо вводить только сканером.

В целях дополнительного контроля может быть использован дополнительный штрих-код акцизной марки (DataMatrix). Необходимость сканирования дополнительного штрих-кода акцизной марки задается параметром enableAddtitionalBarcode:

  • при значении true программа запрашивает сканирование дополнительного штрих-кода акцизной марки после того, как считана акцизная марка;
  • при значении false считывание дополнительного штрих-кода акцизной марки не требуется.

Маска для проверки дополнительного штрих-кода DataMatrix акцизной марки определяется параметром additionalBarcodeMask.

При продаже и возврате алкогольной продукции доступна проверка алкокода акцизной марки в БД Dictionaries таблице Alcocode. Для проверки алкокода в БД используется параметр checkAlcoCode:

  • при значении true выполняется проверка наличия алкокода акцизной марки. При отсутствии данных товар не может быть реализован, на экран выводится сообщение "Данная продукция недопустима к продаже";
  • при значении false наличие алкокода акцизной марки не проверяется.

Данные алкокода записываются в товарную позицию в БД Documents таблицу Goodsitem.

Согласно требованиям законодательства определен перечень сведений передаваемых в ЕГАИС:

  • в реквизите номер кассы передавать реквизит (ФН) – номер фискального накопителя,
  • в реквизите номер чека передавать № ФД – номер фискального документа.

Выбор реквизитов документа для отправки в ЕГАИС определяется параметром sendFnInfo:

  • при значении true номер фискального документа и номер фискального накопителя,
  • при значении false программный номер документа и серийный номер ФР.

Инвентаризация алкогольной продукции может проводиться как для простого учета товаров, так и для ведения в БД кассовой программы списка акцизных марок, разрешенных к продаже. Порядок проведения инвентаризации алкогольной продукции определяется параметром useExciseMarkInInventory в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении true работа с алкогольным товаром осуществляется аналогично операциям в чеке продажи: при добавлении и сторнировании товара требуется считывание штрих-кода акцизной марки, запрещено применение модификатора "Количество",
  • при значении false порядок добавления и сторнирования акцизного алкоголя аналогичен работе с обычными товарами.

При закрытии документа инвентаризации в БД Dictionaries в таблице Excisemarkwhite для каждой акцизной позиции создается запись, в которой указывается пара штрих-код товара и акцизная марка. По полученному в результате инвентаризации "белому" списку будет производиться проверка акцизных марок при продаже алкоголя.

Разделение настроек для разных масок акцизных марок

При переходе к версии протокола ЕГАИС 3.0 может возникнуть потребность осуществлять разные проверки для разных масок акцизных марок, например, для "старых" акцизных марок проверять наличие алкокода, а для "новых" – проверять "белый список". В этом случае в секции [EGAIS] в параметре barcodeMask указываются все маски акцизных марок, а в секциях [EGAIS.N] (где N – номер по порядку) указывается параметр barcodeMask с необходимой маской акцизной марки и набором настроек, которые будут применены к акцизным маркам данного вида. Таким образом применение настроек для каждой секции зависит от вида акцизной марки.

Возможность выделения параметра в отдельную секцию указана в таблице:

Наименование настройкиСтатус

enable

общая
sendFnInfo
useExciseMarkInInventory

sendEgaisBeforeCashlessPayment

useSerialNumber
barcodeMask индивидуальная








enableAdditionalBarcode 
additionalBarcodeMask 
checkAlcoCode 
checkTmcAlcoCode
enableExciseMarkVerifyLocal 
enableExciseMarkVerify 
exciseMarkVerifyUrl 
exciseMarkVerifyTimeout 
ignoreExciseMarkVerifyErrors 

По умолчанию все настройки размещены в секции [EGAIS]. При необходимости все или часть индивидуальных настроек можно вынести в отдельную секцию [EGAIS.N]. Если в секции [EGAIS.N] указана только часть индивидуальных настроек, то для остальных настроек будет использовано значение по умолчанию.

В отдельной секции обязательно должна быть указана маска акцизной марки, для которой задаются настройки.

Пример разделения настроек приведен ниже:

Пример
[EGAIS]
;
; Настройки плагина ЕГАИС
;

; Включение проверки ЕГАИС
; По умолчанию false
enable = true

; Отправлять в качестве номеров документа и кассы значения из ФН
; По умолчанию true
;sendFnInfo = true

; Контролировать АМ при инвентаризации
; По умолчанию false
;useExciseMarkInInventory = false

; Отправлять чек в ЕГАИС перед безналичной оплатой
; По умолчанию false
;sendEgaisBeforeCashlessPayment = false
 
[EGAIS.1]
; Маска для проверки штрих-кода Pdf417 акцизной марки
barcodeMask = "\d\d[a-zA-Z0-9]{21}\d[0-1]\d[0-3]\d{10}[a-zA-Z0-9]{31}"

; Включить сканирование доп штрих-кода DataMatrix
; По умолчанию false
enableAdditionalBarcode = true

; Маска для проверки штрих-кода DataMatrix акцизной марки
; По умолчанию "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"
additionalBarcodeMask = "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"

; Проверять алкокод акцизной марки
; По умолчанию false
;checkAlcoCode = false

; Проверять соответствие алкокода акцизной марки коду товара
; По умолчанию false
;checkTmcAlcoCode = false

; Проверять акцизные марки на кассе
; По умолчанию false
enableExciseMarkVerifyLocal = true

; Проверять акцизные марки на сервере
; По умолчанию false
;enableExciseMarkVerify = false

; URL сервера проверки акцизных марок
; Для работы с КС используется следующий URL "http://'IP-адрес КС':8080/CSrest/rest/sales/exciseMark/status"
; По умолчанию http://localhost:8080
;exciseMarkVerifyUrl = "http://localhost:8080"

; Таймаут обращения к серверу проверки акцизных марок в секундах
; По умолчанию 30
;exciseMarkVerifyTimeout = 30

; Игнорировать ошибки обращения к серверу проверки акцизных марок
; По умолчанию true
;ignoreExciseMarkVerifyErrors = true
 
[EGAIS.2]
; Маска для проверки штрих-кода Pdf417 акцизной марки
barcodeMask = "[a-zA-Z0-9]{150}"

; Включить сканирование доп штрих-кода DataMatrix
; По умолчанию false
;enableAdditionalBarcode = false

; Маска для проверки штрих-кода DataMatrix акцизной марки
; По умолчанию "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"
;additionalBarcodeMask = "^(1[0-9]{2}-[0-9]{30}|2[0-9]{2}-[0-9]{29}|0000000)$"

; Проверять алкокод акцизной марки
; По умолчанию false
;checkAlcoCode = false

; Проверять соответствие алкокода акцизной марки коду товара
; По умолчанию false
;checkTmcAlcoCode = false

; Проверять акцизные марки на кассе
; По умолчанию false
;enableExciseMarkVerifyLocal = false

; Проверять акцизные марки на сервере
; По умолчанию false
enableExciseMarkVerify = true

; URL сервера проверки акцизных марок
; Для работы с КС используется следующий URL "http://'IP-адрес КС':8080/CSrest/rest/sales/exciseMark/status"
; По умолчанию http://localhost:8080
exciseMarkVerifyUrl = "http://192.169.1.100:8080"

; Таймаут обращения к серверу проверки акцизных марок в секундах
; По умолчанию 30
exciseMarkVerifyTimeout = 30

; Игнорировать ошибки обращения к серверу проверки акцизных марок
; По умолчанию true
ignoreExciseMarkVerifyErrors = false

Параметры торгового объекта

При обращении к транспортному модулю ЕГАИС касса передает дополнительные параметры для идентификации торгового объекта: ИНН, КПП, адрес, наименование. Параметры идентификации торгового объекта задаются в БД Dictionaries таблицы Shop или конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [Shop].

Источник настроек магазина (ИНН, КПП, адрес, название) определяется параметром paramsSource, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [Shop]:

  • при значении default настройки магазина будут получены из БД кассы, при их отсутствии будут использованы данные из файла ncash.ini:
    • при продаже алкогольной продукции через 1 транспортный модуль атрибуты магазина могут быть заданы на кассе или на КС,
    • при продаже алкогольных товаров через 2 УТМ атрибуты магазина задаются только на КС,
  • при значении db настройки магазина будут получены из БД кассы,
  • при значении config настройки магазина будут получены из конфигурационного файла /linuxcash/cash/conf/ncash.ini.
НаименованиеТип данныхВозможные значенияОписаниеПримечания
paramsSourceстроковый
  • default

  • db

  • config

Источник настроек магазина (ИНН, КПП, адрес, название)По умолчанию default
innстроковый
ИНН торгового объекта
kppстроковый
КПП торгового объекта
addressстроковый
Адрес торгового объекта
nameстроковый
Наименование торгового объекта
Пример настройки
[Shop]
; Настройки магазина

; Источник настроек магазина (ИНН, КПП, адрес, название)
; default – по умолчанию, база данных и конфигурационный файл
; db – база данных
; config – конфигурационный файл
;paramsSource = default

; ИНН магазина
; По умолчанию ""
;inn = "1111111111"

; КПП магазина
; По умолчанию ""
;kpp = "111111111"

; Адрес магазина
; По умолчанию ""
;address = "Барнаул,ул. Калинина,116/44"

; Название магазина
; По умолчанию ""
;name = "Ритейл Сервис"

Печать информации из ЕГАИС на чеке выполняется на основании шаблона egais.xml. 

Блок печати информации из ЕГАИС
<?xml version="1.0" encoding="UTF-8"?>
<!-- Шаблон чека ЕГАИС.-->
<report name = "egais" type="document" cached="true" title="Чек продажи ЕГАИС">
<br/><text align="center" fillsymbol=" " maxwidth="all">$shop.name$</text><br/>
<text align="left" fillsymbol=" " maxwidth="all">ИНН: $shop.inn$</text>
<text align="right" fillsymbol=" " maxwidth="all">КПП: $shop.kpp$</text><br/>
<text align="left" fillsymbol=" " maxwidth="all">КАССА: $cash.code$</text>
<text align="right" fillsymbol=" " maxwidth="all">СМЕНА: $shift.num$</text><br/>
<text align="left" fillsymbol=" " maxwidth="all">ЧЕК: $document.num$</text>
<text align="right" fillsymbol=" " maxwidth="all">ДАТА: </text>
<var name="time_beg" dateformat="d2-mm-yyyy hh:mi"/><br/><br/>
<printer op="barcode" type="QR" barcode='$url_egais$'/><br/><br/>
<extvar name="url_egais" width="-1" quoted="false"/><br/>
<extvar name="signature_egais" width="-1" quoted="false"/><br/><br/>   
</report>

Продажа алкогольной продукции

При формировании чека для отправки в ЕГАИС указывается дата и время добавления первой алкогольной позиции.

Программа запрещает добавление товара в чек, если акцизная марка этого товара была зарегистрирована ранее или товар с такой акцизной маркой был продан. 

Товары с акцизной маркой

Для регистрации продажи алкогольного товара с акцизной маркой в ЕГАИС в свойствах товара устанавливается признак "Необходима регистрация в ЕГАИС". Опционально для алкогольной продукции указывается объем. Указание данных признаков поддерживают форматы AIF и дополнение формата Штрих-М.

Продажа акцизной алкогольной продукции, имеющей минимальную цену, равную 0, может быть запрещена или разрешена. Подробнее о запрете продажи алкогольной продукции можно прочитать в разделе "Цена товара".

Каждая акцизная марка имеет уникальный двумерный штрих-код, поэтому в товарной позиции может быть не более 1 единицы товара. Применение модификатора "Количество" к позиции с маркированным товаром запрещено.

Добавление акцизного алкоголя

Добавление в чек товара с акцизной маркой осуществляется следующими способами:

  1. Последовательным сканированием штрих-кода товара и штрих-кода акцизной марки.
  2. Сканированием штрих-кода акцизной марки. При добавлении товара проверяется наличие акцизной марки в "белом" списке:
    • если акцизная марка найдена в списке, то товар добавится в чек,
    • если для акцизной марки найдено несколько штрих-кодов товара, то на экран будет выведено сообщение "Акцизной марке соответствует несколько штрих-кодов. Сканируйте штрих-код":
      • при сканировании верного штрих-кода товара, товар добавляется в чек продажи,
      • при сканировании несоответствующего штрих-кода товара, на экран будет выведена ошибка "Штрих-код '<отсканированный_штрих_код>' не соответствует акцизной марке", товар в чек не добавляется,
    • если акцизная марка не найдена в списке, то на экран будет выведена ошибка "По акцизной марке товар не найден. Сканируйте штрих-код", товар в чек не добавится. Товар можно добавить в чек по последовательному считыванию штрих-кода товара и штрих-кода акцизной марки.
  3. Последовательным сканированием штрих-кода товара и вводом серийного номера акцизной марки, если штрих-код акцизной марки поврежден.

Возможность добавления алкогольной продукции по серийному номеру в чек задается параметром useSerialNumber в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true в диалоге сканирования акцизной марки будет осуществлена возможность добавления алкогольной продукции по серийному номеру,
  • при значении параметра false при добавлении товара в чек на экран будет выведен диалог сканирования акцизной марки.

Серийный номер акцизной марки содержит серию (3 цифры) и номер (8 или 9 цифр). Ввод серийного номера осуществляется без пробелов, в поле ввода серия и номер визуально разделены на секции.

При вводе серийного номера происходит запрос к БД Dictionaries таблице Excisemarkwhite для осуществления поиска акцизной марки по серийному номеру и типу акцизной марки "ALCOHOL":

  • если марка найдена, то в чек добавляется первый найденный товар по введенному серийному номеру,
  • если марка не найдена, то на экран будет выведено диалоговое окно "Акцизная марка не найдена. Введите серийный номер акцизной марки". Товар не будет добавлен в чек при отказе от операции.

Кассовое ПО Artix позволяет запрещать добавление алкогольной продукции в чек последовательным сканированием штрих-кода товара и штрих-кода акцизной марки. Способ добавления алкоголя в чек, определяется параметром addAlcoholOnlyByExciseMark, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true добавление алкогольных товаров в чек может быть осуществлено только сканированием штрих-кода акцизной марки. При добавлении алкоголя последовательным сканированием штрих-кода товара и штрих-кода акцизной марки на экран будет выведено предупреждение "Алкоголь разрешено добавлять только по акцизной марке",
  • при значении параметра false добавление алкогольных товаров в чек может быть осуществлено любым способом, описанным выше. 

В кассовом ПО Artix реализована проверка доступности сервера ЕГАИС при добавлении алкогольной продукции в чек продажи/возврата или при выборе алкогольной позиции в чеке возврата по чеку продажи. Проверка регулируется параметром checkEgaisAvailableBeforeAddPosition в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true:
    • если сервер недоступен, то на экран будет выведено предупреждение "Сервер ЕГАИС недоступен",
    • если сервер доступен, то алкогольная продукция будет добавлена в чек.
  • при значении параметра false:
    • если сервер недоступен, то при закрытии чека на экран будет выведена ошибка "Ошибка соединения с сервером ЕГАИС. Сторнируйте алкогольную продукцию",
    • если сервер доступен, то алкогольная продукция будет добавлена в чек.

Кассовое ПО Artix позволяет устанавливать для алкогольной продукции минимальную розничную цену равную цене товара, если МРЦ не задана, регулируется параметром setMinRetailPrice в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении true если для алкогольной продукции минимальная розничная цена не задана, то МРЦ будет равна цене товара,
  • при значении false для алкогольной продукции будет использоваться минимальная розничная цена, заданная в БД или равная значению параметра minRetailPrice.

Параметр setMinRetailPrice не работает совместно с параметром minRetailPrice.

НаименованиеТип данныхВозможные значенияОписаниеПримечания

useSerialNumber

логический
  • true
  • false
Использовать серийный номер для получения акцизной марки из БДПо умолчанию false
addAlcoholOnlyByExciseMarkлогический
  • true
  • false
Добавлять алкоголь только по акцизной маркеПо умолчанию false
checkEgaisAvailableBeforeAddPositionлогический
  • true
  • false
Проверять доступность ЕГАИС перед добавлением позицииПо умолчанию false
setMinRetailPriceлогический
  • true
  • false
Устанавливать для позиции минимальную розничную цену равной цене, если минимальная розничная цена не заданаПо умолчанию false
Пример настройки
[EGAIS]
...
; Использовать серийный номер для получения акцизной марки из БД
; По умолчанию false
;useSerialNumber = false
 
; Добавлять алкоголь только по акцизной марке
; По умолчанию false
;addAlcoholOnlyByExciseMark = false

; Проверять доступность ЕГАИС перед добавлением позиции
; По умолчанию false
;checkEgaisAvailableBeforeAddPosition = false

; Устанавливать для позиции минимальную розничную цену равной цене, если минимальная розничная цена не задана
; По умолчанию false
;setMinRetailPrice = false

Добавление акцизного товара другими способами (по коду, по наименованию, с помощью горячих клавиш) запрещено.

При быстром сканировании штрих-кода товара и штрих-кода акцизной марки возможно их объединение ("слипание"), чтобы этого избежать необходимо в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [HW.KEYBOARD] для параметра separateCodes установить значение true. Получившиеся части будут введены последовательно.

Удаление акцизного алкоголя

При сторнировании алкогольной позиции программа запрашивает ввод штрих-кода акцизной марки. После сканирования штрих-кода акцизной марки или ввода серийного номера из чека удаляется именно та позиция, данные которой были считаны, независимо от того, какая позиция была выделена при операции сторнирования.

При сторнировании всего чека, содержащего алкогольные товары, операция выполняется без считывания штрих-кодов акцизных марок.

Товары без акцизной марки

В целях организации электронного журнала учета алкогольной продукции обеспечена возможность формировать и отправлять в ЕГАИС данные об алкогольной продукции, не имеющей акцизную марку. Данные чека при закрытии передаются на сервер ЕГАИС отдельным запросом. Результаты запроса к серверу ЕГАИС сохраняются в БД и на печать не выводятся.

Добавление в чек алкогольных товаров без акцизной марки возможно только по штрих-коду.

В реквизитах алкогольного товара без акцизной марки обязательно указывается код вида алкогольной продукции, а также устанавливается признак алкогольного товара без акцизной марки. Установку свойств алкогольного товара без акцизной марки поддерживает формат AIF и дополнение формата Штрих-М. Если обязательное поле код вида алкогольной продукции не заполнено, то при добавлении товара на экран выводится сообщение "Ошибка добавления алкоголя в чек. Не заполнены обязательные поля товара".

Отсутствие акцизной марки позволяет не контролировать каждую единицу продукции, поэтому к алкогольным товарам без акцизной марки разрешено применение модификатора "Количество".

Сторнирование алкогольных товаров осуществляется в основном режиме без запроса на считывание акцизной марки.

Продажа алкогольной продукции в кластерном режиме

Начиная с версии 4.6.120 реализован поиск алкогольной продукции в БД кассового сервера с учетом кластера.

При использовании кластерного режима возникает необходимость проверки акцизной марки отдельно для каждого из клиентов, подключенных к кассовому серверу. В этом случае при запросе статуса акцизной марки касса отправляет на кассовый сервер запрос, включающий идентификатор кластера. При подключении к кассовому серверу в файле настроек sync-агента /linuxcash/cash/sync/properties/cash.ini устанавливается ID кластера.

Подтверждение продажи алкогольной продукции

Для подтверждения продажи алкогольной продукции осуществляется обращение к УТМ и выполняется регистрация продажи в ЕГАИС. Порядок отправки данных в ЕГАИС и проведение оплаты чека определяется типом оплаты:

  • при оплате чека наличными обращение к транспортному модулю всегда осуществляется после внесения оплаты и перед регистрацией продажи в фискальном регистраторе,
  • при оплате чека по безналу порядок выполнения действий определяется настройками кассовой программы.

Порядок отправки данных в ЕГАИС при оплате по безналу определяется параметром sendEgaisBeforeCashlessPayment в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true факт продажи алкогольной продукции будет направлен в ЕГАИС до проведения безналичной оплаты,
  • при значении параметра false факт продажи алкоголя направляется в ЕГАИС после проведения безналичной оплаты. Значение по умолчанию. При добавлением оплаты чека через банковский терминал осуществляется дополнительная проверка доступа к транспортному модулю с целью снижения рисков возникновения ситуации, при которой после оплаты пропадает связь с сервером ЕГАИС. 
НаименованиеТип данныхВозможные значенияОписаниеПримечания

sendEgaisBeforeCashlessPayment

логический
  • true
  • false
Отправлять чек в ЕГАИС перед проведением безналичной оплатыПо умолчанию false
Пример настройки
[EGAIS]
...
; Отправлять чек в ЕГАИС перед безналичной оплатой. По умолчанию false
; sendEgaisBeforeCashlessPayment = false

В случае успешной проверки на чековой ленте печатается URL и цифровая подпись (QR-код). 

Согласно приказу Федеральной службы по регулированию алкогольного рынка от 01.02.2018 № 30 "О перечнях сведений, содержащихся в штрих-коде документа, предоставляемого покупателю, о факте фиксации информации о розничной продаже алкогольной продукции в единой государственной автоматизированной информационной системе учета объема производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции" Росалкогольрегулирование считает возможным не наносить отдельного штрих-кода в рамках введения системы ЕГАИС и использовать единый штрих-код для ЕГАИС и ККТ. Проверка факта фиксации розничной продажи по единому штрих-коду, будет успешно осуществляться в прежнем режиме через мобильное приложение Росалкогольрегулирования «Антиконтрафакт Алко».

Для отключения печати квитанции при продаже товаров, проходящих проверку ЕГАИС, необходимо удалить шаблон квитанции egais.xml из директории /linuxcash/cash/reports.

Если при продаже алкоголя транспортный модуль недоступен, то на экран кассира выводится сообщение об ошибке:

  • если сообщение от ЕГАИС может быть интерпритированно кассой, то оно отобразится на экране кассира,
  • если интерпритация сообщения невозможна, то на экран будет выведена ошибка "Ошибка обращения к ЕГАИС. Сторнируйте алкогольную продукцию".

Такой товар не может быть реализован (возвращен).

Если проверка завершается неудачей – закрытие чека блокируется, в этом случае необходимо вернуться к списку товаров и удалить алкогольную продукцию.

При добавлении в чек алкогольного товара, у которого не указан один из обязательных параметров, на экран будет выведено сообщение "Ошибка добавления алкоголя в чек. Не заполнены обязательные поля товара". Такой товар нельзя добавить в чек.

Отмена продажи алкогольной продукции

Отмена продажи в ЕГАИС отправляется при:

  • сторнировании всех позиций в документе,
  • добавлении новой товарной позиции с акцизным алкоголем в режиме формирования (если чек продажи был ранее отправлен в УТМ). 

При отправке чека ЕГАИС может возникнуть ситуация, когда сервер оборвал соединение, но при этом данные акцизной марки дошли до сервера УТМ и чек был зарегистрирован. В этом случае отмена продажи алкогольной продукции в ЕГАИС отправлена не будет.

Отмена в ЕГАИС регистрируется как возврат.

Пример

Пусть имеется чек продажи:

  1. Водка "Петр 1"
  2. Вино "Сладость лозы"

Перед осуществлением безналичной оплаты чек продажи с 2-мя позициями акцизного алкоголя был отправлен в УТМ. При оплате обнаружилась недостача средств на банковской карте.

После закрытия ошибки оплаты пользователь переходит в режим формирования документа продажи и сторнирует позицию Водка "Петр 1". В УТМ отправляется отмена операции (чек возврата).

При переходе в подытог перед повторной оплатой по безналу в УТМ отправляется чек продажи только с позицией Вино "Сладость лозы".

В случае, если УТМ уже обработал отправленный ранее чек возврата, то чек продажи может быть закрыт. Если чек возврата в УТМ еще не обработан, то необходимо дождаться обработки сообщений в очереди УТМ.

Примечание: обработка сообщений в очереди осуществляется в течение 2 минут.

Возврат алкогольной продукции

Возврат алкогольных товаров с акцизной маркой в торговую сеть может быть выполнен двумя способами:

  1. При возврате товара в режиме "Возврат".
  2. При возврате по чеку продажи.

Возврат алкогольной продукции по чеку продажи на другой кассе запрещен до версии 4.6.144 включительно.

Алкогольные товары с акцизной маркой не могут быть возвращены в режиме "Возврат по чеку продажи", если отключена форма выбора товаров для возврата, так как для возврата требуется сканирование штрих-кода акцизной марки каждой единицы товара. В этом случае при переходе к формированию чека возврата товары с акцизной маркой удаляются из чека.

Выбор позиций для возврата алкогольных товаров с акцизной маркой осуществляется тремя способами:

  1. Вручную при помощи клавиатуры (клавиши навигации, Enter) с последующим считыванием штрих-кода или ввода серийного номера акцизной марки.
  2. Считыванием штрих-кода товара с последующим считыванием штрих-кода или ввода серийного номера акцизной марки.
  3. Считыванием двумерного штрих-кода акцизной марки.

Выбор алкогольных товаров с акцизной маркой в форме выбора позиций для возврата не может быть отменен. Сторнирование выбранных позиций можно выполнить в режиме формирования чека возврата по чеку продажи.

Возврат алкогольных товаров без акцизной марки осуществляется в основном режиме, поскольку не требуется считывания штрих-кода акцизной марки.

Если акцизный алкоголь был возвращен на другой кассе, то невозможна повторная продажа этого товара на кассе, на которой он был продан изначально.

Проверка акцизных марок

Регламент работы по проверке акцизных марок при продаже и возврате акцизного алкоголя определяется структурой торговой сети. Проверка акцизной марки предполагает:

  • проверку на факт продажи/возврата алкоголя с акцизной маркой,
  • проверку статуса акцизной марки (зарезервирована, продана и т.д.),
  • проверку акцизной марки в "белом" списке (акцизные марки, разрешенные к продаже).

В соответствии с устройством сети проверка акцизных марок может быть выполнена:

  • на кассе и на сервере – для больших сетей, включающих N-е количество магазинов под управлением кассового сервера,
  • на кассе – для небольших торговых объектов, не оборудованные кассовыми серверами.

При добавлении акцизного товара в чек всегда выполняется проверка данных в документах продаж в рамках всех смен, данные о которых хранятся на кассе:

  • если товар с соотвествующей акцизной маркой не был продан, то его разрешено добавлять в чек продажи,
  • если такой товар был продан, то его разрешено добавлять в чек возврата.

Возможность дополнительной проверки акцизных марок может быть настроена в соответствии с описанием ниже.

При добавлении товара с акцизной маркой в чек продажи/возврата будет отправлен запрос статуса акцизной марки на сервер. Если при запросе статуса акцизной марки в чеке продажи/возврата возникла сетевая ошибка (сервер недоступен), то в очередь Artix-Queue будет отправлено сообщение с запросом на снятие акцизной марки с резерва (1 случай), однако, если при этом настройка "ignoreExciseMarkVerifyErrors" установлена в "true", то в очередь Artix-Queue будет отправлено сообщение с запросом на резервирование акцизной марки (4 случай). Если через какое-то время будет осуществлен повторный запрос статуса акцизной марки в чеке продажи/возврата, то продажа/возврат товара будут осуществлены (2 случай). При закрытии чека или сторнировании товара с акцизной маркой будет отправлен запрос на изменение статуса акцизной марки (3 случай).

При выполнении повторного запроса на резервирование акцизной марки в чеке продажи/возврата будет осуществлена проверка на соответствие идентификатора чека и идентификатора запроса на резервирование акцизной марки (GUID, БД сервера DocumentsAll таблица Excisemarks поле reserveid):

  • если идентификатор чека и идентификатор запроса резервирования акцизной марки (GUID) совпадают с соответствующими значениями предыдущего запроса, то статус акцизной марки будет изменен (для чека продажи – статус 4, для чека возврата – статус 6);
  • если идентификатор чека и идентификатор запроса резервирования акцизной марки (GUID) не совпадают с соответствующими значениями предыдущего запроса, то статус акцизной марки не будет изменен (для чека продажи останется статус 3, для чека возврата – статус 5).

Структура сети без кассовых серверов (только кассы)

Помимо проверки акцизных марок в данных о продажах в кассовой программе можно настроить проверку "белого" списка акцизных марок (списка акцизных марок, разрешенных к продаже). "Белый" список акцизных марок может быть сформирован при приемке ТТН на кассе или проведении инвентаризации, а также с помощью сервисов обмена выгружен на кассу из товароучетной системы.

Проверка акцизных марок в "белом" списке в БД кассовой программы задается параметром enableExciseMarkVerifyLocal в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true проверка акцизной марки осуществляется в БД Dictionaries в таблице Excisemarkwhite:
    при последовательном сканировании штрих-кода товара и штрих-кода акцизной марки:
    • если акцизная марка найдена в списке, и штрих-код товара соответствует штрих-коду акцизной марки, то товар добавляется в чек продажи,
    • если акцизная марка найдена в списке, а штрих-код товара отсутствует, то товар добавляется в чек продажи,
    • если акцизная марка найдена в списке, но штрих-код товара не соответствует штрих-коду акцизной марки, то на экран выводится ошибка "Акцизная марка не соответствует штрих-коду", товар в чек не добавляется,
    • если акцизная марка отсутствует в списке, то на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже", товар в чек не добавляется.
    при сканировании штрих-кода акцизной марки:
    • если акцизная марка найдена в списке, то товар добавляется в чек продажи,
    • если для акцизной марки найдено несколько штрих-кодов товара, то на экран будет выведено сообщение "Акцизной марке соответствует несколько штрих-кодов. Сканируйте штрих-код":
      • при сканировании верного штрих-кода товара, товар добавляется в чек продажи,
      • при сканировании несоответствующего штрих-кода товара, на экран будет выведена ошибка "Штрих-код '<отсканированный_штрих_код>' не соответствует акцизной марке", товар в чек не добавляется,
    • если акцизная марка отсутствует в списке, то на экран выводится сообщение об ошибке "Товар с такой акцизной маркой запрещен к продаже", товар в чек не добавляется,
  • при значении параметра false проверка акцизной марки в "белом" списке не выполняется.

После проверки акцизной марки в "белом" списке настройками программы может быть предусмотрена проверка соответствия алкокода акцизной марки коду товара в БД Dictionaries в таблице Tmcalcocode. Для проверки используется параметр checkTmcAlcoCode в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [EGAIS]:

  • при значении параметра true:
    • если enableExciseMarkVerifyLocal = false, то алкокод проверяться не будет,
    • если enableExciseMarkVerifyLocal = true и акцизная марка найдена в "белом" списке, то проверка соответствия кода товара и алкокода не выполняется,
    • если checkTmcAlcoCode = true и акцизная марка не найдена в "белом" списке, то выполняется проверка соответствия кода товара и алкокода,
  • при значении параметра false проверка соответствия кода товара и алкокода выполняться не будет.

В таблице Tmcalcocode одному коду товара может соответствовать несколько алкокодов.

НаименованиеТип данныхВозможные значенияОписаниеПримечания
enableExciseMarkVerifyLocalлогический
  • true
  • false
Проверять акцизные марки на кассеПо умолчанию false
checkTmcAlcoCodeлогический
  • true
  • false
Проверять соответствие алкокода акцизной марки коду товараПо умолчанию false
Пример настройки
[EGAIS]
...
  
; Проверять акцизные марки на кассе (по умолчанию false)
; enableExciseMarkVerifyLocal = false
; Проверять соответствие алкокода акцизной марки коду товара
; По умолчанию false
; checkTmcAlcoCode = false

Структура сети с кассовыми серверами

При добавлении акцизного товара в чек продажи/возврата на кассовый сервер в режиме онлайн направляется запрос о текущем статусе акцизной марки добавляемой позиции. Дальнейшее поведение программы определяется полученным статусом.

Проверка регистрации акцизных марок при продаже/возврате производится по умолчанию в рамках всех смен, данные о которых хранятся на кассе. Кассовое ПО позволяет дополнительно осуществлять контроль продажи/возврата акцизного алкоголя в рамках магазина или торговой сети. Информация о зарегистрированных ранее акцизных марках хранится на сервере торгового предприятия. Проверка акцизных марок на сервере задается при помощи параметра enableExciseMarkVerify:

  • при значении параметра true осуществляется проверка зарегистрированных акцизных марок на сервере,
  • при значении параметра false контроль акцизных марок в рамках магазина (торговой сети) не производится.

Для проверки акцизных марок на всех кассах магазина (торговой сети) необходимо задать параметры подключения к серверу:

  • url сервера, где хранятся данные об акцизных марках, – exciseMarkVerifyUrl,
  • таймаут подключения к серверу – exciseMarkVerifyTimeout.

Настройками программы можно разрешать или запрещать продажу/возврат акцизного алкоголя при возникновении ошибок обращения к серверу. Возможность игнорирования возникающих ошибок определяется параметром ignoreExciseMarkVerifyErrors:

  • при значении параметра true в случае возникновения ошибок подключения к серверу они игнорируются, продажа/возврат акцизного алкоголя осуществляется без проверки акцизной марки на сервере,
  • при значении параметра false в случае возникновения ошибок подключения к серверу продажа товара не может быть выполнена. На экран кассира выводится сообщение о том, что акцизная марка не может быть проверена.

Для корректной проверки акцизных марок в белом списке на кассовом сервере необходимо:

В настройках Artix Control Center:

  1. Перейти в меню "Настройки сервера" в раздел "Акцизная продукция".
  2. Активировать настройку "Контроль алкокодов при продаже акцизной продукции (образца 2016 года)".
  3. В настройке "Проверять список разрешенных акцизных марок образца 2018 года алкогольной продукции" установить значение "Проверять по акцизной марке".

Параметры проверки статусов акцизных марок и их резервирования задаются в секции EGAIS конфигурационного файла /linuxcash/cash/conf/ncash.ini.

НаименованиеТип данныхВоможные значенияОписаниеПримечания
enableExciseMarkVerify логический
  • true
  • false
Проверять акцизные марки на сервереПо умолчанию false
exciseMarkVerifyUrl строковый

URL сервера проверки акцизных марок

По умолчанию http://localhost:8080.

В случае размещения кассового сервера на мощностях Artix в качестве url используется значение http://<host>:8080/CSrest/rest/sales/exciseMark/status, где <host> – ip адрес кассового сервера.

При наличии собственного кассового сервера в качестве url необходимо использовать адрес на кассовом сервере до REST сервиса

exciseMarkVerifyTimeout числовой

Таймаут обращения к серверу проверки акцизных марок в секундах

По умолчанию 30 секунд
ignoreExciseMarkVerifyErrors логический
  • true
  • false

Игнорировать ошибки обращения к серверу проверки акцизных марок

По умолчанию true
Пример настройки
[EGAIS]
...

; Проверять акцизные марки на сервере (по умолчанию false)
; enableExciseMarkVerify = false

; URL сервера проверки акцизных марок (по умолчанию http://localhost:8080)
; exciseMarkVerifyUrl = "http://localhost:8080" 

; Таймаут обращения к серверу проверки акцизных марок в секундах(по умолчанию 30 сек)
; exciseMarkVerifyTimeout =  30

; Игнорировать ошибки обращения к серверу проверки акцизных марок (по умолчанию true)
; ignoreExciseMarkVerifyErrors = true

Статус акцизной марки может принимать следующие значения: 

  • 0 – Марка не зарегистрирована в БД,
  • 1 – Товар с такой маркой продан,
  • 2 – Товар с такой маркой возвращен,
  • 3 – Марка зарезервирована в чеке продажи,
  • 4 – Марка снята с резерва в чеке продажи,
  • 5 – Марка зарезервирована в чеке возврата (чеке возврата по чеку продажи),
  • 6 – Марка снята с резерва в чеке возврата (чеке возврата по чеку продажи),
  • 7 – Акцизная марка отсутствует в списке разрешенных к продаже,
  • 8 – Связка кода и алкокода товара отсутствует,
  • 9 – Товар отсутствует на остатке,
  • 10 – Штрих-код для проверки в списке акцизных марок, разрешенных к продаже, не передан,
  • 11 – Соответствие акцизной марки и штрих-кода в списке акцизных марок, разрешенных к продаже, не найдено,
  • 12 – Магазин для проверки остатков не найден,
  • 13 – Штрих-код для проверки остатков не заполнен,
  • 14 – Код товара для проверки остатков не заполнен,
  • 15 – Справочник остатков для товара, по которому проверяем остатки, заполнен не корректно,
  • Любое другое значение – неизвестный статус акцизной марки.

При получении неизвестного статуса акцизной марки проверяется наличие сообщения об ошибке в ответе от сервера:

  • если сообщение присутствует, то на экран выводится ошибка с текстом из сообщения:

    Пример

    Ответ от сервера: [{"status": 20, "message": "Товар был продан в другом магазине", "exciseMarkId": "12QWERTYUIOPLKJHGFDSAZX11111234567890QWERTYUIOPQWERTYUIOPQWERRRRIOPQ"}]

    На экран выводится ошибка: "Товар был продан в другом магазине".

  • если сообщение отсутствует, то на экран выводится ошибка "Неизвестный статус акцизной марки на сервере".

    Пример

    Ответ от сервера: [{"status": 16, "exciseMarkId": "12QWERTYUIOPLKJHGFDSAZX11111234567890QWERTYUIOPQWERTYUIOPQWERRRRIOPQ"}]

    На экран выводится ошибка: "Неизвестный статус акцизной марки на сервере".

Резервирование акцизной марки выполняется после проверки всех действующих ограничений на возраст покупателя, время покупки, а также после обработки данных модификаторов позиции.

Процесс проверки акцизных марок

При добавлении акцизного алкоголя в документ продажи на кассовом сервере осуществляются следующие проверки:

  • получение статуса акцизной марки из данных о продажах,
  • если в данных о продажах акцизная марка не найдена, то выполняется проверка в справочнике статусов акцизных марок,
  • если продажа разрешена или акцизная марка не обнаружена, то проверяется справочник акцизных марок, разрешенных к продаже.

Если по результатам всех проверок товар с акцизной маркой может быть продан, то на кассу передается статус проверок и акцизная марка ставится в резерв продажи на кассовом сервере.

При добавлении акцизного товара в документ возврата на кассовом сервере выполняются проверки:

  • получение статуса акцизной марки из данных о продажах,
  • если в продажах акцизная марка не найдена, то марка проверяется в справочнике статусов акцизных марок,
  • если акцизная марка найдена в справочнике, то на кассу передается статус из справочника,
  • если в справочнике марка не найдена, то на кассу передается справочник из документов продаж.

Если после всех проверок товар с акцизной маркой можно вернуть, то на кассу передается статус проверок и акцизная марка ставится в резерв возврата на кассовом сервере.

Изменение статуса акцизной марки на кассовом сервере в зависимости от операции выполняется:

  • в режиме онлайн (по REST-запросу) – резервирование акцизной марки,
  • в режиме оффлайн (через очередь Artix-Queue) – снятие с резерва акцизной марки (сторнирование), после закрытия чека перевод в статус "продана", "возвращена".

Проверка акцизных марок в справочнике акцизных марок, разрешенных к продаже, выполняется только при соответствующей настройке кассового сервера.

Поведение на кассе

Резервирование акцизной марки выполняется после проверки всех действующих ограничений на возраст покупателя, время покупки, а также после обработки данных модификаторов позиции. В зависимости от статуса акцизной марки, который возвращает кассовый сервер после проверки, поведение кассовой программы может отличаться.

Статус акцизной маркиПоведение кассы при продажеПоведение кассы при возврате
Марка не зарегистрирована в БДТовар с акцизной маркой добавляется в чек и может быть продан.Так как товар не был ранее продан, то на экран выводится сообщение "Товар с акцизной маркой отсутствует на сервере", товар не добавляется в чек и не может быть возвращен
Товар с такой маркой проданТовар в чек не добавляется, на экран выводится ошибка "Товар с акцизной маркой уже был продан".Товар добавляется в чек, его можно вернуть
Товар с такой маркой возвращенТовар добавлен в чек и может быть продан.Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был возвращен"
Марка зарезервирована в чеке продажиТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был зарезервирован".Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был зарезервирован"
Марка снята с резерва в чеке продажиТовар добавляется в чек и может быть продан.Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой еще не продан"
Марка зарезервирована в чеке возврата (чеке возврата по чеку продажи)Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был зарезервирован".Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был зарезервирован"
Марка снята с резерва в чеке возврата (чеке возврата по чеку продажи)Товар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой уже был продан".Товар добавляется в чек, его можно вернуть
Акцизная марка отсутствует в списке разрешенных к продажеТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже".Статус не проверяется на сервере
На кассовом сервере отсутствует связка кода и алкокода товараТовар в чек не добавляется, на экран выводится ошибка «Товар с такой акцизной маркой запрещен к продаже. Код алкогольной продукции не найден».Товар добавлен в чек и может быть возвращен
Товар отсутствует на остаткеТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Нет на остатке".Товар добавлен в чек и может быть возвращен
Штрих-код для проверки в списке акцизных марок, разрешенных к продаже, не переданТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Не заполнен штрих-код для проверки в белом списке".Товар добавлен в чек и может быть возвращен
Соответствие акцизной марки и штрих-кода в списке акцизных марок, разрешенных к продаже, не найденоТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Не найдено соответствие акцизной марки и штрих-кода в белом списке".Товар добавлен в чек и может быть возвращен
Магазин для проверки остатков не найденТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Не найден магазин для проверки остатков".Товар добавлен в чек и может быть возвращен
Штрих-код для проверки остатков не заполненТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Не заполнен штрих-код для проверки остатков".Товар добавлен в чек и может быть возвращен
Код товара для проверки остатков не заполненТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Не заполнен код товара для проверки остатков".Товар добавлен в чек и может быть возвращен
Справочник остатков для товара, по которому проверяем остатки, заполнен не корректноТовар в чек не добавляется, на экран выводится ошибка "Товар с такой акцизной маркой запрещен к продаже. Некорректно заполнен справочник остатков для товара".Товар добавлен в чек и может быть возвращен
Неизвестный статус акцизной маркиТовар в чек не добавляется, на экран выводится ошибка "Неизвестный статус акцизной марки на сервере".Товар в чек не добавляется, на экран выводится ошибка "Неизвестный статус акцизной марки на сервере"

Если акцизная марка была поставлена в резерв, т.е. уже была добавлена в чек, то такой товар в чек не может быть добавлен. После осуществления продажи/возврата акцизная марка позиции снимается с резерва и переходит в статус, соответствующий выполненной операции – продана/возвращена. Снятие резерва с акцизной марки выполняется также при сторнировании товарной позиции из документа. 

Если на кассе установлена версия ПО ниже 4.6.96, то для того чтобы статус резервной марки изменялся после закрытия чек необходимо осуществлять выгрузку продаж после закрытия каждого чека. Для этого необходимо на событие "Действие после закрытия документа" назначить макрос "Выгрузка текущих продаж" с параметром "Выгрузка продаж на КС". Подробнее о задании макросов можно прочитать в разделе "События и макросы".