Конвертеры импорт и экспорт XML реализованы для обмена данными системы УКМ 4 c внешними программными продуктами в формате XML. Передача данных осуществляется с помощью файлов в формате XML и возможна только в рамках операционной системы Windows.
Примечание. Данные XML-конвертеры можно использовать для интеграции УКМ 4 с любыми внешними системами. Передача данных из внешних систем в УКМ 4 и из УКМ 4 во внешние системы осуществляется через раздельные каталоги. Набор каталогов един для всех магазинов, зарегистрированных на одном сервере. В одном файле формата XML передается только один тип данных. Конвертер непрерывно дорабатывается для поддержки передачи новых типов данных по запросам пользователей, однако, уже доступные теги и свойства не удаляются.
Принципы обмена данными между УКМ 4 и внешней системой
- Процесс передачи данных между УКМ 4 и внешней системой исключает дублирующие потоки информации. Сервер УКМ 4 получает всю информацию о товарах из сервера внешней системы. Другими словами, в случае наличия центрального сервера внешней системы и сервера главного офиса УКМ 4, информация о товарах будет загружаться и на сервер главного офиса (СГО) и на сервера магазинов. Соответственно, в УКМ 4 репликация товарных справочников с СГО на сервера магазинов будет заблокирована.
- При настройке передачи данных из внешней системы в УКМ 4 необходимо учитывать, что все магазины в УКМ 4 работают с одной номенклатурой. Если настройка сделана неверно, то в УКМ 4 будет использована одна из номенклатур (выбор номенклатуры произойдет случайным образом). Ограничение отслеживается административными методами.
Передача информации из внешней системы в УКМ 4
Настройка интерфейса сервера УКМ 4 для приема данных из СуперМаг
Перед настройкой сервера УКМ 4 убедитесь, что в настройках СуперМаг указаны следующие параметры:
- Каталог куда СуперМаг выгружает информацию;
- Выгружать или не выгружать:
скидки;отделы (если не выгружать отделы, то справочник отделов и привязка товаров к отделам не будут выгружены);продавцы.
Настройки в УКМ4:
- Создать каталог куда СуперМаг будет выгружать информацию;
- На сервере УКМ 4 создать маркетинговую схему и рекламную акцию, в которую должна выгружаться информация по скидкам.
Для подключения конвертера "Супермаг Плюс XML импорт" перейдите в раздел веб-интерфейса "Настройка сервера и оборудования/Конвертеры". В открывшемся окне нажмите кнопку "+ Добавить". Далее выберите из списка конвертер и нажмите "+ Создать":
После создания конвертера откроется окно его настройки:
Название - в поле указывается название конвертера (по умолчанию присваивается значение типа добавляемого конвертера);
Запускается - указывается служба, через которую будет осуществляться обмен данными (при условии, что пользователь имеет право доступа к ресурсам). Существуют следующие варианты значений:
Сервер - обмен будет осуществляться через серверную часть УКМ 4;
Терминал - обмен будет осуществляться через клиентскую (терминальную) часть УКМ 4;
Каталог для загрузки данных - в поле указывается путь до каталога, куда СуперМаг помещает файлы выгрузки данных;
Архивировать файлы после загрузки - если включить данный флаг, то файлы выгрузки, после обработки конвертером, будут сохранены в виде архива в каталоге обмена данными;
Роль, которая назначается кассирам - указывается одна из ролей кассового персонала. Загружаемые записи о кассирах будут привязаны к этой роли. Пароли при загрузке зашифрованы;
Магазины - для выбора магазинов, в которых будет действовать конвертер, кликните по ссылке "Добавить магазины";
Рекламная акция - в поле необходимо указать рекламную акцию, куда будут выгружаться данные по скидкам.
Описание передаваемой информации и правила работы с ней
Тип информации | Имя файла и головного тега | Тип выгрузки |
---|---|---|
Общая информация (одинаковая для всех магазинов) | ||
Справочник свойств товаров | рroperties | всегда полная |
Справочник налогов | taxes | всегда полная |
Справочник отделов магазинов | stocks | всегда полная |
Товарный классификатор | classif | всегда полная |
Товары (включая штрихкоды и дополнительные характеристики товаров) | updateItems | полная/частичная |
Скидка по дисконтным картам | discountPersonal | полная/частичная |
Скидки на товарную группу | classifDiscount | всегда полная |
Скидка на чек (по времени и сумме) | receiptDiscount | всегда полная |
Скидка на количество товара | quantityDiscount | всегда полная |
Информация для пивного чека | BeerEGAIS.xml | всегда полная |
Информация для магазинов | ||
Цены на товары | storePrices | полная/частичная |
Продавцы | storeSellers | всегда полная |
Привязка товаров к отделам магазина | itemStoreStock | всегда полная |
Кассиры | storeCashiers Пример: storeCashiers _[5]_[1]_[F].xml [5] – код магазина в СМ+; [1] – номер выгрузки п/п; [F] – флаг, что файл содержит полный перечень кассиров | всегда полная |
Коды немаркированных акцизных товаров для магазина | storeEGAIS Формируется только для товаров с признаком egaisType= 2 (немаркированный) | всегда полная |
Правила выгрузки информации из СуперМаг в УКМ 4
- Все справочники, кроме товаров (артикулов), цен и содержимого скидки "Персональная на классификатор", выгружаются из СуперМаг полностью (если в них произошли изменения в СуперМаг с момента предыдущей выгрузки). Если изменений в СуперМаг не было, то файлы соответствующих типов не создаются.
- Удаления записей о товарах (артикулах) и ценах в рамках протокола обмена информацией не предусмотрено. Удаление товара (запись в прайс-листе) производится через интерфейс УКМ 4.
- Удаления записей в скидке «Персональная на классификатор» с помощью конвертора не предусмотрено. При необходимости удаления записей следует удалить на сервере УКМ 4 саму скидку (или скидки) и сделать полную выгрузку всех скидок из СуперМаг. Конвертер создаст недостающие скидки заново.
- Полные выгрузки СуперМаг может делать либо по расписанию, либо при ручной выгрузке, при этом загрузку на сервер УКМ 4 предыдущих порций информации СуперМаг не проверяет.
Правила обработки информации сервером УКМ 4
- Каждый файл, передаваемый из СуперМаг в УКМ 4 содержит один тип информации и обрабатывается сервером УКМ 4, как отдельная транзакция, т.е. он или обрабатывается целиком или не обрабатывается вообще. Каждый файл обрабатывается независимо от другого.
- Файлы обрабатываются сервером УКМ 4 в порядке, в котором они перечислены в таблице (см. выше). При этом для каждого типа информации (тега), УКМ 4 ищет файл полной выгрузки с наибольшим номером. Загружает его и все последующие файлы этого же типа с инкрементной выгрузкой.
- Все файлы из входного каталога УКМ 4 переносит подкаталог Archive, добавляя к концу имени дату-время (YYYYMMDDHHMMSS) его обработки. При этом если файл был загружен, то в конец имени дописывается «Load», если файл был пропущен – «Ignor».
- Если при обработке файла возникли ошибки любого типа (как связанные с доступом к файлу, так и с его содержанием), то работа конвертера останавливается, он переходит в режим периодического рестарта. При каждом старте конвертер начинает обработку каталога заново. В этом случае предполагается, что проблема будет исправлена с помощью ручной полной выгрузки из СуперМаг. Файлы, при обработке которых возникли ошибки, остаются в каталоге обмена и УКМ 4 дописывает к их имени [error]. Например - Classif_[1]_[F]_[error]. При рестарте конвертера файлы по-прежнему участвует в обработке информации по общим правилам, но отметка [error] остается у файла навсегда, в том числе и при переносе в подкаталог Archive. При этом файл может быть успешно обработан (load) или может быть пропущен (ignor).
Структура данных, передаваемых из СуперМаг в УКМ 4
В программе СуперМаг можно настроить 4 типа скидок – "скидка по дисконтным картам", "скидка на группу классификатора", "скидка по времени и сумме чека" и "скидка на количество товара". Каждый тип скидки может иметь столько экземпляров, сколько существует видов цен в СуперМаг. В УКМ 4 передаются только те экземпляры скидок, которые настроены для видов цен, определяемых, как "цена для касс" в СуперМаг. СуперМаг выгружает информацию о всех экземплярах скидок одного типа в отдельный файл, при этом для каждого экземпляра скидки передаются "код вида цены в СуперМаг" и "название вида цены в СуперМаг":
<discountType> <program>// minOccurs=”0” maxOccurs="unbounded" <id></id> <код вида цены в СМ> <name></name> <название вида цены в СМ> </program>
Здесь "discountType" может принимать значения"
discountType | Скидка в СМ | Скидка в УКМ |
---|---|---|
discountPersonal | Скидка по дисконтным картам | Персональная скидка на классификатор (УКМ 2) |
classifDiscount | Скидка на товарную группу | Классификатор (УКМ 2) |
receiptDiscount | Скидка на чек по времени и сумме | На чек по времени и сумме |
quantityDiscount | Скидка на количество товара | Количество товара (УКМ2) |
Тег <program> содержит один экземпляр скидки данного типа. УКМ 4, при обработке такого файла, проверяет для каждого экземпляра скидки, есть ли в списке скидок в рекламной акции (указывается в настройках конвертера импорта) скидка с алгоритмом соответствующим полученному файлу и для соответствующего вида цены. Если такой скидки в УКМ 4 нет, то она будет создана. При этом код вида цены будет сохранен, а название скидки сформируется, как название алгоритма в УКМ 4, к которому будет добавлено название вида цены заключенное в круглые скобки.
Свойства товаров (весь справочник) (в СуперМаг - справочник "Размеры")
<Properties fullness=”F”> <version=””> <Property> // minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <PropertyValue> <value></value> </PropertyValue> </Property> </Properties>
Налоговые группы (весь справочник)
<taxes fullness=”F”> <version=””> <group>// minOccurs=”0” maxOccurs="unbounded" <id></id> (в СМ+ - «Тип группы» - украинские группы А,B,C…) <tax> // minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <sequence></sequence> (в СМ+ - «приоритет начисления налога») <percent></percent> </tax> </group> <taxes/>
Структура магазинов (отделы) (весь справочник)
<stocks fullness=”F”> <version=””> <store storeId=””> // minOccurs=”0” maxOccurs="unbounded" <stock> // minOccurs=”0” maxOccurs="unbounded" <id></id> (код магазина в СМ+) <name></name> </stock> </store> </stocks>
Классификатор товаров (весь справочник)
<classif fullness=”F”> <version=””> <group> // minOccurs=”0” maxOccurs="unbounded" <id></id> <owner></owner> <name></name> </group> </classif>
Товары (может быть весь справочник или только изменения)
<updateItems fullness=”F/I”> <version=””> <item>// minOccurs=”0” maxOccurs="unbounded" <article></article> <name></name> <measure></measure> (Сокращение) <measprec></measprec> (Точность – 1, 0.001, 0.01, 0.1) <groupId></groupId> (ссылка на узел классификатора) <egaisType></egaisType> (EgaisType (int), признак акцизного товара; 0 - неакцизный товар, 1 - маркированный товар, 2 - немаркированный) <propertyId></PropertyId> («Свойство» в СМ+, Размеры в терминах УКМ2. В СМ+ к товару может быть привязано только одно «Свойство») <taxgroupId></taxgroupId> <addProperty> // minOccurs=”0” maxOccurs="unbounded" <id></id> (код доп.характеристики в СМ+) <value></value> </addProperty> <barcode> // minOccurs=”0” maxOccurs="unbounded" <id></id> (сам штрихкод) <PropertyValue></PropertyValue> («Размер» в УКМ2) <quantity></quantity> (в СМ+ «Количество» для штрихкода) </barcode> </item> </updateItems>
Скидка «Персональная скидка на классификатор (СМ+)» (может быть весь справочник или только изменения)
<discountPersonal fullness=”F/I”> <program>// minOccurs=”0” maxOccurs="unbounded" <id></id> (идентификатор вида цены в СМ) <name></name> (название вида цены в СМ) <storeDiscount> <store storeId=””/> //minOccurs=”0” maxOccurs="unbounded" (перечень магазинов, для которых действует данный экземпляр скидки) </storeDiscount> <card>// minOccurs=”0” maxOccurs="unbounded" <number></number> (номер карты, в т.ч. префикс) <block></block> (признак блокировки карты) <type></type> (1 – совместная применимость, 0 – не применимость) <name></name> (имя клиента в чеке) <classifId></classifId> (ссылка на узел классификатора) <discount></discount> </card> </program> </discountPersonal>
Для каждой карты всегда выгружается полный перечень узлов классификатора, на которые должна быть предоставлена скидка.
Скидка на классификатор (СМ+) (весь справочник)
<classifDiscount fullness=”F”> <program>// minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <storeDiscount> <store storeId=””/> //minOccurs=”0” maxOccurs="unbounded" </storeDiscount> <classif classifId=””> // minOccurs=”0” maxOccurs="unbounded" <discount></discount> <classif> </program> </classifDiscount>
Скидка на сумму чека (СМ+) (весь справочник)
<receiptDiscount fullness=”F”> <program>// minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <storeDiscount> <store storeId=””/> //minOccurs=”0” maxOccurs="unbounded" </storeDiscount> <receipt> // minOccurs=”0” maxOccurs="unbounded" <amountFrom></amountFrom> <timeFrom></timeFrom> <discount></discount> </receipt> </program> </receiptDiscount>
Скидка на кол-во товара (СМ+) (весь справочник)
<quantityDiscount fullness=”F”> <program>// minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <storeDiscount> <store storeId=””/> //minOccurs=”0” maxOccurs="unbounded" </storeDiscount> <item article=””> // minOccurs=”0” maxOccurs="unbounded" <threshold> // minOccurs=”0” maxOccurs="unbounded" <quantity></quantity> <discount></discount> </threshold> </item> </program> </quantityDiscount>
Розничные цены магазина (может быть весь справочник или только изменения)
<storePrices fullness=”F/I” storeId=””> <version=””> <item article=””>// minOccurs=”0” maxOccurs="unbounded" <price> // minOccurs=”0” maxOccurs="1" <value></value> <minprice></minprice> (минимальная цена продажи в ден.единицах, а не в процентах) </price> </item> </storePrices>
Продавцы магазина (весь справочник)
<storeSellers fullness=”F” storeId=””> <version=””> <seller> // minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> </seller> </storeSellers>
Назначение товаров на отделы магазина (весь справочник)
<itemStoreStock fullness=”F” storeId=””> <version=””> <item article=””> <stockId></stockId> // minOccurs=”0” maxOccurs="1" </item> </itemStoreStock>
Продавцы магазина (весь справочник)
<storeCashiers fullness=”F” storeId=””> (код магазина в СМ+ (целое число). Мапируется в настройках конвертора в магазин в УКМ) <version=””> <cashier> // minOccurs=”0” maxOccurs="unbounded" <id></id> (целое число больше 0, используется в УКМ как идентификатор (код) кассира) <name></name> (символьная строка – 40 символов) <password></password> (символьная строка – 15 символов. Выгружается без шифрования) </cashier> </storeCashiers>
Коды немаркированных акцизных товаров для магазина (весь справочник)
<storeEGAIS fullness=”” storeId=””> (код магазина в СМ+ (целое число). Мапируется конвертером в магазин в УКМ 4) <version></version> <item> // minOccurs=”0” maxOccurs="unbounded" <article></article> (символьная строка – 40 символов) <NOPDF></NOPDF> (символьная строка – 255 символов) </item> </storeEGAIS> <NOPDF> может содержать поля: * code – код вида алкогольной продукции; * price – цена товара; * bname – наименование товарной позиции; * alc – крепость; * volume – объем продукции; * ean – EAN-продукта; * count– количество единиц пивной продукции данного вида. Значение параметра <NOPDF> передается в виде: <article="ХХХХХ" code="ХХХ" bname="ХХХ ХХХ" alc="ХХХ" volume="ХХХ" /> Если внутри значения атрибута bname используются кавычки, то они заменяются по следующим правилам: если для указания значения атрибута используются двойные кавычки, такие же кавычки внутри значения атрибута заменяются на сущность " если для указания значения атрибута используются одинарные кавычки, такие же кавычки внутри значения атрибута заменяются на сущность ' можно использовать двойные кавычки внутри значений атрибутов, заключенных в одинарные кавычки, и наоборот. Например: <article="005356" code="123" bname="Пиво "Балтика"" alc="4,6" volume="0,5" /> или <article="005356" code="123" bname=”Пиво 'Балтика'" alc="4,6" volume="0,5" />
Загрузка информации для пивного чека
<BeerEGAIS fullness=”F/I”> <version></version> <item> // minOccurs=”0” maxOccurs="unbounded" <article></article> (символьная строка – 40 символов) <NOPDF></NOPDF> (символьная строка – 255 символов) </item> </BeerEGAIS> Значение параметра <NOPDF> должно быть в виде: <nopdf article="ХХХХХ" code="ХХХ" bname="ХХХ ХХХ" alc="ХХХ" volume="ХХХ" />
Передача информации из УКМ 4 в СуперМаг
- УКМ 4 выгружает в СуперМаг+ информацию двух типов:
чеки;кассовая смена (в виде совокупности чеков по смене).
Чеки выгружаются в каталог, указанный в настройках обеих систем. Каждый чек помещается в отдельный файл.
- Смены выгружаются по мере появления на сервере информации о закрытии смен. Информация по каждой смене выгружается в отдельный файл.
Настройка интерфейса сервера УКМ 4 для передачи данных в СуперМаг
Перед настройкой сервера УКМ 4 убедитесь, что в настройках СуперМаг указаны следующие параметры:
- Каталог для получения данных из УКМ 4.
Настройки в УКМ4:
- Создать каталог для передачи данных из УКМ 4 в СуперМаг;
Для подключения конвертера "Супермаг Плюс XML экспорт" перейдите в раздел веб-интерфейса "Настройка сервера и оборудования/Конвертеры". В открывшемся окне нажмите кнопку "+ Добавить". Далее выберите из списка конвертер и нажмите "+ Создать". После создания конвертера откроется окно его настройки:
Название - в поле указывается название конвертера (по умолчанию присваивается значение типа добавляемого конвертера);
Запускается - указывается служба, через которую будет осуществляться обмен данными (при условии, что пользователь имеет право доступа к ресурсам). Существуют следующие варианты значений:
Сервер - обмен будет осуществляться через серверную часть УКМ 4;
Терминал - обмен будет осуществляться через клиентскую (терминальную) часть УКМ 4;
Магазины - для выбора магазинов, в которых будет действовать конвертер, кликните по ссылке "Добавить магазины";
Экспорт средств оплаты - в данном подменю можно установить пользовательскую кодировку средств оплаты. Поля для настройки станут доступны, если в выбранном магазине используется более одного средства оплаты:
Каталог для выгрузки данных - в поле указывается путь до каталога, куда УКМ 4 помещает файлы выгрузки данных;
Игнорировать поврежденные чеки - при включенном флаге информация по чекам, данные которых повреждены, передаваться не будет;
Выгружать оперативные чеки - при включенном параметре передача данных по чеку будет производиться сразу после его печати;
Архивировать данные - если включить данный флаг, то файлы выгрузки, после обработки конвертером, будут сохранены в виде архива в каталоге обмена данными;
При первом подключении выгружать:
Все - после сохранения настроек конвертера будет произведена выгрузка всех данных по чекам и сменам;С момента подключения конвертера - после сохранения настроек конвертера выгрузка данных будет производиться по мере появления на сервере информации о закрытии смен;От начала открытой смены на момент подключения конвертера - после сохранения настроек конвертера будет произведена выгрузка данных по последней (открытой) смене и далее по мере появления на сервере информации о закрытии смен.
Структура данных, передаваемых из УКМ 4 в СуперМаг
Чек
<receipt storeId=”” posNum=”” shiftNum=”” receiptNum=””> (id магазина, номер терминала, номер смены, номер чека) <version=””> <receiptDateTime></receiptDateTime> (время закрытия чека) <receiptOpenDateTime></receiptOpenDateTime> (время открытия чека) <receiptSubtotalDateTime></receiptSubtotalDateTime> (время подытога по чеку чека) <cashierName></cashierName> (ФИО кассира) <cashierCode></cashierCode> (id кассира) <type></type> (тип чека: 0 - продажа, 1 - чек на возврат, 4 - возврат по чеку, 5 - восстановленный чек) <item> // minOccurs=”1” maxOccurs="unbounded" <секция товара в чеке> <article></article> (артикул товара) <quantity></quantity> (количество товара) <price></price> (цена товара по прайс-листу) <barcode></barcode> (штрихкод товара) <egaisBarcode></egaisBarcode> (штриховой код алкогольной марки PDF417) <NOPDF></NOPDF> (содержание QR кода) <total></total> (стоимость позиции, уменьшенная на величину скидок) <stockId></stockId> (id отдела) <enterType></enterType> (способ ввода товара: 0 - сканер ШК, 1 - клавиатура, 2 - "горячая" клавиша) <sellerId></sellerId> (идентификатор продавца) <sellerName></sellerName> (ФИО продавца) <Property></Property> (идентификатор свойства товара из нормализированного хранилища. В случае нескольких значений выбирается случайным образом) <PropertyValue></PropertyValue> (значение свойства товара) <discount> // minOccurs=”0” maxOccurs="unbounded" (выгружаются скидки, которые привели к изменению суммы продажи) <programId></programId> (код скидки в УКМ) <programName></programName> (название скидки в УКМ) <programType></programType> (тип скидки в УКМ (значение поля trm_out_receipt_discounts.efts) integer) <amount></amount> (значение скидки - положительное число) <discCardNumber></discCardNumber> (номер диск.карты, но не клубной карты) </discount> <addition> // minOccurs=”0” maxOccurs="unbounded" (наценки, которые привели к изменению суммы продажи) <programId></programId> (код скидки в УКМ, которая увеличивает стоимость позиции в чеке) <programName></programName> (название скидки в УКМ, которая увеличивает стоимость позиции в чеке) <programType></programType> (тип скидки в УКМ (значение поля trm_out_receipt_discounts.efts) integer) <amount></amount> (значение наценки - положительное число) <discCardNumber></discCardNumber> (номер диск.карты, но не клубной карты!) </addition> <enterType></enterType> (способ ввода товара 0 – сканером 1 – с клавиатуры 2 – по «горячей» клавише) <sellerId></sellerId> (идентификатор продавца) <sellerName></sellerName> (фамилия продавца) </item> <gift> // minOccurs=”1” maxOccurs="unbounded" (выданные подарки) <article></article> (артикул товара, выданного как подарок) <programId></programId> (код скидки в УКМ, в рамках которой выдан подарок) <programName></programName> (название скидки в УКМ, в рамках которой выдан подарок) <quantity></quantity> (количество) </gift> <payment> // minOccurs=”1” maxOccurs="unbounded" (оплаты по чеку) <paymentId></paymentId> (тип средства оплаты: 0 – наличные, 101 – все средства оплаты, связанные с банковскими авторизациями и голосовыми/пустыми серверами авторизаций в УКМ 4, 102 – оплата подарочными картами и сертификатами, 103 – оплата баллами (внутренние счета и средства оплаты, связанные с внешними программами лояльности)) <paymentName></paymentName> (название средства оплаты в УКМ 4) <paymentAmount></paymentAmount> (размер платежа) </payment> </receipt>
Смена
<shift storeId=”” posNum=”” shiftNum=”” dateClose=””> (id магазина, номер терминала, номер смены) <version></version> <dateClose></dateClose> (дата и время закрытия смены) <cashierName></cashierName> (ФИО кассира, закрывшего смену) <cashierCode></cashierCode> (ID кассира, закрывшего смену) <saleAmount></saleAmount> (сумма продаж за смену) <returnAmount></returnAmount> (сумма возвратов за смену) <saleCount></saleCount> (количество чеков на продажу за смену) <returnCount></returnCount> (количество чеков на возврат за смену) <receipt> // minOccurs=”0” maxOccurs="unbounded" (чек) <receiptNum></receiptNum > (номер чека) <receiptDateTime></receiptDateTime> (дата и время закрытия чека) <cashierCode></cashierCode> (ID кассира, закрывшего чек) <cashierName></cashierName> (ФИО кассира, закрывшего чек) <type></type> (тип чека: 0 – продажа, 1 – чек на возврат, 4 – возврат по чеку, 5 – восстановленный чек) <amount></amount> (итоговая сумма чека) <item> // minOccurs=”1” maxOccurs="unbounded" (товар) <article></article> (артикул товара) <barcode></barcode> (штрихкод товара) <egaisBarcode></egaisBarcode> (штриховой код алкогольной марки PDF417) <NOPDF></NOPDF> (содержание QR кода) <quantity></quantity> (количество товара в чеке) <price></price> (цена товара по прайс-листу) <total></total> (стоимость позиции, уменьшенная на величину скидки) <stockId></stockId> (идентификатор отдела) <Property> (свойство товара) <соdе></соdе> (код свойства) <value></value> (значение свойства) </Property> <enterType></enterType> (способ ввода товара: 0 – сканером, 1 – с клавиатуры, 2 – по «горячей» клавише) <sellerId></sellerId> (идентификатор продавца) <sellerName></sellerName> (ФИО продавца) <discount> // minOccurs=”0” maxOccurs="unbounded" (скидка) <programId></programId> (код скидки в УКМ) <programName></programName> (название скидки в УКМ) <programType></programType> (тип скидки в УКМ (значение поля trm_out_receipt_discounts.efts, integer)) <amount></amount> (значение скидки - отрицательное число) <discCardNumber></discCardNumber> (номер дисконтной карты, но не клубной карты) </discount> <addition> (наценка) <programId></programId> (код наценки в УКМ) <programName></programName> (название наценки в УКМ) <programType></programType> (тип наценки в УКМ (значение поля trm_out_receipt_discounts.efts, integer)) <amount></amount> (значение наценки - положительное число) </addition> </item> <gift> // minOccurs=”1” maxOccurs="unbounded" (подарки) <article></article> (артикул товара, выданного в качестве подарка) <programId></programId> (код скидки в УКМ, в рамках которой выдан подарок) <programName></programName> (название скидки в УКМ, в рамках которой выдан подарок) <quantity></quantity> (количество) </gift> <payment> (оплаты по чеку) <paymentId></paymentId> (тип средства оплаты: 0 – наличные, 101 – все средства оплаты, связанные с банковскими авторизациями и голосовыми/пустыми серверами авторизаций в УКМ 4, 102 – оплата подарочными картами и сертификатами, 103 – оплата баллами (внутренние счета и средства оплаты, связанные с внешними программами лояльности)) <paymentName></paymentName> (название средства оплаты в УКМ 4) <paymentAmount></paymentAmount> (размер платежа) </payment> </receipt> </shift>
Требования к загрузке налоговых ставок
В связи с добавлением в УКМ 4 функционала автоматического мапирования ставок НДС со стороны УКМ 4 имеются новые требования к загрузке налоговых ставок через конвертеры: Для работы алгоритма автоматического выбора индекса ставки для ККТ при передаче данных о налогах через конвертеры УКМ 4 требуется указанием формулы налоговой ставки НДС в заданном виде.
Список НДС ставок ожидаемых конвертерами УКМ 4:
№ | Рекомендуемое значение ставки до 01.01.2019 | Рекомендуемое значение ставки после 01.01.2019 | Допустимые варианты значений | Описание |
---|---|---|---|---|
1 | 18% | 20% | 18.00%, 20.00% | НДС 18%/ НДС 20% |
2 | 10% | 10% | 10.00% | НДС 10% |
3 | 0% | 0% | 0.00% | НДС 0% |
4 | Не облагается | Не облагается | Без НДС | |
5 | 18/118% | 20/120% | НДС 18/118 / НДС 20/120 | |
6 | 10/110% | 10/110% | НДС 10/110 |
1. В случае, если формулы ставок отличаются от рекомендуемых, то товары могут быть добавлены в чек с не корректной ставкой налога.
Примечание: Для ставок НДС 10%, 18%, 20% допустима форма передачи процента ставки: "XX%" и "XX.00%", например, 10.00% является допустимым значением ставки при передаче через конвертер.
2. Регистр для значения ставки не облагается - можно указывать любой при передаче данных конвертеру.
3. Ставка не облагается может отсутствовать в справочнике налогов в нескольких случаях (это не вызовет проблем в работе кассовой системы):
- При использовании опции "Формировать налоговые ставки автоматически, в соответствии с ФЗ РФ" для заказчиков с не основной системой налогообложения в чек всегда будет добавляться корректная ставка "не облагается" не зависимо от того, как заданы параметры ставки для списка карточек товаров для импорта.
Актуально для конвертеров:
Стандартный 2 DBF импорт Стандартный 2 CSV импорт Супермаг Плюс CSV импорт
- Ставка не облагается будет автоматически использоваться УКМ 4 при пустом справочнике налогов для добавления товаров в чек. Актуально для пользователей с не основной системой налогообложения, которые не выгружают налоги в УКМ 4 с любыми конвертерами.
- Ставка не облагается будет использоваться УКМ 4 для объектов пользователя с не основной системой налогообложения во всех случаях: даже если эта ставка не загружена в справочник налогов УКМ 4 и не выбрана для товаров и справочник налогов не пуст. Актуально для пользователей, которые в одной системе УКМ 4 поддерживают работу как магазинов с основной системой налогообложения, так и магазинов с любой не основной системой налогообложения (например, ЕНДВ). Поддерживаются все конвертеры.
Вложенные страницы: