Сначала определите направление данных

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

Что синхронизировать и кто главный

ДанныеЧастый источник истины
Товар/артикул1С
Цена1С
Остаток1С
SEO-текст/URLсайт
Фотозависит от процесса
Заказ клиентасайт
Статус исполнения1С/ERP
Трек-номерлогистика/1С

CommerceML и протокол обмена

Официальный протокол 1С описывает обмен каталогами и заказами через HTTP и CommerceML. Сеанс включает авторизацию, согласование параметров, передачу файлов и пошаговый импорт. Это важно учитывать при больших каталогах: обмен должен уметь продолжаться пакетами, а не ждать один огромный запрос.

Проверить endpoint обмена вручную

BASH
# checkauth
curl -i -u 'login:password'   'https://example.com/1c_exchange.php?type=catalog&mode=checkauth'

# init
curl -i -b cookies.txt -c cookies.txt   'https://example.com/1c_exchange.php?type=catalog&mode=init'

# Точные параметры и формат ответа сверяйте
# с вашей реализацией протокола CommerceML.

Типовые проблемы обмена

ПроблемаПричина
Дубли товаровнет устойчивого ID/external_id
Цена откатываетсядва источника истины
Обмен обрываетсяtimeout/слишком большой пакет
Остатки старыеобмен не завершился или кэш
Заказы дублируютсяповтор без идемпотентности
Характеристики пропадаютневерный mapping CommerceML
Фото не обновляютсяотдельный процесс/права/лимиты

Не связывайте товар по названию

Используйте стабильный идентификатор из 1С/CommerceML. Название и артикул могут меняться. При повторной загрузке один и тот же external_id должен обновлять существующий объект, а не создавать новый.

Лог обмена нужен обязательно

Записывайте session id, этап протокола, имя файла, количество обработанных объектов и последнюю ошибку. Не логируйте пароль 1С.

Связанные материалы

Контроль качества обмена 1С и сайта

Согласуйте источник истины для артикула, цены, остатка и статуса заказа. Используйте постоянный идентификатор товара, иначе повторный импорт способен создавать дубли. При больших каталогах отдельно проверьте пакетную загрузку, частичные ошибки, удалённые товары, варианты характеристик и восстановление после обрыва обмена.

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