Внедрение касс самообслуживания (КСО) — это серьезный шаг в автоматизации розничной торговли, особенно для сетей среднего масштаба (30–40 магазинов). В данной статье мы проанализируем ситуацию, когда необходимо интегрировать современное кассовое оборудование с самописной или сильно доработанной конфигурацией 1С. Мы разберем по шагам критерии выбора программного обеспечения, аппаратной части и механизмы настройки обмена данными.
Выбор кассового софта (Front-end) является первичным по отношению к железу. Рассмотрим подробнее наиболее популярные на российском рынке решения, которые позволяют гибко настраивать обмен с 1С.
Artix Cash Server, который может взаимодействовать с 1С через JSON-пакеты или файлы.EnterpriseData. Однако при использовании самописных конфигураций часто приходится дорабатывать обмен под собственные нужды.Выясним причину, почему прямой обмен с ККТ (фискальным регистратором) из 1С в режиме самообслуживания — плохая идея. Для КСО критически важна скорость интерфейса и автономность. Поэтому мы всегда рассматриваем схему с промежуточным кассовым ПО.
Типовой цикл обмена данными выглядит следующим образом:
Выгрузка данных из 1С в КСО:
В кассовое ПО передаются справочники товаров, штрихкоды, цены и, что немаловажно, признаки маркировки. Если КСО оборудована весовым модулем, необходимо также выгружать эталонный вес каждой позиции. Рассмотрим пример структуры JSON-пакета для выгрузки товара:
{
"action": "update_goods",
"data": [
{
"id": "UT-0000123",
"name": "Молоко 3.2% 1л",
"barcode": "4601234567890",
"price": 89.90,
"is_marked": true,
"weight_delta": 15
}
]
}
Загрузка данных из КСО в 1С:
После закрытия смены (или в реальном времени через API) 1С должна забирать информацию о совершенных продажах. На стороне 1С создается документ ОтчетОРозничныхПродажах. Проанализируем ситуацию с маркировкой: важно, чтобы КСО сама проверяла коды маркировки в системе «Честный ЗНАК», а в 1С передавала уже проверенные данные для списания из остатков.
При выборе ПО и написании обмена обратим внимание на два критических фактора, которые часто упускают при проектировании:
Для сети из 30–40 магазинов мы рекомендуем стратегию «ПО отдельно — Железо отдельно». Это даст гибкость и независимость от конкретного поставщика оборудования.
Рассмотрим состав типичного КСО-терминала:
Атол или Штрих-М. Выбирайте модели с высокой скоростью печати и автоматическим отрезчиком.Поскольку у нас самописная конфигурация, мы не можем использовать готовые обработки вендоров. Нам необходимо разработать собственный механизм. Посмотрим на пример функции формирования файла обмена для Frontol в формате TXT (классический обмен):
Функция СформироватьСтрокуТовара(ТекущийТовар)
// Формат: Код;Штрихкод;Наименование;Цена;Остаток;...
СтрокаТовара = Строка(ТекущийТовар.Код) + ";" +
ТекущийТовар.Штрихкод + ";" +
ТекущийТовар.Наименование + ";" +
Формат(ТекущийТовар.Цена, "ЧЦ=15; ЧДЦ=2; ЧГ=0") + ";1;0;";
Возврат СтрокаТовара;
КонецФункции
Проанализируем этот код. Важно соблюдать строгую последовательность полей, описанную в документации к ПО. Рекомендуем использовать формат JSON вместо TXT, если выбранное ПО это поддерживает, так как JSON легче масштабировать при добавлении новых реквизитов (например, для маркировки пива или молочной продукции).
Подведем итог нашему анализу. Для успешного взлета проекта КСО в сети с самописной 1С выполним следующие действия:
SetRetail. Если нужна гибкость и экономия — Frontol или Artix.Помните, что касса самообслуживания — это в первую очередь интерфейс взаимодействия с покупателем. Чем проще и понятнее будет логика, реализованная в связке ПО и вашей 1С, тем меньше нагрузка будет ложиться на администраторов магазина.