Из-за временных ограничений на территории РФ наблюдаются проблемы с оплатой. Если платёж не проходит, оставьте запрос в службу поддержки.Служба поддержки работает 24/7 — мы всегда на связи по вопросам хостинга и серверов.Открыт прием заявок на аренду выделенных серверов и размещение оборудования в дата-центре.Напоминаем: рекомендуем включить резервное копирование для дополнительной защиты данных.Доступна новая линейка VPS/VDS с NVMe-дисками и увеличенной производительностью.Технические работы на части серверов завершены. Все сервисы работают в штатном режиме.
Статья6 мин чтенияПросмотры0

Как составить ТЗ на интеграцию интернет-магазина с 1С: что описать до разработки

Практический шаблон технического задания на обмен интернет-магазина с 1С: источники данных, идентификаторы, правила конфликтов, обработка ошибок и критерии приёмки.

Комментарии 0

Рабочий стол со схемами обмена данными для подготовки ТЗ на интеграцию
В этой статье

Фраза «нужно связать сайт с 1С» звучит как задача, но для оценки и разработки в ней почти нет данных. В одном проекте из учётной системы передают только остатки, в другом — весь каталог, цены и изображения, а заказы возвращают обратно. Даже одинаковое слово «цена» может означать розницу, опт, цену по соглашению или расчёт после авторизации.

Хорошее техническое задание не обязано описывать программный код. Оно должно снять неопределённость: какие данные участвуют в обмене, где находится их источник, как сопоставляются объекты и что должно произойти при ошибке.

Сначала нарисуйте карту обмена

Начинать удобнее не со списка полей, а с таблицы потоков. Для каждого объекта укажите источник, получателя, направление, частоту и ответственного владельца данных.

Например:

  • товары и характеристики: из 1С на сайт;

  • цены: из 1С на сайт, отдельно по каждому типу цены;

  • остатки: из 1С на сайт по складам;

  • изображения и SEO-тексты: из сайта или PIM, в 1С не возвращаются;

  • заказы: с сайта в 1С;

  • статус оплаты, сборки и отгрузки: из 1С на сайт;

  • данные доставки: источник зависит от используемой службы и схемы оформления заказа.

Эта карта сразу обнаруживает конфликты. Если менеджер может менять цену и в 1С, и на сайте, нужно заранее определить, чьё изменение имеет приоритет. Иначе обмен будет исправно перезаписывать работу одного из сотрудников.

Зафиксируйте постоянные идентификаторы

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

В ТЗ следует указать:

  • какой идентификатор связывает товар в 1С и элемент каталога на сайте;

  • как связываются характеристики и торговые предложения;

  • что происходит при смене артикула или переносе товара в другую группу;

  • можно ли создать товар вручную на сайте и кто присвоит ему внешний идентификатор;

  • как система поступает с объектом без идентификатора или с повторяющимся значением.

Для обмена через CommerceML обычно важны внешние идентификаторы объектов, но само наличие стандарта не отменяет проектирования. Доработанные конфигурации 1С, несколько инфоблоков или каталог поставщика могут менять схему сопоставления.

Опишите каталог на уровне реальных данных

Фраза «выгружать карточки товаров» слишком широка. Перечислите поля и правила для каждой сущности: название, артикул, ставка НДС, единица измерения, бренд, свойства, вес, размеры, штрихкоды, изображения, категории, цены и остатки.

Отдельно ответьте на вопросы:

  • какие свойства создают варианты товара;

  • можно ли автоматически создавать новые свойства и значения;

  • как передаются несколько изображений и их порядок;

  • что делать с товаром, удалённым или помеченным на удаление в 1С;

  • показывать ли товар с нулевым остатком;

  • суммировать ли остатки складов или показывать доступность по регионам;

  • как округлять цены и какая система считает скидку.

Чем точнее эти правила, тем меньше ручной уборки после первой полной выгрузки.

Разберите жизненный цикл заказа

Заказ — не один документ, а последовательность изменений. В ТЗ полезно описать весь путь: создание на сайте, передача в 1С, резервирование, оплата, сборка, отгрузка, отмена и возврат.

Для каждого этапа укажите, какие данные передаются и кто может их менять. Особенно важны сценарии, в которых заказ редактируют после обмена: покупатель сменил адрес, менеджер заменил товар, платёж пришёл позже, служба доставки разделила отправление.

Нужно заранее определить соответствие статусов. Статус «выполнен» на сайте и документ реализации в 1С могут отражать разные моменты процесса. Простое сопоставление по похожим названиям часто даёт ложные уведомления покупателю.

Не выбирайте транспорт раньше задачи

CommerceML, REST API, очереди сообщений и файловый обмен — это способы доставки данных, а не цель проекта. Выбор зависит от объёма каталога, допустимой задержки, версии продуктов, возможностей конфигурации 1С и требований к устойчивости.

В техническом задании стоит зафиксировать ограничения: сколько товаров и предложений передаётся, как часто должны обновляться остатки, допустимо ли полное обновление, есть ли несколько сайтов или баз, какие порты и адреса доступны, требуется ли шифрование и ограничение по IP.

Для частого обмена небольшими изменениями важна инкрементальная передача. Для больших выгрузок — разбиение на части и продолжение после сбоя. Если эти требования не указать, рабочая на тестовом каталоге схема может не выдержать боевой объём.

Опишите ошибки как часть продукта

Интеграция работает долго, поэтому редкий сбой неизбежен. Вопрос не в том, будет ли ошибка, а в том, заметят ли её и сможет ли обмен продолжиться без дублей.

В ТЗ должны быть ответы:

  • где хранится журнал обмена;

  • какие ошибки считаются временными, а какие требуют вмешательства;

  • сколько раз повторяется операция;

  • сохраняется ли номер пакета и последний успешно обработанный объект;

  • кто получает уведомление и с какой задержкой;

  • можно ли безопасно повторить пакет;

  • как восстановить обмен после частично загруженного файла.

Сообщение «обмен завершён» недостаточно. Полезный журнал показывает время, направление, количество прочитанных, созданных, обновлённых и отклонённых объектов, а также понятную причину отказа.

Сразу запишите критерии приёмки

Формулировка «данные синхронизируются корректно» непроверяема. Замените её конкретными сценариями. Например: изменение остатка в 1С появляется на сайте не позднее чем через десять минут; повторная загрузка того же пакета не создаёт второй товар; оплаченный заказ передаётся в 1С один раз; неизвестное значение свойства попадает в журнал и не останавливает остальные позиции.

Для приёмки нужен набор контрольных товаров и заказов: простой товар, вариантный товар, нулевой остаток, несколько цен, скидка, отмена, частичная отгрузка и возврат. Ожидаемый результат фиксируют до теста, а не объясняют после него.

Короткий каркас ТЗ

Практичное задание можно собрать из девяти разделов:

  1. Цель интеграции и границы проекта.

  2. Системы, версии и ответственные стороны.

  3. Схема потоков данных.

  4. Состав сущностей и полей.

  5. Идентификаторы и правила сопоставления.

  6. Расписание, объёмы и требования к скорости.

  7. Конфликты, ошибки, журналирование и уведомления.

  8. Безопасность и доступы.

  9. Сценарии испытаний и критерии приёмки.

Такой документ не отменяет обследование, но переводит разговор из области «связать две системы» в набор проверяемых решений. Это помогает точнее оценить проект и, главное, не обнаруживать бизнес-правила уже после запуска.

Обсуждение 0

Делись опытом и задавай вопросы. Комментарии без ссылок появляются после проверки редактором.

Пока никто не написал. Начни обсуждение.