Привет, хабровчане! Я Алиса, тимлид в e-commerce агентстве KISLOROD.

Сегодня расскажу, как мы вырвались из цепких лап монолита с помощью Headless и API-First архитектуры, ускорили разработку и дали бизнесу крылья. Это не просто про технологии, а про то, как не сойти с ума от бесконечных правок и при этом ускорить запуск фич. Мы все еще на PHP, под капотом Bitrix, но перестали латать шаблоны и начали строить настоящую платформу. Погнали разбираться: что это, зачем и как не облажаться.

Почему монолит — это не всегда хорошо

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

Представьте интернет-магазин: более 300 000 товаров, тысячи заказов в день, все на Bitrix. Каталог, фильтры, корзина, оформление заказа — все живет в серверных шаблонах, где бизнес-логика, HTML и CSS сливаются в один непонятный суп. Хочешь новый лендинг? Неделя правок. Мобильное приложение? Дублируй логику и молись, чтобы ничего не сломалось. Маркетинг просит A/B-тест? Готовь разработчиков и пару недель. А время загрузки страниц — 2–3 секунды, что бьет по SEO и конверсии.

Бизнес страдает: новые каналы продаж (маркетплейсы, чат-боты, приложения) интегрировать — целая эпопея, маркетинговые идеи тонут в разработке. Разработчики тоже не в восторге: код — это огромный клубок, где изменение кнопки может сломать фильтры. Масштабировать команду сложно, фронт ждет бэк, бэк ждет дизайна, а все вместе — чуда. Знакомо? Тогда читайте дальше.

Headless и API-First: суть без воды

Headless: витрина отдельно, кухня отдельно

Headless — это когда фронтенд (сайт, приложение, умный холодильник) становится просто красивой витриной, которая берет данные через API. Вся логика — каталог, заказы, оплаты — живет в бэкенде, а фронт только рисует картинки и кнопки. Это как в ресторане: официант принимает заказ, но не лезет на кухню готовить стейк. Хотите поменять сайт на React? Легко. Добавить чат-бот в WhatsApp? Пожалуйста. Все работает через один и тот же API, а ядро системы остается нетронутым.

API-First: центр системы

API-First — это подход, где API проектируется первым, как центр системы. Не «потом прикрутим ручки», а сразу четкий контракт: какие сущности, сценарии, форматы, ошибки. Команды фронта и бэка начинают параллельно: в понедельник пишем спецификацию OpenAPI, во вторник бэк пилит эндпоинты на PHP (у нас это Laravel и/или Symfony), а фронт уже подключает прототип на React. К пятнице — рабочая фича, а не «ждем бэк два месяца».

Что это дает бизнесу и разработчикам

Для бизнеса

Для разработки

Скорость запуска лендингов и продуктов — маркетинг не ждёт релизов

Параллельная работа команд над фронтендом и бэкендом

Рост конверсий за счёт скорости загрузки и UX

Меньше технического долга, так как каждое звено — отдельный модуль

Интеграции с маркетплейсами, мобильными приложениями, омниканальными сервисами

Централизация бизнес-логики — один API для всех

Независимость витрины от реализации — смена фронта без переписывания ядра

Возможность использовать современные технологии фронтенда (Next.js, Nuxt.js и т.п.)

Снижение стоимости долгосрочной поддержки и модернизации

Повышенная отказоустойчивость и возможность масштабирования по частям

Повышение устойчивости бизнеса за счет масштабируемости и отказоустойчивости

Повышение проектной зрелости команды, меньше хаоса и «латания»

Это ваш случай, если

  • Объемы. У вас более 1 000 заказов или потенциал роста каталога от 500 000 SKU.

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

  • Высокая скорость изменений и необходимости A/B-тестов. Маркетинг хочет запускать акции за дни, а не недели.

  • Кодовая база — сплошной ком. Все ломается от дуновения ветра.

  • Требования к масштабированию. Вы растете, но старая архитектура тянет назад.

Реальный кейс перехода на Headless

Возьмем тот же магазин: тысячи заказов, Bitrix в основе. Проблемы типичные: шаблоны — это каша из PHP и HTML, маркетинг ничего не может поменять без разработчиков, родной API Bitrix слабый и медленный, страницы грузятся как черепахи. Есть стратегическая инициатива от бизнеса увеличить количество SKU до 1 млн.

Что мы сделали 

  1. Бэкенд на микросервисах. Построили отдельные сервисы на PHP (Symfony): один для каталога (товары, фильтры), другой для заказов (корзина, оформление), третий для пользователей (авторизация, профиль). Каждый отдает REST API с JSON.

  2. Middleware. Создали прослойку на Symfony для маршрутизации запросов, авторизации (JWT-токены), валидации данных и кэширования (Redis + nginx). 

  3. Фронт. Перевели витрину на Vue.js с серверным рендерингом (SSR) для SEO. Мобильное приложение на Flutter подключилось к тому же API.

  4. Bitrix. Оставили его для контент-менеджеров (добавление товаров, акций), но теперь он только источник данных, а не узкое горлышко.

  5. Оркестрация. Ввели оркестратор на PHP для синхронизации с 1С, CRM и отправки уведомлений (почта, SMS, push).

  6. CI/CD. Настроили автодеплой через GitLab: пуш в ветку — тесты — деплой. Никаких FTP в 2025 году.

