Начать проект

Обсудим проект?

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

Отправлено!

Спасибо за заявку, мы свяжемся с вами в ближайшее время!

Разработка интернет-магазина: где заканчивается коробка и начинается своя платформа

Разработка интернет-магазина: каталог, цены по складам и обмен с учётной системой

Каталог вырос до сотни тысяч позиций, фильтры думают по пять секунд, в чёрную пятницу сайт ложится, а половина заказов отменяется из-за остатков. Дальше вопрос один: дорабатывать коробку или строить свою платформу. Мы в Code Pilots ведём интернет-магазины с большими каталогами больше десяти лет — PetShop пришёл переделывать падающий сайт на Netcat — с тех пор работаем вместе.

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

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

Кому нужна своя разработка, а кому хватит коробки

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

Профиль магазина Что закрывает задачу Что становится узким местом дальше
До 500 позиций, один склад, один канал, типовая доставка Облачный конструктор с готовой витриной Ничего — до момента, когда появится второй канал
5–15 тыс. позиций, учёт в 1С, розница, стандартные скидки Коробочная CMS с настройкой и парой доработок Скорость каталога и ручное ведение карточек
Десятки тысяч позиций, поставщики с прайсами, маркетплейсы, несколько складов Коробка плюс свой каталог, обмен и админка Фильтры, остатки по складам, выгрузка в каналы
Сотни тысяч позиций, персональные цены, пики в распродажи, мобильное приложение Своя платформа с API для всех каналов Ничего из перечисленного, но растёт цена ошибки в архитектуре

Смысл таблицы простой: решение диктует ассортимент. Магазин на 300 позиций с оборотом в сотни миллионов прекрасно живёт на коробке. Магазин на 200 тысяч позиций с оборотом поменьше упрётся в неё через год.

Коробка приносит с собой готовые ответы на вопросы, которые вам ещё не задавали. Дорого становится там, где ваши ответы другие.

За что на самом деле платят в этом проекте

Заказчик обычно приходит с мыслью, что платит за дизайн и вёрстку. По нашей практике витрина — макеты, адаптив, анимации — забирает меньшую часть бюджета. Основные деньги забирают четыре вещи, которых на демо не видно.

Каталог. Структура товаров, свойства, фильтры, поиск, скорость выдачи при пересечении параметров.

Данные. Откуда приходят товары, цены и остатки, как часто обновляются, что происходит при расхождении.

Заказ. Способы оплаты и доставки, статусы, отмены, возвраты, чек и маркировка.

Обмен. Связь с учётной системой, складом, службами доставки и площадками, а также поведение сайта, когда что-то из этого недоступно.

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

Четыре статьи бюджета интернет-магазина: каталог и поиск, цены и остатки, заказ и оплата, обмен с системами

Каталог и поиск: где коробка упирается

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

У Радиоэлемента в каталоге больше 500 000 товаров, а сайт держит сотни тысяч запросов ежедневно. На таких объёмах фасетные фильтры нельзя считать «на лету» обычными запросами к базе — нужен отдельный поисковый движок и заранее посчитанные срезы. Это и есть первая большая статья бюджета, которую коробка не покрывает.

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

Третья — SEO-структура каталога. Разделы, посадочные страницы под фильтры, канонические адреса и человекопонятные URL закладываем в архитектуру каталога сразу. Переделывать это после запуска дорого: адреса уже проиндексированы.

Цены и остатки

Магазин показывает покупателю цифру, за которую отвечает деньгами. Здесь коробочные решения чаще всего экономят и подводят.

Остаток по конкретному складу. У PetShop доставка работает в 93 городах, и остаток «в компании» не значит ничего: важно, есть ли товар на складе, который обслуживает конкретный адрес. Витрина обязана показывать наличие и срок по конкретной точке отгрузки, иначе растёт доля отмен.

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

Частота обновления. В проекте для B2B-дистрибьютора NESCO мы обновляем остатки раз в 10 минут вместо раза в сутки, а цены — каждые два часа. Клиенты стали реже отменять заказы, а менеджеры перестали разбирать претензии по несовпавшей сумме.

Отдельный вопрос — что показывать при расхождении. Эти правила формулируем до разработки. Продаём ли последнюю единицу. Показываем ли остатки магазинов. Что делает витрина, если товар зарезервирован в другом канале.

Покупатель верит цифре наличия на карточке. Каждый раз, когда она врёт, магазин платит отменой и потерянным доверием.

