Strapi в России редко воспринимается как платформа для построения e-commerce решений. Обычно его выбирают как headless CMS для корпоративных сайтов, блогов или витрин. Но мы решили пойти против привычного шаблона и показать, что на базе Strapi можно разработать полнофункциональный интернет-магазин — гибкий, масштабируемый, с глубокими интеграциями, сложной логикой. На примере этого кейса мы развенчаем миф о «некоммерческой» природе Strapi и покажем, как его можно использовать в реальном e-commerce проекте.
О клиенте
Компания «Автоспот» развивает цифровые сервисы для автомобилистов. Один из ключевых продуктов — онлайн-запись на техобслуживание в проверенные автосервисы по всей России. Основная аудитория — водители, которым важно экономить время и быть уверенными в качестве обслуживания. Компания активно инвестирует в развитие экосистемы, расширяя её за счёт новых цифровых сервисов. Новый проект — интернет-магазин автозапчастей, расходников — должен дополнить существующую цепочку и укрепить позиции компании как цифрового провайдера в автомобильной отрасли.
Задача
Создать с нуля e-commerce-платформу, которая будет органично встроена в существующую экосистему клиента. Система должна поддерживать сложную структуру каталога автотоваров, обеспечивать быструю загрузку, обработку десятков тысяч позиций, интегрироваться с поставщиками, поддерживать доставку через СДЭК и принимать оплату с разделением сумм (сплит-платежи) через Тинькофф. Кроме того, нужно было учесть, что проект реализуется в режиме фиксированной стоимости и при этом сопровождается объемной, часто уточняемой аналитикой. Наша команда должна была не просто «выполнить ТЗ», а встроить разработку в быстро меняющийся бизнес-контекст.
Сложность проекта и архитектура решения
Команде нужно было разработать не просто интернет-магазин, а систему маркетплейсного типа. У каждого поставщика — свои прайсы, условия, а сам каталог включает десятки тысяч позиций с привязкой к маркам, моделям, модификациям автомобилей. Мы выстроили систему с гибкой архитектурой: сделали поддержку масштабного импорта, вложенной категоризации, асинхронных задач и кастомных связей между сущностями.
Для разработки мы выбрали Strapi. Это решение редко рассматривают в контексте электронной коммерции — и зря. Мы хотим показать на реальном примере: Strapi отлично подходит для e-commerce, если использовать его не как CMS, а как полноценный backend-фреймворк. Мы использовали Strapi в связке с Next.js.
Strapi дал полную свободу в реализации кастомной бизнес-логики: мы могли выносить тяжелые операции — такие как импорт сотен тысяч позиций — в фоновый режим, управлять состоянием заказов через собственные плагины, интеграции, а не адаптироваться под жесткие рамки готовой e-commerce-системы. Сторона Next.js отвечала за сложную клиентскую логику, включая конфигуратор автомобиля, сохранение предпочтений и взаимодействие с виджетами сторонних сервисов, таких как СДЭК. Такое разделение позволило нам оптимизировать проект под высокую нагрузку, обеспечить гибкость в доработке бизнес-логики, а также сделать интерфейс максимально SEO-дружелюбным — без необходимости вносить радикальные изменения в архитектуру.
Оптимизация базы и работа с данными
Изначально предполагалось, что объемы данных будут невелики. Однако в реальности поставщики присылали файлы по 200 000–600 000 строк. Мы переработали изначальную логику импорта: вынесли тяжелую обработку в асинхронные задачи, добавили фоновые очереди, отказались от синхронного парсинга, подключили библиотеки для разбора XLSX-файлов. На этом этапе происходила выборка только релевантных товаров — тех, что нужны именно «Автоспоту». Такой подход позволил не загружать систему избыточными данными, сократил время обработки и упростил последующее управление каталогом.
Важный вывод: если проект предполагает работу с потенциально тяжелыми потоками данных, особенно в рамках ключевых бизнес-функций, архитектуру стоит изначально проектировать с прицелом на асинхронность. Это не про избыточную оптимизацию, а про готовность системы выдерживать рост нагрузки без экстренных переделок.
Интеграции
Технически проект был насыщен внешними интеграциями, каждая из которых имела особенности.
Интеграция с Тинькофф (сплитование платежей)
Система должна была поддерживать модель, при которой деньги от покупателя автоматически делятся между платформой и поставщиком. Мы реализовали сплитование на базе API Тинькофф, учли ограничения на терминалы, обошли конфликты идентификаторов, внедрили систему генерации безопасных платежных номеров.
На старте наш аналитик провел серьезную предварительную работу с документацией: она оказалась недостаточно структурированной, а количество возможных конфигураций терминалов, окружений приводило к ошибкам уже на этапе тестов. Только благодаря тесной связке аналитика и разработчиков мы справились с этой задачей в срок.
Интеграция с СДЭК
Подключили доставку через СДЭК, реализовав полный цикл: от выбора ПВЗ через их фирменный виджет до регистрации заказов и обратной синхронизации по Webhook. Поскольку виджет предоставляется в виде PHP-модуля, мы подняли его как отдельный сервис, настроили взаимодействие с Node.js-приложением. Это позволило корректно встроить выбор доставки в интерфейс и управлять заказами из Strapi.
Интеграция с поставщиками
Каждый поставщик работает в своей модели. Мы разработали административный плагин импорта, который позволяет загружать Excel-файлы, обрабатывать их и валидировать по правилам. Также реализовали визуальные подсказки по ошибкам загрузки и адаптацию под разные шаблоны.
Роль аналитики
Проект начался с объемного технического задания и высокой неопределенности в части бизнес-логики. Ключевую роль сыграл аналитик, который синхронизировал требования с разработчиками, уточнял границы задач, помогал выстроить флоу и обосновывать архитектурные решения.
Команда и процесс
Проект длился около шести месяцев и включал шесть релизов. Мы работали по фиксированной стоимости, с минимальными отклонениями от изначальных оценок.
Каждый релиз был функционально завершенным блоком. Сначала мы выстроили структуру каталога и навигацию, затем — систему оформления заказа, корзину, интеграции и, в финале, платежные сценарии. Заказчик контролировал каждую итерацию, но мы сумели сохранить контроль над архитектурой.
Что получил пользователь?
Сценарий работы с новым сервисом логично встроен в экосистему «Автоспота». Пользователь заходит в знакомый интерфейс записи на ТО, выбирает услугу, получает рекомендации по запчастям и расходным материалам. Из предложенного списка клиент может сразу перейти в каталог, уточнить параметры, положить нужные товары в корзину, выбрать доставку (например, через СДЭК), оплатить заказ картой, а также получить уведомление о статусе — все без участия менеджеров. Система автоматически распределяет заказы по поставщикам, обновляет статусы, регистрирует отправки и обеспечивает модерацию нестандартных ситуаций.
Что получил бизнес?
Выбор Strapi с Next.js в качестве технологической основы позволил не только сократить срок разработки, но и снизить издержки на поддержку. Благодаря кастомной архитектуре, логика не привязана к жестким шаблонам: можно вносить изменения в каталог, процесс заказа, условия доставки и оплату — без глубоких изменений в платформе. Это особенно важно для компании, которая продолжает тестировать новые гипотезы, интеграции.
Ещё один эффект — возможность отказаться от громоздких e-commerce-решений, которые не всегда позволяют гибко адаптировать логику под конкретные процессы: например, работу с партнерскими складами, частично ручную проверку заказов, B2B-доставку. Собственное решение оказалось не только точнее в реализации, но и дешевле в перспективе. Сейчас оно не требует отдельной поддержки: команда клиента может использовать готовый административный интерфейс, а также самостоятельно управлять контентом и заказами.
Результат
Проект «Автоспот» стал для нас возможностью разрушить миф о том, что «Strapi — это просто headless CMS для витрин, блогов». Мы показали на практике, что при правильной архитектуре и подходе Strapi становится основой для надежного e-commerce-решения с кастомной логикой, глубокими интеграциями и высокой гибкостью в поддержке.
Сложность логики, объем данных, интеграции с поставщиками, СДЭКом и платёжной системой — все это команда реализовала с нуля, в рамках фиксированной стоимости, без перегревов по срокам. Архитектура, построенная на асинхронных задачах, масштабируемых очередях, разделённой ответственности между Strapi и Next.js, позволяет легко дорабатывать систему под будущие сценарии бизнеса.
На выходе получился масштабируемый интернет-магазин, интегрированный с логистикой и платежной системой. Пользователи могут выбирать товары, оформлять доставку, получать уведомления и совершать платежи — без участия менеджеров.
Если вы рассматриваете создание интернет-магазина или маркетплейса, не бойтесь нестандартных решений. Strapi — не просто «вспомогательная CMS», а полноценный бэкенд-фреймворк, с которым можно строить устойчивые, управляемые и расширяемые системы.
Мы умеем работать с этой платформой на глубоком уровне: от архитектуры до аналитики, от плагинов до бизнес-процессов. Если вам нужно кастомное e-commerce-решение, которое действительно работает — приходите. Мы соберем его для вас: на Strapi, под ваши задачи, с вниманием к деталям и к реальности, а не только к документации.