Что получили

  • Новые фичи выходят за 1–2 дня вместо недели.

  • Время отклика страниц — 700 мс вместо 2–3 секунд.

  • Фронт и бэк работают параллельно, без блокировок.

  • Бизнес получил систему, готовую к новым каналам: от маркетплейсов до чат-ботов.

Ошибки, которые мы допустили (и как их избежать)

  • Сырой API. Отдали фронту спецификацию, которая менялась каждую неделю. Итог: трижды переписывали интеграции.
    Совет: зафиксируйте схемы OpenAPI и тестируйте их через Postman или Swagger перед стартом.

  • Скрытые грабли. Логика фильтров и валидаций пряталась в шаблонах Bitrix. Пришлось выгребать через дебаггер и логи.
    Совет: сразу делайте аудит старого кода.

  • Мониторинг с опозданием. Первые баги в API ловили пользователи, а не мы.
    Совет: ставьте логирование (Loki, ELK) и алерты (Sentry) с первого дня.

  • Версионирование API. Не ввели версии сразу, и мобильное приложение начало ломаться после обновлений бэка.
    Совет: начинайте с /v1/ и планируйте миграцию на /v2/.

Риски и подводные камни: Headless не для всех

Headless и API-First — не панацея. Вот что важно знать:

  • Команда. Понадобится не просто «PHP-разработчик», а инженер, понимающий, где заканчивается API и начинается бизнес-логика. Нужны люди, которые шарят в API-дизайне (REST или GraphQL), DevOps (контейнеры, CI/CD) и тестировании. Джуны без тимлида утонут.

  • Архитектура. Без middleware (кэш, авторизация, роутинг) система развалится под нагрузкой. У нас это был Symfony с компонентами + Redis + nginx-кеш.

  • Бюджет. Это не просто рефакторинг, а полноценный проект: время, деньги, планирование. Без поддержки бизнеса не взлетит.

  • Сложность. Если у вас небольшой магазин на 10000 товаров без планов роста, монолит справится и даже при 100 000, он тоже справится.

Как начать: аналогия с булочной

Объясню, как учила мама. Ваш магазин — булочная. Все заказы идут через одну кассу, печка работает по бумажкам от руки. Новая булочка? Жди, пока пекарь разберется. Доставка? Строй вторую кассу. Headless — это кухня с единым меню (API): курьеры, кассиры, мобильное приложение — все берут данные оттуда. Меняешь вывеску — кухня не страдает.

Пошаговый план

  1. Анализ. Выделите ключевые сущности: каталог, корзина, заказы, пользователи.

  2. API. Спроектируйте REST API с OpenAPI, добавьте примеры ответов и ошибок.

  3. Прототип. Сделайте новый фронт (React, Vue.js) параллельно со старым.

  4. Миграция. Переносите по частям: сначала каталог, потом корзину, потом уведомления.

  5. Единый доступ. Сайт, приложение, бот — все стучатся в одно API.

Практические советы

  1. Цель. Headless нужен для скорости и гибкости, а не ради галочки.

  2. API в приоритете. Даже если фронт старый, стройте фундамент через API.

  3. Плавный переход. Новый фронт может жить рядом со старым, пока не окрепнет.

  4. Обучение. REST и JSON — база, но учите команду за авторизацию (OAuth, JWT), кэширование, очереди.

  5. MVP. Начните с каталога: API + новый фронт. Потом добавляйте корзину, заказы.

  6. Бизнес на борту. Покажите, что это не игрушка разработчиков, а инструмент для роста.

Итог: свобода для всех

Headless и API-First — это не про тренды, а про здравый смысл. Да, нужны вложения: время, деньги, зрелая команда. Но в итоге бизнес получает платформу, которая растет с ним, а разработчики — систему, где можно дышать, а не латать дыры. В PHP-экосистеме это особенно круто: микросервисы на Symfony или Laravel, фронт на React или Vue.js, а Bitrix — просто один из источников данных. Все тикает как швейцарские часы.

Несколько цитат для мотивации: 

  • «Фронт больше не ломится в бэкенд с топором — он вежливо стучится через API»

  • «Система становится конструктором, где можно менять блоки без страха обрушить всё»

  • «API — это контракт между бизнесом и технологиями. И чем он четче, тем спокойнее всем»

  • «Фронт, который не зависит от бэка, двигается в 3 раза быстрее»

Если вы уже пробовали Headless или только приглядываетесь — делитесь в комментариях! Какие грабли встретили? Что сработало?

Комментарии (2)


  1. Pitcentr0
    24.06.2025 10:08

    подскажите на опыте, если у магазина bitrix большая сложная логика и взаимосвязи в службах доставки, купонах и правилах корзины, все эти механизмы насколько логично и проблематично переносить в разработку на laravel, у вас был опыт переноса ? т.к реализация каталога, фильтра и seo не вызывает вопросов а перенос все логики купонов и доставки вызывает, как вы делали реализацию ?


    1. AliceInCodeLand Автор
      24.06.2025 10:08

      Добрый день! Да, конечно же, у нас есть такой опыт.

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

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

      Что касается службы доставки, то она работает в виде отдельного сервиса с адаптером к разным типам доставок, вроде СДЭКа.