Откуда берутся товары

В гайдах для начинающих карточку «наполняет контент-менеджер». В реальном магазине с десятками поставщиков это отдельная система, и стоит она заметных денег.

Прайсы приходят по-разному. Один поставщик кладёт файл на FTP, другой присылает почтой, третий даёт доступ в личный кабинет. Форматы у всех свои, названия свойств не совпадают, единицы измерения тоже. Всё это нужно привести к единой структуре каталога.

Для Радиоэлемента мы сначала писали парсеры руками, а когда поставщиков стало несколько десятков, сделали конструктор: клиент подключает нового поставщика через интерфейс без участия разработчиков. Обработка прайса занимает 30–120 секунд; решения, с которыми сравнивали на тех же объёмах, тратили несколько часов.

Второй эффект от единого товарного ядра — каналы. У федерального ювелирного ритейлера 15 000 позиций от десяти с лишним поставщиков раньше вели вручную — менеджеры заводили и обновляли карточки для двух сайтов, приложения и трёх маркетплейсов. После сборки единого ядра и конвейера фидов из ручной работы ушло больше 300 часов в месяц, а средний чек за два года вырос на 35%.

Техника подключения самих площадок разобрана отдельно: лимиты их интерфейсов и синхронизацию цен и остатков мы вынесли в материал про интеграцию с маркетплейсами.

Тексты и характеристики карточек сегодня частично закрывают языковые модели — это одно из направлений, которые мы разбирали в материале про ИИ в интернет-магазине. Но модель работает поверх нормальной структуры данных и не заменяет её.

Заберём ручную работу с каталога

Подключим прайсы поставщиков, приведём их к единой структуре и настроим выгрузку в сайт, приложение и на площадки.

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

Заказ, оплата и касса

Оформление заказа — самое дорогое место в магазине с точки зрения потерь. Каждая лишняя ошибка в корзине конвертируется в брошенные заказы, и это видно в аналитике сразу.

Способы оплаты в 2026 году различаются не только удобством, но и стоимостью для бизнеса.

Способ Что стоит компании Что учесть в разработке
Карты через эквайринг 1,5–2,5% комиссии, сверху НДС 22% на саму комиссию Возвраты, частичные возвраты, холдирование
СБП 0,4–0,7% в зависимости от вида деятельности, не больше 1500 ₽ за покупку Быстрое зачисление, отдельный сценарий возврата
Рассрочка и BNPL Комиссия сервиса Проверка лимита, отмена заказа после одобрения
Оплата при получении Стоимость возвратной логистики Чек в момент вручения, доля невыкупов
Счёт для юрлиц Договор, отсрочка, закрывающие документы

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

Дальше касса. Чек по 54-ФЗ пробивается в момент оплаты, а для маркированных товаров в чек уходит код маркировки. С 1 марта 2026 года разрешительный режим охватывает новые группы, включая безалкогольное пиво, икру и велосипеды. Кассовая программа проверяет код в момент продажи, и «битый» код провести не даст. Для интернет-магазина это означает, что коды нужно вести до момента вручения покупателю.

Обмен с учётной системой

Это главный технический риск проекта и место, где чаще всего экономят зря. Учётная система — обычно 1С — остаётся источником правды по товарам, ценам, остаткам и документам. Вопрос в том, как магазин с ней разговаривает.

Прямое обращение сайта к 1С работает ровно до первого обслуживания учётной системы. У NESCO мобильное приложение обращалось к 1С напрямую, и любое обновление останавливало приём заказов. Мы поставили между ними промежуточное хранилище: приложение работает с ним, данные приходят из 1С по расписанию, а внутренний контур перестал быть частью внешнего.

Для PetShop мы решали ту же задачу на стороне магазина. Требование звучало так: синхронизация в реальном времени при полной независимости от неё. Если ERP недоступна, сайт продолжает принимать заказы штатно, а накопленное уходит в систему сразу после восстановления связи.

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

Учётная система когда-нибудь станет недоступна. Магазин в этот момент либо продолжает принимать заказы, либо стоит вместе с ней.

B2B-витрина: отдельная экономика

B2B-магазин выглядит как обычный, но живёт по другим правилам. Розничная коробка эти правила не поддерживает, и доработка часто выходит дороже собственной разработки.

