Как организовать онлайн-получение заказов из маркетплейса в торговой точке на 1С:Розница 1.0?

Программист 1С v8.3 (Обычные формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

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

Вариант 1: Использование веб-сервисов в каждой торговой точке

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

  1. Каждая база магазина публикуется на отдельном веб-сервере (например, Apache или IIS).
  2. Центральная база, выступающая в роли агрегатора заказов от Delivery Club, при поступлении заказа отправляет POST-запрос на веб-сервис конкретной торговой точки.
  3. Получив запрос, веб-сервис в магазине создает документ Заказ покупателя.
  4. Для оповещения продавца вы можете использовать встроенные механизмы оповещения или внешние надстройки, которые среагируют на создание нового документа.

Этот метод исключает необходимость постоянного опроса базы (polling), так как база «просыпается» только в момент поступления данных.

Вариант 2: Использование центрального веб-сервиса и оповещение через мессенджеры

Если публикация баз в 38 магазинах кажется избыточной или небезопасной, можно выбрать модель «опроса» (pull). В этом случае вы реализуете обмен следующим образом:

  1. Создаете один центральный веб-сервис, который принимает все заказы от маркетплейса.
  2. В каждой торговой точке настраиваете регламентное задание, которое с заданной периодичностью (например, раз в минуту) обращается к центральному веб-сервису.
  3. База магазина запрашивает: «Есть ли для меня новые заказы?». Если заказы есть, они загружаются в локальную ИБ.

Для оперативного оповещения персонала при таком подходе лучше использовать мессенджеры (например, Telegram). Важно: регламентные задания в старой Рознице 1.0 могут быть недостаточно оперативными, поэтому для уведомления продавца идеально подойдет интеграция с Telegram-ботом, который пришлет пуш-уведомление на смартфон дежурной смене.

Как реализовать оповещение продавца?

Проблема «как заставить 1С пищать» решается несколькими способами в зависимости от ваших возможностей:

Технические аспекты реализации

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


// Пример логики обработки заказа на стороне магазина
Функция ОбработатьВходящийЗаказ(ДанныеЗаказа) Экспорт
    НовыйЗаказ = Документы.ЗаказПокупателя.СоздатьДокумент();
    // ... заполнение реквизитов ...
    Если НовыйЗаказ.Записать() Тогда
        ОтправитьСтатусВЦентр("Принят");
        Возврат Истина;
    Иначе
        ОтправитьСтатусВЦентр("Ошибка");
        Возврат Ложь;
    КонецЕсли;
КонецФункции

Помните, что для стабильной работы системы в условиях 38 торговых точек необходимо:

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

← На главную