...
Если в момент начала работы конвертера на сервере есть документы, относящиеся к нескольким сменам, или производится ручная выгрузка нескольких смен, то для каждой кассы выгружается блок, состоящий из следующих пакетов:
- все операции с денежным ящиком;
- все чеки;
В каждом пакете информация упорядочена по возрастанию номеров смен.
...
1:1 – секция должна быть, и только одна.
Оглавление | ||
---|---|---|
|
Якорь | ||||
---|---|---|---|---|
|
Примечание | Обяз. | Формат в конвертере | |
<cashBox storeId=”” posNum=”” shiftNum=”” docNum=””> | Идентификатор магазина во внешней системе Номер кассы в кассовой системе Уникальный идентификатор кассовой смены в кассовой системе Номер документа о внесении/изъятии в кассовой системе | String(100) Int(11) Int(11) Int(11) | |
<version=””> | Значение указывается в кавычках | String(20) | |
<dateOper> | * | String(yyyy-mm-ddThh:mm:ss) | |
<operCode> | Код операции | * | Int(11) 100 – внесение 101 – изъятие |
<cashierCode> | Код кассира | * | Int(11) |
<cashierName> | Имя кассира | * | String(100) |
<saleAmount> | Сумма операции | * | Decimal(20.2) |
<saleAmount_before=””> | Сумма в денежном ящике до выполнения операции. Значение указывается в кавычках | * | Decimal(20.2) |
</cashbox> |
...
Предупреждение |
---|
СуперМаг+ – не загружает файл. |
Якорь | ||||
---|---|---|---|---|
|
Примечание | Обяз. | Формат в конвертере | |
<shiftOpen storeId=”” posNum=”” shiftNum=”” | Идентификатор магазина во внешней системе Номер кассы в кассовой системе Уникальный идентификатор кассовой смены в кассовой системе | * | String(100) Int(11) Int(11) |
<version=””> | Значение указывается в кавычках | * | String(20) |
<dateOpen> | * | String(yyyy-mm-ddThh:mm:ss) | |
<cashierCode> | Кассир, открывший смену | * | Int(11) |
<cashierName> | * | String(100) | |
</shiftOpen> |
...
Предупреждение |
---|
СуперМаг+ – не загружает файл. |
Якорь | ||||
---|---|---|---|---|
|
Примечание | Обяз. | Формат в конвертере | |||||||
storeId=”” posNum=”” shiftNum=”” receiptNum=””> | Идентификатор магазина во внешней системе Номер кассы в кассовой системе Уникальный идентификатор кассовой смены в кассовой системе Номер чека в смене | String(100) Int(11) Int(11) Int(11) | |||||||
<version=””> | Версия формата документа. Значение указывается в кавычках | * | String(20) | ||||||
<receiptDateTime> | Время закрытия чека | * | yyyy-mm-ddThh:mm:ss | ||||||
<receiptOpenDateTime> | Время открытия чека | yyyy-mm-ddThh:mm:ss | |||||||
<receiptSubtotalDateTime> | Время последнего нажатия на клавишу "Расчет" | yyyy-mm-ddThh:mm:ss | |||||||
<cashierCode> | Код кассира | * | Int(11) | ||||||
<cashierName> | Имя кассира | * | String(100) | ||||||
<type> | Тип чека | * | Int(11) 0 – продажа 1 – возврат 4 – возврат по исходному чеку 5 – продажа по восстановленному чеку | ||||||
| Для чеков возврата – номер кассы, на которой была продажа | Int(11) | |||||||
<shiftNumSale> | Для чеков возврата – номер смены, в которой была продажа | Int(11) | |||||||
<receiptNumSale> | Для чеков возврата – номер чека продажи | Int(11) | |||||||
<amount> | Сумма чека, уменьшенная на величину скидок | * | Decimal(20.2) | ||||||
<item> | 0:∞ | ||||||||
<position> | Номер позиции | * | Int(11) Нумерация начинается с 1 | ||||||
<positionSale> | Для чеков возврата – номер позиции в чеке продажи | * | Int(11) | ||||||
<article> | Артикул товара | * | String(40) | ||||||
<barcode> | Штрихкод товара (если он был введён по штрихкоду) | String(40) | |||||||
<egaisBarcode> | Штриховые коды алкогольных марок PDF417 | String(200) | |||||||
<NOPDF> | Содержание QR-кода, если товар является алкогольной продукцией и кассиром был считан внутренний QR-код, наклеенный на бутылку | ||||||||
| КиЗ – полное содержание кода маркированной продукции без дополнительной обработки. Кодировка BASE64 | String(255) | |||||||
<serialNumber> | Серийный номер, выделенный из кода DataMatrix (может отсутствовать) | String(20) | |||||||
<maxPrice> | Максимальная розничная цена, выделенная из КиЗ (табак) | Decimal (20.2) | |||||||
<quantity> | Количество товара в позиции | * | Decimal(20.3) | ||||||
<price> | Цена товара по прайс-листу | * | Decimal(20.2) | ||||||
<total> | Стоимость позиции, уменьшенная на величину скидок | * | Decimal(20.2) | ||||||
| Способ ввода товара в чек | * | Int(11) 0 – сканер, заказ, распознавание 1 – клавиатура 2 – горячая клавиша/ пик-листы 10 – прочие способы | ||||||
<sellerId> | Код продавца | String(50) | |||||||
<sellerName> | Фамилия продавца | String(50) | |||||||
<stockId> | Номер отдела | Int(11) | |||||||
| |||||||||
<id> | Код свойства | String(40) | |||||||
<name> | Название свойства | String(80) | |||||||
<value> | |||||||||
<id> | Идентификатор значения свойства | String(100) | |||||||
<name> | Название значения свойства | String(100) | |||||||
</value> | |||||||||
</addProperty> | |||||||||
<Property> | Код дополнительного свойства (размер) | String(20) | |||||||
<PropertyValue> | Значение дополнительного свойства (размер) | String(20) | |||||||
<Tax> | 0:∞ | ||||||||
<TaxGroupId> | Код налоговой группы | * | Int(11) | ||||||
<TaxId> | Код налога | * | Int(11) | ||||||
<TaxName> | Название налога | * | String(40) | ||||||
<percent> | Ставка налога | * | Decimal (20.2) | ||||||
<amount> | Сумма налога, рассчитанная кассой | * | Decimal (20.2) | ||||||
</Tax> | |||||||||
<discount> | Скидки, которые привели к изменению суммы продажи | 0:∞ | |||||||
<programId> | Код скидки в кассовой программе | * | Int(11) | ||||||
<programName> | Название скидки в кассовой программе | * | String(40) | ||||||
<programType> | Тип системы лояльности | * | Int(11) | ||||||
<amount> | Значение скидки – положительное число | * | Decimal(20.2) | ||||||
<discCardNumber> | Номер дисконтной карты – не клубной карты! | String(40) | |||||||
</discount> | |||||||||
<addition> | Наценки, которые привели к изменению суммы продажи | 0:∞ | |||||||
<programId> | Код скидки в кассовой программе | * | Int(11) | ||||||
<programName> | Название скидки в кассовой программе | * | String(40) | ||||||
<programType> | Тип системы лояльности | * | Int(11) | ||||||
<amount> | Значение наценки – положительное число | * | Decimal (20.2) | ||||||
<discCardNumber> | Номер дисконтной карты – не клубной карты! | String(40) | |||||||
</addition> | |||||||||
</item> | |||||||||
<TaxTotal> | Суммы налогов по чеку | 0:∞ | |||||||
<TaxGroupId> | Код налоговой группы | * | Int(11) | ||||||
<TaxId> | Код налога | * | Int(11) | ||||||
<TaxName> | Название налога | * | String(40) | ||||||
<percent> | Ставка налога | * | Decimal (20.2) | ||||||
<amount> | Сумма налога | * | Decimal (20.2) | ||||||
</TaxTotal> | |||||||||
<removedItems> | Отменённые позиции | 0:∞ | |||||||
<item> | Структура такая же, как у нормально завершённых чеков, но добавлен тег <supervisor> | ||||||||
<position> | * | Int(11) | |||||||
<article> | * | String(40) | |||||||
<barcode> | * | String(40) | |||||||
<quantity> | * | Decimal (20.3) | |||||||
<price> | * | Decimal (20.2) | |||||||
<total> | * | Decimal (20.2) | |||||||
<stockId> | Int(11) | ||||||||
<enterType> | * | Int(11) | |||||||
<supervisor> | Кассир, разрешивший операцию отмены позиции | 1:1 | |||||||
<id> | * | Int(11) | |||||||
<name> | * | String(100) | |||||||
</supervisor> | |||||||||
</item> | |||||||||
</removedItems> | |||||||||
| 0:∞ | ||||||||
<loyalty_type=""> | Тип системы лояльности, выдавшей подарок. Значение указывается в кавычках | * | Int(11) | ||||||
<article> | Артикул товара, выданного как подарок | * | String(40) | ||||||
<quantity> | Количество товара-подарка | * | Decimal(20.3) | ||||||
<programId> | Id скидки в кассовой системе, которая инициировала выдачу данного подарка | Int(11) | |||||||
<programName> | Название скидки, которая инициировала выдачу данного подарка | String(40) | |||||||
</gift> | |||||||||
| Значение указывается в кавычках | ||||||||
<loyalty_type=””> | Тип системы лояльности, выдавшей подарок. Значение указывается в кавычках | ||||||||
<item> | Артикул товара, выданного как подарок | ||||||||
<quantity> | Количество товара-подарка | ||||||||
</loyality_used_gifts=””> | Значение указывается в кавычках | ||||||||
<loyality_cardNum=””> | Номер карты клиента. Значение указывается в кавычках | 0:∞ | |||||||
<loyalty_type=””> | Тип внешней системы лояльности. Значение указывается в кавычках | * | Int(11) | ||||||
<card_num=””> | Номер карты покупателя в системе лояльности. Значение указывается в кавычках | * | String(128) | ||||||
</loyality_cardNum=””> | Значение указывается в кавычках | ||||||||
<loyality_used_coupons=””> | Применённые в чеке купоны. Значение указывается в кавычках | 0:∞ | |||||||
<loyalty_type=””> | Тип внешней системы лояльности. Значение указывается в кавычках | * | Int(11) | ||||||
<coupon_num=””> | Номер полученного купона. Значение указывается в кавычках | * | String(40) | ||||||
<coupon_amount=””> | Использованная сумма купона (если она определена). Значение указывается в кавычках | Decimal(20.2) | |||||||
</loyality_used_coupons=””> | Значение указывается в кавычках | ||||||||
<loyality_award_coupons=””> | Выданные купоны. Значение указывается в кавычках | 0:∞ | |||||||
<loyalty_type=””> | Тип внешней системы лояльности. Значение указывается в кавычках | * | Int(11) | ||||||
<coupon_num=””> | Номер выданного купона. Значение указывается в кавычках | * | String(40) | ||||||
<coupon_amount=””> | Сумма купона (если она определена). Значение указывается в кавычках | Decimal(20.2) | |||||||
</loyality_award_coupons=””> | Значение указывается в кавычках | ||||||||
<payment> | Оплаты по чеку | 1:∞ | |||||||
| «Тип» средства оплаты | * | Int(11) «Тип» средства оплаты: если не включено мапирование средств оплаты в настройках конвертера экспорта или не указан код, в который надо мапировать, то коды присваиваются по следующим правилам: 0 – наличные 101 – оплаты банковскими авторизациями, включая голосовые/"пустые" авторизации 102 – подарочный сертификат 103 – оплата баллами с внутреннего счета или баллами внешних систем лояльности (кроме подарочных сертификатов) 104 – оплата в счет ранее полученных авансов/предоплат 105 – оплата в кредит | ||||||
<paymentName> | Название средства оплаты в кассовой системе | * | String(40) <paymentId>=0 – наличные <paymentId>=101 – банковская карта <paymentId>=102 – подарочный сертификат <paymentId>=103 – оплата баллами <paymentId>=104 – предоплата <paymentId>=105 – кредит | ||||||
<paymentAmount> | * | Decimal(20.2) | |||||||
<maskedCardNumber> | Маскированный номер банковской карты, при наличии данных | String(100) | |||||||
<cardType> | Тип банковской карты, при наличии данных | String(100) | |||||||
<authCode> | Код банковской авторизации, при наличии данных | String(100) | |||||||
<rrn> | Код ссылки банковской авторизации, при наличии данных | String(100) | |||||||
| |||||||||
<banknote> | 1:∞ | ||||||||
<nominal> | Номинал купюры | * | Int(11) | ||||||
<number> | Номер купюры | * | String(100) | ||||||
</banknote> | |||||||||
</banknotes> | |||||||||
</payment> | |||||||||
</receipt> |
Особенности
Предупреждение |
---|
Группа <banknotes></banknotes> содержит информацию о номерах купюр и используется только в рамках соответствующего функционала УКМ 5. В таблице присутствуют два тега с информацией о выданных подарках: loyality_used_gifts и gift. УКМ 4 заполняет оба тега. УКМ 5 заполняет только тег gift. СуперМаг+ загружает подарки из тега gift. УКМ 5 передает значения дополнительных свойств товарной позиции в теге <addProperty> только в версии 1.2 конвертера XML. В прочих версиях конвертера для этой цели используются теги <property> и <propertyValue>, что может привести к некорректной передаче чеков в СуперМаг+. |
...
Примечание | Обяз. | Формат в конвертере | |
<shift storeId=”” posNum=”” shiftNum=””> | Идентификатор магазина во внешней системе Номер кассы в кассовой системе Уникальный идентификатор кассовой смены в кассовой системе | * | String(100) Int(11) Int(11) |
<version=””> | Значение указывается в кавычках | * | String(20) |
<dateClose> | * | String(yyyy-mm-ddThh:mm:ss) | |
<kkm_shift_number=””> | Номер смены по ККТ. Значение указывается в кавычках | * | Int(11) |
<kkm_serial_number=””> | Заводской номер ККТ (при закрытии смены без ККТ тег будет отсутствовать). Значение указывается в кавычках | String(40) | |
<kkm_registration_number=””> | Регистрационный номер ККТ (при закрытии смены без ККТ тег будет отсутствовать). Значение указывается в кавычках | String(40) | |
<kkm_model_name=””> | Название модели ККТ (при закрытии смены без ККТ тег будет отсутствовать). Значение указывается в кавычках | String(40) | |
<cashierCode> | Кассир, закрывший смену | * | Int(11) |
<cashierName> | * | String(100) | |
<saleAmount> | Сумма всех чеков продажи за смену по данным кассовой системы (учитывается сумма каждого чека за вычетом скидок) | * | Decimal(20.2) |
<returnAmount> | Сумма всех чеков возвратов за смену по данным кассовой системы | * | Decimal(20.2) |
<kkm_saleAmount=””> | Сумма всех чеков продажи за смену по данным ККТ. Значение указывается в кавычках | * | Decimal (20.2) |
<kkm_returnAmount=””> | Сумма всех чеков возвратов за смену по данным ККТ. Значение указывается в кавычках | * | Decimal (20.2) |
<saleCount> | Количество чеков продаж за смену по данным кассовой системы | * | Int(11) |
<returnCount> | Количество чеков возвратов за смену по данным кассовой системы | * | Int(11) |
<kkm_saleCount=””> | Количество чеков продажи за смену по данным ККТ. Значение указывается в кавычках | Int(11) | |
<kkm_returnCount=””> | Количество чеков возвратов за смену по данным ККТ. Значение указывается в кавычках | Int(11) | |
<kkm_withdrawal=””> | Количество изъятий по данным ККТ. Значение указывается в кавычках | Int(11) | |
<kkm_insertion=””> | Количество внесений по данным ККТ. Значение указывается в кавычках | Int(11) | |
<payment> | Оплаты по смене | 0:∞ | |
<paymentId> | * | Int(11) «Тип» средства оплаты: если не включено мапирование средств оплаты в настройках конвертера экспорта или не указан код, в который надо мапировать, то коды присваиваются по следующим правилам: 0 – наличные 101 – оплаты банковскими авторизациями, включая голосовые/"пустые" авторизации 102 – подарочный сертификат 103 – оплата баллами с внутреннего счета или баллами внешних систем лояльности (кроме подарочных сертификатов) 104 – оплата в счет ранее полученных авансов/предоплат 105 – оплата в кредит | |
<paymentName> | Название средства оплаты в кассовой системе | * | String(40) <paymentId>=0 – наличные <paymentId>=101 – банковская карта <paymentId>=102 – подарочный сертификат <paymentId>=103 – оплата баллами <paymentId>=104 – предоплата <paymentId>=105 – кредит |
<paymentAmountSale> | Сумма оплат данным средством за смену по данным кассовой системы | * | Decimal (20.2) |
<paymentAmountReturn> | Сумма возвратов данным средством за смену по данным кассовой системы | * | Decimal (20.2) |
<kkm_paymentAmountSale=””> | Сумма оплат данным средством за смену по данным ККТ. Значение указывается в кавычках | Decimal (20.2) | |
<kkm_paymentAmountReturn=””> | Сумма возвратов данным средством за смену по данным ККТ. Значение указывается в кавычках | Decimal (20.2) | |
</payment> | |||
<receipt storeId=”” posNum=”” shiftNum=”” receiptNum=””> | Перечень нормально завершённых чеков | 0:∞ | Структура такая же, как у оперативных чеков |
</receipt> | |||
<receipt storeId="" posNum="" shiftNum="" receiptNum="" cancelled="true"> | Перечень отменённых (аннулированных) чеков | 0:∞ | Структура такая же, как у оперативных чеков |
<receiptDateTime> | |||
<receiptOpenDateTime> | * | ||
<cashierCode> | * | Int(11) | |
<cashierName> | * | String(100) | |
<type> | * | Int(11) – аналогично оперативному чеку | |
<amount> | |||
<supervisor> | Кассир, разрешивший отмену | * | |
<id> | * | Int(11) | |
<name> | * | String(100) | |
</supervisor> | |||
<item> | 0:∞ | ||
<position> | * | Int(11) | |
<article> | * | String(40) | |
<barcode> | String(40) | ||
<quantity> | * | Decimal(20.3) | |
<price> | * | Decimal(20.2) | |
<total> | * | Decimal(20.2) | |
<stockId> | Int(11) | ||
<enterType> | * | Int(11) – возможные значения такие же, как для чека | |
</item> | |||
</receipt> | |||
</shift> |
...