Цены персональные. У NESCO одновременно работают базовые, персональные и акционные цены. Компания обслуживает девять складов, около 4 000 клиентов и почти 100 000 торговых точек, и условия у всех разные. Каждый клиент открывает витрину и видит свою цену.

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

Заказ повторяется. В B2B корзину собирают из прошлых заказов, шаблонов и присланного прайса. Быстрый ввод по артикулам и загрузка списка файлом экономят клиенту больше, чем красивые карточки.

Роли и права. Со стороны клиента заказ оформляет один сотрудник, согласовывает другой, документы забирает бухгалтерия.

Распродажи и нагрузка

Обычный день магазина ничего не говорит о его пределе. Предел показывают распродажа, рассылка и рекламная кампания, которые приводят месячный трафик за два часа.

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

Технически к пикам готовятся тремя способами, и каждый стоит денег. Кэшируем каталог и карточки, чтобы база не считала одно и то же тысячу раз. Тяжёлые операции уводим в очереди, чтобы оформление заказа не ждало выгрузки в учёт. Заранее описываем деградацию — договариваемся, что магазин отключит при перегрузке, оставив рабочими корзину и оплату. Как такие нагрузки считают заранее, разобрано в материале про высоконагруженные системы.

Что изменилось в 2026 году

Три изменения влияют на проект магазина прямо сейчас.

Рынок вырос, и вырос сильно. По данным АКИТ, за первое полугодие 2026 года объём интернет-торговли составил 7,2 трлн ₽ — на 18,7% больше, чем годом ранее. Доля e-commerce в рознице поднялась до 22,2% против 20,9% в прошлом году. На российские магазины и площадки приходится 96,6% этих денег.

Маркетплейсы стали каналом по умолчанию. По оценке Data Insight, площадки дают 81% всех заказов и 62% объёма продаж. Свой магазин при этом никуда не девается. Маржа там выше, клиент остаётся вашим, и данные о нём тоже. Но выгрузка ассортимента, цен и остатков на площадки становится обязательной частью проекта.

Налоги и маркировка подорожали в обслуживании. Ставка НДС с 1 января 2026 года — 22%, и она же начисляется на комиссию эквайринга. Компании на упрощённой системе платят НДС при выручке свыше 20 млн ₽ в год. Одновременно расширяется маркировка. Новые товарные группы и разрешительный режим требуют доработок в кассовом сценарии и в обмене.

Три архитектуры магазина

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

Вариант Что получаете Где предел
Коробочная платформа с настройкой Быстрый старт, готовый бэкофис, много готовых модулей Скорость каталога, нестандартные цены, обновления ломают доработки
Коробка как бэкофис плюс своя витрина Свой фронтенд и свой каталог поверх готового ядра заказов Двойная поддержка, ограничения ядра остаются
Своя платформа с API Полный контроль, одинаковые данные для сайта, приложения и площадок Дороже на старте, нужна команда сопровождения

Третий вариант окупается там, где магазин становится платформой для нескольких каналов. У PetShop решение изначально строилось как платформа — поэтому API для мобильного приложения появилось за две недели, тогда как разработка в отрыве заняла бы месяцы.

Мы работаем во всех трёх сценариях. Ведём проекты на 1С-Битрикс с интеграциями в 1С и ERP, делаем платформы под процесс заказчика на Symfony или Laravel с Vue во фронтенде. Выбор зависит от того, насколько ваша модель торговли отличается от типовой.

Три архитектуры магазина: коробочная платформа, коробка со своей витриной и собственная платформа с API

Порядок запуска

Магазин запускают не целиком. Порядок работ обычно такой.

Первое — данные. Структура каталога, свойства, источники товаров, правила цен. Пока это не описано, дизайн рисовать бессмысленно: карточка зависит от того, что в ней есть.

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

Третье — витрина и заказ. Каталог, поиск, карточка, корзина, оплата, личный кабинет. Это и есть первая рабочая версия, которую можно запускать.

Четвёртое — каналы и автоматизация. Выгрузка на площадки, фиды поставщиков, программа лояльности, инструменты маркетинга.

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

Сколько стоит

Разработка интернет-магазина у нас начинается от 1,5 млн ₽, платформа под нестандартный процесс — от 1,7 млн ₽, каждая интеграция обходится от 150 тыс. до 1,5 млн ₽ в зависимости от системы, аудит существующего кода и архитектуры — 200–600 тыс. ₽.

