Кейс по 1С и API
Это был не проект в стиле “вытащить прайс на страницу и забыть”. Задача оказалась глубже: у сайта был хрупкий слой прайсов, у 1С API был неровный контракт, а бизнесу нужен был не технический эксперимент, а управляемый и поддерживаемый контур публикации цен.
Прайсы на сайте были завязаны на старую связку из Excel, ACF, ручных страниц и логики, которая плохо масштабируется. Снаружи это работало, но внутри было слишком много магии: неочевидные источники данных, сложное сопровождение и высокий шанс снова скатиться в ручные правки.
При этом у клиента уже существовал боевой 1С API личного кабинета, который реально отдавал филиалы и цены. Значит, задача была не “нарисовать новый прайс”, а аккуратно перевести сайт на более правильный источник данных.
У API данные были живые, но не идеально чистые: у части филиалов не было `priceCode`, одни и те же прейскуранты встречались у нескольких филиалов, а часть услуг приходила с нулевыми ценами или с неоднородной структурой.
То есть напрямую прокинуть ответ 1С на сайт было бы плохой идеей. Сначала нужно было понять реальную форму данных, привести ее к рабочему виду и только потом строить новый контур публикации.
Сначала не строил ничего “на веру”, а проверил, что реально отдает API: филиалы, `priceCode`, структуру каталогов, качество ID и типичные сбои контракта. Это дало не презентационную, а рабочую картину данных.
Поднял локальный контур на SQLite, в который складывались филиалы, группы и плоские строки услуг. Это позволило тестировать модель “услуга - цена - филиал” отдельно от фронта и без риска ломать боевой сайт.
Дальше задача уже была не про импорт как таковой, а про архитектуру: сайт должен хранить свою логику вкладок и отображения, а 1С должна быть источником дерева и цен. Так появился более управляемый V2-контур прайсов.
Вкладка прайса на сайте должна быть сущностью сайта, а не слепком из 1С. 1С отдает дерево и цены, а сайт отдельно хранит, какие каталоги включены, что скрыто, как маршрутизировать филиалы и как строить публичный вывод.
Именно это делает контур поддерживаемым: новые каталоги и обновления цен приходят из 1С, но логика показа остается под контролем сайта.
Для бизнеса ценность тут не в слове “API”. Ценность в том, что прайсы перестают быть хрупким ручным контуром, который держится на магии в CMS. Появляется более понятная и масштабируемая схема: 1С как источник, сайт как управляемая витрина.
Это снижает ручную нагрузку, уменьшает хаос при обновлении цен и дает основу для дальнейших улучшений сайта без постоянной переделки всего раздела заново.
Похожие задачи встречаются часто
Можно спокойно разобрать текущий контур и понять, где хватит точечной интеграции, а где уже нужен более взрослый слой между 1С и сайтом.