Разработка сайта на Laravel для магазина, где у каждого клиента своя цена
Laravel советуем, когда менеджер вручную считает цену каждому дилеру, потому что скидки и отсрочки не укладываются в модули готовой платформы. Тогда дилер будет сам оформлять заказы в кабинете, а данные уйдут в учётную систему без ручного переноса.
Что вы получаете за разработку на Laravel
Сначала проверяем, нужен ли вам Laravel вообще. Если да, вы платите за свою логику продаж, обмен с учётной системой и код, который остаётся у вас.
Когда Laravel нужен, а когда нет
- Сравниваем ваши правила продаж с тем, что умеют WooCommerce и OpenCart с модулями.
- Магазину на 200 товаров с одной ценой хватит WooCommerce, и это обойдётся дешевле.
- Выбор Laravel объясняем конкретными операциями, которые не закрывает готовый модуль.
Логика, ради которой пишем на Laravel
- Договорная цена, лимит клиента и согласование менеджера становятся отдельными шагами заказа.
- У покупателя, дилера и менеджера свои цены, документы и права.
- Повторный заказ берёт сегодняшнюю цену и проверяет, есть ли товар на складе.
- Где менеджер может вручную отступить от правил, видно ещё в прототипе.
- В первую версию берём то, что нужно в день запуска. Остальное идёт в план развития.
Интеграции
- Учётную систему, CRM или складскую программу подключаем, если есть документация и тестовый доступ.
- Для каждого поля договариваемся, откуда оно приходит, куда уходит и кто за него отвечает.
- После обрыва связи повторная отправка узнаёт заказ и не создаёт дубль.
- Когда обмен ломается, журнал показывает, что произошло и кто должен это исправить.
- Интеграцию вы принимаете на контрольных примерах запросов и ответов.
Код и доступы принадлежат вам
- У вас есть доступ к репозиторию и истории изменений.
- Пароли и ключи сервисов хранятся вне кода, поэтому репозиторий можно открыть другой команде.
- Развёртывание с нуля по инструкции проверяем на чистом сервере ещё до сдачи.
- О каждом стороннем аккаунте и лицензии заранее договариваемся, кто их владелец.
- После запуска код дальше ведёт ваш разработчик или мы по отдельной договорённости.
// Платформу и модули выбираем после проверки каталога, интеграций и плана развития.
Готовые части магазина вы видите до запуска
- 01Технический бриф
- 02Архитектура и макеты
- 03Разработка спринтами
- 04Данные, тесты, передача
01
Технический бриф
Разбираем, кто что делает в магазине, как считаются цены, кто согласует заказы и куда идут данные.
// на выходе границы первой версии и структура сметы
02
Архитектура и макеты
Согласуем, как хранятся цены, заказы и документы, и рисуем экраны кабинетов.
// на выходе схема данных и прототипы основных сценариев
03
Разработка спринтами
Каждую собранную часть выкладываем на тестовый сервер, и вы проверяете её на согласованных сценариях.
// на выходе части магазина, которые вы уже приняли
04
Данные, тесты, передача
Загружаем контрольные данные, проверяем обмен с учётной системой и переносим магазин на рабочий сервер.
// на выходе запущенный магазин, код и доступы
01Кто подхватит код, если команда сменится?
Другой разработчик или студия, которые знают Laravel. Состав передачи согласуем ещё до старта, а перед сдачей проверяем, что проект разворачивается с нуля по нашей инструкции. Так что новой команде хватит репозитория, доступов и этой инструкции.
02Сколько стоит интернет-магазин на Laravel?
От $10 000. Эту сумму закладываем, когда в магазине есть B2B-кабинет или нестандартная логика, например персональные цены или согласование заказов. Если такой логики нет, дешевле взять готовую платформу вроде WooCommerce или OpenCart, от $2 499. Точную смету составляем после технического брифа, а грубо прикинуть можно в калькуляторе.
03Сколько длится разработка сайта на Laravel?
Срок называем после технического брифа, потому что он зависит от количества ролей, интеграций и того, что входит в первую версию. Работу делим на этапы, и готовые части вы проверяете на тестовом сервере ещё до запуска. Форматы магазинов по составу и цене можно сравнить на странице интернет-магазинов.
04У нас уже есть магазин. Переписывать на Laravel или дорабатывать?
Сначала выясняем, что в нём можно сохранить. Если не хватает одного-двух процессов, часто дешевле дописать модуль к текущей платформе. Переписывать на Laravel стоит, когда доработки уже обходятся дороже новой основы. Товары, адреса страниц и заказы переносим отдельной строкой сметы. Текущую систему и примеры операций удобно описать в брифе.
05Почему не готовая платформа, если она дешевле?
Если модули закрывают ваш каталог и заказы, берите готовую платформу. Мы сами так посоветуем. Laravel окупается, когда весь процесс держится на ваших правилах продаж. На готовой платформе эти правила пришлось бы латать доработками, а доработки проверять после каждого обновления.
06Выдержит ли магазин большой прайс и пиковые заказы?
Это покажет нагрузочный тест до запуска. Перед ним договариваемся о самых тяжёлых операциях, например об импорте прайса на десятки тысяч строк, поиске по каталогу и оформлении заказов в часы пик. Сервер и кеш настраиваем на эти объёмы, а после теста вы будете знать, какую нагрузку магазин выдерживает.
07Сможет ли штатный разработчик продолжить работу?
Да. Он получает репозиторий, документацию и доступы, а перед передачей мы вместе разбираем архитектуру, в том числе правила цен и обмен с учётной системой.
08Можно ли заказать сайт на Laravel из другого города?
Можно. Мы из Харькова и Киева, но проект ведём удалённо. Созваниваемся в Google Meet, работаем в общем репозитории, а тестовую версию магазина вы открываете в браузере. Для старта опишите задачу в брифе.
09Чем Laravel отличается от готовой CMS?
Laravel — это PHP-фреймворк, каркас, на котором программисты пишут логику именно вашего бизнеса. В готовой CMS вроде WooCommerce или OpenCart каталог, корзина и модули уже есть. Её стоит брать, когда они закрывают задачу без серьёзных уступок. На Laravel эти части тоже приходится писать, зато роли, согласования и цены работают так, как принято у вас.
Расскажите о своих ценах — посчитаем магазин
Оставьте имя и телефон или ник в Telegram. Свяжемся в рабочее время и расспросим о клиентах, скидках и учётной системе. После разговора скажем, нужен ли вам Laravel и из чего сложится смета.
Нажимая кнопку, вы соглашаетесь с политикой конфиденциальности
Харьков · Киев
// Подробнее
Сайт на Laravel нужен не каждому магазину
Разработку сайта на Laravel заказывают, когда магазин продаёт не по одной цене для всех. У дилера свой прайс, оптовик платит с отсрочкой на 30 дней, крупный заказ должен согласовать менеджер, а остатки и накладные ведут в 1С или BAS. Готовая платформа тоже это умеет, но через модули и доработки. Бывает, что они обходятся дороже собственного кода, и тогда мы пишем магазин на Laravel под ваши правила.
Читать далее
Когда Laravel окупается
Всё решает одна операция, которую готовая платформа делает плохо. Например, дилер оформляет заказ по своему прайсу, а менеджер его согласует. Описываем такую операцию от первого клика до записи в учёте, считаем исключения и сравниваем доработку модуля на готовой платформе с собственным кодом. Выбор объясняем именно этой операцией, потому что общие слова о гибкости ничего не доказывают.
Если у вас несколько сотен товаров и одна цена для всех, Laravel не нужен. Такой магазин дешевле запустить на WooCommerce или OpenCart. Шесть платформ и собственную разработку мы сравнили в статье на чём строить интернет-магазин.
Сколько стоит разработка сайта на Laravel
Магазин на Laravel стоит от $10 000. Это цена для проекта с B2B-кабинетом или нестандартной логикой вроде персональных цен или согласования заказов. Сколько именно, зависит от количества ролей, правил скидок, объёма каталога и систем, с которыми нужен обмен.
Точную цифру называем в смете после технического брифа. Наполнение каталога и переезд со старого магазина считаем отдельно, как и на других платформах. Грубую оценку даст калькулятор.
Роли и кабинеты
Покупатель, дилер, менеджер и администратор видят разные цены, документы и действия. Поэтому начинаем с таблицы доступов, где видно, кто создаёт, согласует, редактирует и отменяет заказы. Из неё вырастают и экраны кабинетов, и тесты.
В таблице есть и запреты. Дилер не видит чужих документов, менеджер не может незаметно поменять утверждённую цену, заблокированный аккаунт не оформит заказ. Эти запреты тестируем вместе с основными сценариями. Каждое изменение прав, которое касается денег, документов или персональных данных, попадает в журнал. Чем B2B-покупатель отличается от розничного и как это меняет сайт, объясняем в статье о B2B и B2C.
Первая версия — один рабочий цикл
Создание интернет-магазина на Laravel со всеми функциями сразу затягивает запуск. Поэтому в первый релиз оставляем один сквозной сценарий и нужные справочники. В таком сценарии дилер входит, видит свою цену и оформляет заказ, менеджер его согласует, а подтверждённые данные уходят в учётную систему. Аналитика, сложные бонусы и новые роли ждут следующих релизов.
Другим ролям на старте может хватить ручного процесса, если он никого не останавливает. Такое решение записываем, чтобы временное не стало постоянным. Запас «на будущее» в коде не заменит функций, которыми команда будет пользоваться в день запуска.
Обмен с учётной системой и CRM
Для учётной системы, CRM или склада договариваемся о методах API, полях, направлении обмена, авторизации, частоте и повторных попытках. Тестовый доступ и документация нужны ещё до финальной оценки, потому что без них не видно, отдаст ли система нужные данные.
К интеграции прикладываем образцы запросов и ответов, таблицу статусов обеих систем и имя ответственного с каждой стороны. Тогда, если внешняя система поменяет API, сразу видно, где искать сбой. Для каждой ошибки решаем, можно ли безопасно повторить запрос без дубля заказа и кому придёт уведомление. Обмен между несколькими системами вне магазина считаем отдельной автоматизацией процессов.
Данные отдельно от экранов
Каталог, цены, заказы и документы описываем независимо от конкретных экранов. Поэтому кабинет можно переделать или добавить новый канал продаж, не копируя правила в несколько мест. Для основных записей храним стабильные идентификаторы и историю изменений. Это важно, когда одна цена приходит из ERP, другая зависит от договора, а заказ проходит несколько согласований.
Схемы данных и описание API передаём вместе с кодом в согласованном объёме. Новый интерфейс подключится к тем же правилам, но каждый такой шаг оцениваем отдельно. Бесконечного масштабирования не обещаем.
Код и среда переходят к вам
Вы получаете репозиторий с кодом, настройки сред, миграции базы, логирование, резервное копирование и способ развёртывания. Пароли, ключи и другие секреты храним вне репозитория. Сторонние аккаунты и лицензии передаём по защищённому каналу. Состав документации записываем в коммерческом предложении.
Передачу проверяем чистой установкой по инструкции, то есть так, как проект будет разворачивать другая команда. Если сервер обслуживают ваши люди, границу ответственности согласуем до релиза.
После запуска считаем ручную работу
Следим за ошибками обмена, временем согласований, долей ручных исправлений и вопросами, которые менеджеры задают снова и снова. Эти цифры показывают, какой сценарий автоматизировать следующим, но экономии сами не гарантируют. Продажи зависят и от ассортимента, и от цен, поэтому результат бизнеса самому фреймворку не приписываем. Для каждого нового релиза записываем гипотезу, критерий приёмки и бюджет. Обновления, резервные копии и мелкие правки после запуска можно передать нашей поддержке.
Как заказать сайт на Laravel
Для сметы опишите роли и то, что видит каждая из них, правила цен и скидок, учётную систему и доступ к её документации. Добавьте, на чём работает магазин сейчас и что должно заработать в день запуска. Из этого составляем технический бриф, а потом смету. Расписать всё подробно поможет бриф. Если удобнее рассказать на созвоне, оставьте контакт в форме выше. Для компании из Одессы или другого города разработка интернет-магазина на Laravel идёт так же: все встречи проходят онлайн.
Кабинет, портал или внутренняя система на Laravel без магазина — это уже веб-приложения.