Назвать вашу цифру по описанию задачи невозможно: смету считаем по вашему каталогу, числу источников данных и списку каналов, оценка бесплатная. Быстрый ориентир получите за 10 минут в калькуляторе — estimate.code-pilots.ru.

К бюджету разработки добавляется стоимость владения, и её обычно недооценивают. Лицензия «1С-Битрикс: Управление сайтом» стоит от 5 680 ₽ в редакции «Старт» до 77 200 ₽ в редакции «Бизнес»; редакция «Энтерпрайз» для крупных проектов — от 1 950 000 ₽. Дальше идут ежегодные продления, хостинг под нагрузку, платные модули и доработки после каждого обновления платформы.

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

Посчитаем ваш магазин

Опишите каталог, источники товаров и каналы продаж. В ответ пришлём состав работ, смету и сроки по этапам.

Получить консультацию

Три ошибки, которые дорого стоят

Дизайн раньше данных. Макеты рисуют до того, как описана структура каталога и правила цен. Потом выясняется, что у половины товаров нет нужного свойства, а карточка под них не рассчитана.

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

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

С чего начать

Первое — посмотреть, где отваливается покупатель. Сколько человек доходит до корзины, сколько нажимает «оплатить», на каком шаге теряется больше всего. У ювелирного ритейлера аномальную долю брошенных корзин давали ошибки в оформлении заказа: часть покупателей просто не могла дойти до оплаты.

Второе — выписать источники товаров и частоту обновления. Сколько поставщиков, в каких форматах приходят прайсы, сколько человек ведёт карточки руками. Это самая недооценённая часть сметы.

Третье — сформулировать словами правила цен и остатков. Кто видит какую цену, что считается доступным к продаже, что происходит с последней единицей товара. Правило, которое не получается объяснить словами, не получится и закодировать.

С чего начать: разобрать воронку заказа, выписать источники товаров, сформулировать правила цен и остатков

Обсудим ваш магазин?

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

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

Часто задаваемые вопросы

Если в каталоге до 10–15 тысяч позиций, товары вы ведёте своими силами, склад один, а цены одинаковы для всех покупателей — да, коробка закроет задачу. Смотреть в сторону своей разработки стоит, когда появляются поставщики с прайсами, несколько складов с разными остатками, персональные цены или заметные пики нагрузки.

Первая рабочая версия магазина среднего размера — два-три месяца. Полная переработка большого магазина занимает больше: платформу PetShop с каталогом, личным кабинетом и отказоустойчивой интеграцией мы перерабатывали пять месяцев. Сроки определяют количество интеграций и сложность правил ценообразования.

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

Площадки дают 81% заказов в стране, но маржа там ниже, а клиент остаётся клиентом площадки. Свой магазин решает две задачи. Он удерживает постоянных покупателей вместе с их историей и данными и продаёт ассортимент, который на площадках идёт плохо. На практике каналы совмещают, а ассортимент и остатки ведут из одной точки.

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

Разработка с Code Pilots

Code Pilots — студия заказной разработки полного цикла: веб- и мобильные продукты со сложной бизнес-логикой, интеграциями и высокими нагрузками. В e-commerce мы закрываем места, где магазины обычно и спотыкаются. Собираем каталоги на сотни тысяч позиций с быстрым поиском, считаем цены и остатки по конкретным складам, строим отказоустойчивый обмен с 1С и ERP, делаем B2B-витрины с персональными ценами и дебиторкой и выгружаем ассортимент в маркетплейсы.

С PetShop работаем больше десяти лет, с Радиоэлементом — с 2014 года; оба проекта пережили несколько поколений нагрузки и ассортимента. Часть решений у нас уже готова и проверена в бою. Конструктор парсеров прайсов, каркасы личных кабинетов и админ-панелей, наработки по обмену с учётными системами — за счёт этого старт быстрее, а бюджет ниже.

Внутри — аналитики, дизайнеры, backend- и мобильные разработчики, QA и DevOps, middle+ и senior. Пришлите выгрузку каталога и список систем, с которыми магазин обменивается данными: по ним уже видно объём работ и порядок цифры. Обсудить проект →

Обсудим проект?

Заполните форму или напишите нам
на airmail@code-pilots.ru
Нажимая на кнопку, вы даете согласие на обработку персональных данных и соглашаетесь с политикой конфиденциальности.

Спасибо!

Спасибо за сообщение, мы свяжемся
с вами в ближайшее время!
success