Архитектурные ограничения Shopify: что важно понимать

Часто к нам приходят клиенты с масштабными запросами, которые разбиваются о архитектурные рамки Shopify. Это не баги системы, а осознанные правила игры ради безопасности и отказоустойчивости.

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

1. Discounts (система скидок)

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

  • Применение только на уровне корзины и чекаута: Shopify не отображает и не рассчитывает скидки (любого типа) на уровне карточки товара. Пользователь не увидит динамически пересчитанную цену в каталоге. Итоговое применение скидки отобразится уже в корзине или на этапе оформления заказа.

  • Лимит на количество активных автоматических скидок: Shopify ограничивает количество одновременно активных автоматических скидок в магазине — максимум 25. Это число включает как встроенные правила, так и скидки, созданные через сторонние приложения.
    Пример: Если в магазине уже запущены сезонная скидка, промо для новых клиентов, скидка по конкретной коллекции и пара автоматических офферов от приложений, то при превышении лимита в 25 правил новые автоматические скидки активировать физически не получится.

  • Ограничения на комбинирование: Не все скидки в Shopify можно свободно сочетать между собой. Комбинации зависят от типа скидки (product / order / shipping) и настроек совместимости. Если они не настроены как совместимые в админ-панели, Shopify применит только одну — наиболее приоритетную по логике системы. 
    Подробнее о доступных комбинациях тут 

  • Лимит на количество скидок в одном заказе: Клиент может использовать строго ограниченное количество скидок одновременно: до 5 discount codes (product/order) и только 1 shipping discount code.

Как мы это решаем: Для более сложных маркетинговых механик мы в IceStore Group часто разрабатываем кастомные решения, которые закрывают эти сценарии без ограничений платформы.

2. Local Delivery vs Shipping

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

Локальная доставка (Local Delivery)

Если бизнес работает с доставкой “по городу” или в пределах региона, Shopify предлагает встроенный инструмент Local Delivery. Однако у него есть ряд ограничений, которые важно учитывать заранее.

  • Доставка настраивается либо по радиусу, либо по списку почтовых индексов. Радиус ограничен 160 км и не может пересекать границы стран. Это означает, что любые трансграничные сценарии через Local Delivery реализовать невозможно.
  • Существует ограничение на структуру зон: на одну локацию можно создать не более 10 delivery-зон.
    Например,
    если сервис доставки еды делит город на 15 зон с разными тарифами, в Shopify придётся объединять зоны или упрощать модель, потому что создать все 15 зон нативно нельзя.
  • Дополнительно есть технические ограничения на работу с индексами: список ZIP/postcode ограничен 3000 символами. На практике это около 400–500 индексов в одной зоне (в зависимости от формата записи). При большом количестве точечных зон бизнес быстро упирается в этот лимит.
  • Отдельный важный момент — отсутствие работы со временем доставки. В Shopify нет встроенных временных слотов: нельзя задать окна доставки с разными ценами или реализовать сценарий “закажи до определённого времени — получи сегодня”.
    Например, если клиент оформляет заказ на торт и хочет выбрать доставку “с 18:00 до 20:00”, в стандартном чекауте Shopify такой опции просто нет.

Shipping

Если говорить про shipping, Shopify использует другую модель — через зоны доставки.

  • Логика строится вокруг стран, регионов и штатов. Платформа не работает с расстоянием как параметром — только с географическими зонами. При этом отсутствует нативная работа с городами как отдельной единицей логики: нельзя задать условия доставки для конкретного города без обходных решений.
  • В настройках доставки доступно четыре типа тарифов: фиксированная ставка, доставка по сумме заказа, по весу и расчёт через перевозчиков. Это покрывает базовые сценарии, но вся логика фактически ограничена двумя параметрами — ценой и весом.
  • Отдельно стоит учитывать работу с shipping profiles. Если в заказе товары относятся к разным профилям доставки, Shopify не объединяет их в единый тариф — ставки суммируются. Для клиента это может выглядеть как неожиданно высокая стоимость доставки, если такая логика не была заранее продумана.
  • Ещё один важный нюанс — интеграция с перевозчиками. Динамические тарифы (carrier-calculated shipping) доступны не на всех тарифных планах и могут требовать отдельной активации через поддержку Shopify или перехода на Advanced или Shopify Plus.

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

3. Закрытая зона: Checkout

В Shopify чекаут — это самая строго контролируемая часть платформы. Он стандартизирован и доступен для ограниченной кастомизации в зависимости от тарифного плана.

  • Блокировка кастомизации на базовых тарифах: На планах Basic, Grow, Shopify и Advanced доступна только базовая визуальная настройка чекаута через стандартный конструктор. Вы можете изменить брендирование (логотип, цвета) и отредактировать базовые тексты (в ограниченном объеме) Но вы не можете менять структуру шагов оформления заказа или добавлять кастомную логику полей.

  • Запрет на изменение кода: В отличие от корзины (cart), чекаут на базовых тарифах нельзя изменить через theme code или прямую модификацию шаблонов. Для Checkout вы не найдете ни одного файла с кодом. Это сделано ради стабильности и безопасности платежных данных.

  • Shopify Plus: Расширенный контроль над checkout доступен исключительно на тарифе Shopify Plus через технологию Checkout Extensibility. Только на этом enterprise-плане бизнес может легально добавлять кастомные блоки в чекаут, менять поведение отдельных элементов и внедрять дополнительные сценарии логики оформления заказа.

Как мы это решаем: Мы выжимаем максимум из этапа до чекаута. Оптимизируем всплывающую корзину (cart drawer) — выносим туда кастомные поля, апсейлы, подарки и виджеты (включая выбор даты и времени доставки).

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

Для опытного разработчика эти лимиты — не глухая стена, а понятное техническое ТЗ, вокруг которого мы в IceStore Group ежедневно строим эффективные решения.

Остались вопросы или нужна помощь с настройкой? 
Напишите нам в Telegram @icestoregroupshopify

Valeria Borman

Shopify Эксперт · IceStore Group