Архитектурные ограничения 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