Публичное пространство
SetMark ◾️ Сервис остатков по товару
https://crystals.atlassian.net/browse/SRTB-10209
https://crystals.atlassian.net/browse/CR-14584
10.5.1.0
Описание
Функциональность позволяет кассиру в режиме реального времени запрашивать данные об остатках товара в текущем магазине или в других торговых точках сети (город, регион или вся сеть). Поиск осуществляется через сервис Set Mark Centrum по артикулу, штрихкоду, наименованию или коду маркировки.
Ценность
Повышение лояльности покупателей: кассир может оперативно сообщить о наличии нужного размера или цвета товара.
Увеличение продаж: возможность направить покупателя в конкретный магазин сети, где товар есть в наличии.
Экономия времени: отсутствие необходимости звонить в другие магазины или использовать сторонние системы для проверки стока.
Пример работы успешного сценария
Просмотр остатков в текущем магазине
Кассир нажимает кнопку Остатки по товару.
В открывшейся форме поиска кассир вводит данные товара (артикул, штрихкод или часть наименования) → выбирает нужный товар из списка найденных.
Касса отображает форму с подробной информацией: изображение, наименование, категория и список всех штрихкодов (размеров/цветов) с указанием их остатка в текущем магазине.
Поиск товара в других магазинах сети
На форме просмотра данных о товаре кассир выбирает требуемый вариант товара и нажимает кнопку Найти в магазинах.
Также можно выбрать все варианты с помощью переключателя Выбрать все ШК товара.
Кассир выбирает зону поиска:
В городе
В регион
По всей сети.
Касса отобразит список магазинов выбранной зоны, в которых товар есть в наличии, с указанием количества.
Пример работы отрицательного сценария
Модуль остатков не настроен
Если сервис остатков отключен в настройках, при выполнении запроса касса отобразит сообщение: “Сервис остатков не настроен”.
Ограничения
Функциональность доступна на типах касс: TOUCH и HYBRID (в touch-интерфейсе кассира).
В текущей версии корректная работа сервиса остатков реализована только для Set Mark Centrum Enterprise.
Просмотр остатков не накладывает запрет на продажу товара (функциональность блокировки реализуется отдельно).
Настройки
Настройка на сервере Set Centrum
В настройках процессинга Set Mark Centrum (Интеграция → Внешние процессинги) установите флажок Ведение остатков. Также, если необходимо, установите флажок Использовать ERP-код как общий код модели:
true— поиск ведется по полюerpcode(разные товары с одним ERP-кодом считаются одной моделью).false(по умолчанию) — поиск ведется по полюmarkingofthegood(артикул).
Настройка на кассе
В функциональном меню Touch и/или гибрид-кассы (Кассовый модуль → Настройки интерфейса) добавьте функцию Остатки по товару.
Интеграция
Настройка склада
Назначение: регистрация или актуализация склада магазина. Позволяет заранее завести хранилища, на которые будут приходить движения.
Настройка склада | |
|---|---|
URL | http://IP-адрес_SMC(E):9000/api/external/v1/storage |
Метод | PUT |
Request Content-Types | JSON |
Описание | Создание/обновление склада, установка склада по умолчанию |
Параметр | Описание |
|---|---|
code | Код склада (уникальный в контексте магазина) |
name | Наименование склада |
shop | Номер магазина |
isDefault | Флаг склада по умолчанию для магазина |
Пример запроса
{
"code": "STORAGE-ST1",
"name": "Торговый зал",
"shop": 779,
"isDefault": true
}Сохранение документа движения
Назначение: передача документа изменений остатков (приход, расход, перемещение) из внешней ИС.
Настройка склада | |
|---|---|
URL | http://IP-адрес_SMC(E):9000/api/external/v1/document |
Метод | POST |
Request Content-Types | JSON |
Описание | Передача документа изменений остатков (приход, расход, перемещение) |
Параметр | Описание | |
|---|---|---|
correlationId | строка, уникальный внешний ID | |
forceCreateStorage |
| |
forceCreateShopNumber | Номер магазина, в котором будут созданы склады при | |
header | Заголовок документа. | |
| number | Номер документа. |
| name | Наименование или комментарий к документу. |
| documentTimestamp | Дата и время документа в формате ISO 8601 с указанием таймзоны. |
operations | Список операций в документе. | |
| gtin | Штрихкод товара (GTIN). |
| amount | Количество товара (число с точностью до 3 знаков после запятой). |
| operationType | Тип операции: • • • |
| sourceStorageCode | Код склада-источника (откуда списывается товар). |
| targetStorageCode | Код склада-приемника (куда приходуется товар). |
Пример запроса (операция прихода - IN)
{
"correlationId": "123e4567-e89b-12d3-a456-426614174005",
"forceCreateStorage": false,
"forceCreateShopNumber": 1234,
"header": {
"documentTimestamp": "2025-12-01T12:24:56+03:00",
"number": "124-E-573",
"name": "Приход товара"
},
"operations": [
{
"gtin": "33330000000003",
"amount": 3,
"operationType": "IN",
"targetStorageCode": "STORAGE-ST14"
}
]
}Пример запроса (операция расхода - OUT)
{
"correlationId": "123e4567-e89b-12d3-a456-426614174006",
"forceCreateStorage": false,
"forceCreateShopNumber": 1234,
"header": {
"documentTimestamp": "2025-12-01T12:24:56+03:00",
"number": "124-E-574",
"name": "Расход товара"
},
"operations": [
{
"gtin": "33330000000003",
"amount": 3,
"operationType": "OUT",
"sourceStorageCode": "STORAGE-ST1"
}
]
}