Lino - Интернет-магазин

Lino: интернет-магазин линолеума, ламината и паркета на платформе ECOCOM. Ширина рулона, цена за м², шесть типов цен, остатки, хиты, перенос данных и 1С.

Lino - Интернет-магазин
INGELLO / BUSINESS0233
Связаться с нами

Типовой движок интернет-магазина не умеет продавать линолеум. Цена указана за квадратный метр, у одного артикула несколько ширин рулона, у оптовика своя цена, а прайс поставщика приходит сразу на коллекцию. Если всё это считать вручную, менеджер правит цены по одной позиции, ошибается в опте и рискует продать ниже допустимого. Lino это магазин, в котором эту арифметику взяла на себя система.

Витрина на платформе ECOCOM Ingello: поиск, корзина, список желаний, сравнение, выбор языка и валюты
Витрина на нашей платформе ECOCOM: поиск, корзина, избранное, сравнение, языки и валюты

Lino продаёт напольные покрытия: линолеум, ламинат, паркет, ковролин. Магазин собран на ECOCOM, нашей платформе для электронной коммерции, и доработан под товар, который продаётся не штуками, а метрами с рулона. Покупатель сразу видит привычную витрину: поиск, корзину, избранное, сравнение, переключение языка и валюты.

Покупательница с пакетами
Продавать пол онлайн сложнее, чем кажется: у рулона есть ширина

Задача

Магазином пользуются две группы людей. Розничный покупатель хочет выбрать ширину, увидеть цену и заказать нужный метраж. Оптовик ждёт свою цену, а менеджеру нужно управлять ценами и остатками целыми категориями, не открывая каждую карточку.

Lino: ТЗ второго этапа, типы цен, правка с витрины, выгрузка из 1С
ТЗ второго этапа: шесть типов цен, правка с витрины, выгрузка из 1С 8.3 УТ

Требования второго этапа заказчик сформулировал сам, и на них хорошо видна специфика отрасли:

  • шесть типов цен: закупка, супер-опт, опт, розница, стоп-цена для розницы и стоп-цена для опта;
  • прайсы поставщиков приходят на коллекцию, а у линолеума и ковролина цены внутри коллекции различаются только шириной;
  • опт «от рулона» подходит линолеуму, но не подходит ламинату и паркету, поэтому для ламината опт начинается от 100 м²;
  • стоп-цену удобно отталкивать от закупки, если закупочная цена заполнена;
  • выгрузка из 1С 8.3 «Управление торговлей» с учётом по сериям: новые товары и остатки, без описаний и картинок.

Как устроено внутри

Карточка: ширина рулона и цена за м²

В карточке покупатель выбирает ширину рулона и видит цену за квадратный метр в рознице и оптом от рулона. В корзине количество дробное, с двумя знаками после запятой: 17,4 м² здесь нормальный заказ, а не ошибка ввода. Стоп-цены работают как нижняя граница: ниже них продавать нельзя, даже если менеджер даёт скидку.

Карточка линолеума с выбором ширины рулона и ценой за квадратный метр
Ширина рулона от 1,5 до 4 м, цена за м² в розницу и оптом от рулона

Порядок выдачи и хиты

Во всех выборках товары в наличии идут раньше товаров под заказ, чтобы покупатель не тратил время на позиции, которых нет на складе. Хиты продаж получают плашку «ХИТ» на главной и в каталоге.

Lino: задача о выводе товаров в наличии раньше товаров под заказ
Товары «в наличии» выводятся раньше товаров «под заказ»
Lino: задача о блоке хитов продаж с плашкой ХИТ
Хиты продаж на главной и в каталоге с плашкой «ХИТ»

Админка и правка цен с витрины

Администратор, войдя в систему, работает прямо с витрины: видит остатки и закупочные цены, меняет цены целой категории с учётом ширины и закупки, правит SEO-мета, H1 и артикул. Типичная ситуация: поставщик прислал новый прайс на коллекцию. Менеджер меняет цену категории с витрины с учётом ширин, и позиции коллекции обновляются разом, без десятков ручных правок.

В панели ECOCOM есть таблица товаров с фильтрами, массовым редактированием и правкой поля прямо в строке. В колонках видны ширина, цена покупки и валюта закупки. Карточка товара разбита на вкладки: характеристики, связанные товары, скидки, изображения, варианты. Заказы показывают клиента, статус, сумму, способ доставки и оплаты, адрес. Рассылку всем клиентам собирают в визуальном редакторе.

ECOCOM Панель: управление товарами с колонками ширина, цена покупки, валюта закупки
Товары в админке: ширина, цена покупки и валюта закупки
ECOCOM Панель: быстрое редактирование названия товара прямо в таблице
Поправить название, не открывая карточку
ECOCOM Панель: карточка товара с вкладками данные, характеристики, скидки, изображения, варианты
Карточка товара: характеристики, связанные товары, скидки, изображения, варианты
ECOCOM Панель: управление заказами со статусом, суммой, доставкой и оплатой
Заказы: клиент, статус, сумма, доставка, оплата, адрес
ECOCOM Панель: рассылка письма всем клиентам с визуальным редактором
Рассылка всем клиентам из админки

Микроразметка

Чтобы карточки красиво выглядели в поиске, проверяли разметку schema.org (Product, Organization, LocalBusiness) в инструменте Google: документация Google по структурированным данным. Как такая работа встраивается в развитие продукта, описано в материале о SEO-оптимизации.

Проверка микроразметки Product, Organization, LocalBusiness в инструменте Google
Микроразметка: Product, Organization, LocalBusiness

Перенос данных

Самая скучная и самая коварная часть. Данные заказчика лежали в другой структуре: производитель и бренд в одной таблице, у них price и purchase_price, у нас price и buy_price, а стоп-цены и супер-опт везде пустые. Каждое такое поле разбирали отдельно и заодно сняли лишние ограничения NOT NULL, чтобы импорт не падал на пустых значениях. Ошибка в сопоставлении полей здесь означала бы неверные цены на витрине, поэтому соответствие проверяли поле за полем вместе с заказчиком.

Переписка о таблице производителей при переносе данных
Перенос данных: производитель и бренд в одной таблице
Переписка о соответствии полей цен при переносе данных
Перенос данных: чьё price чему соответствует

Технологии

Платформа ECOCOM написана на PHP и Yii2 (на скриншотах видна панель отладки Yii), база MySQL. Одна админка обслуживает несколько языков, валют и магазинов. Задачи вели на доске, где у каждой есть скриншот и обсуждение с заказчиком, поэтому любое решение по ценам можно поднять и проверить.

Как такой магазин внедряется у клиента

  1. Консультация и модель. Разбираем, как Вы считаете цены, опт и скидки, и показываем модель будущего магазина. Подробнее об этапе консультации и моделирования.
  2. Техническое задание. Фиксируем типы цен, единицы измерения, точность количества и границы стоп-цен, как в ТЗ Lino выше. Об этом этап технического задания.
  3. Платформа и доработки. Типовое (каталог, корзина, заказы, рассылки) берём из ECOCOM, доработки делаем там, где у бизнеса настоящая специфика.
  4. Данные и учёт. Переносим каталог со сверкой полей и подключаем учётную систему. Про обмен с 1С и другими сервисами в статье об интеграциях.

От клиента нужны прайсы поставщиков, правила оптовых цен и скидок, доступ к старой базе и человек, который отвечает за учёт. Честная граница: в кейсе описаны требования и экраны, которые мы можем показать, а состав работ под Ваш ассортимент определяется на консультации.

Где ещё это применимо

  • стройматериалы и любой товар в метрах, квадратах и рулонах, как у поставщика стройматериалов в Opora ERP;
  • мебель с составными товарами и вариантами обивки, как в кейсе Carveli;
  • ювелирные изделия с вариантами металла, камней и размера, как в кейсе Guzema.

Если Ваш товар не укладывается в «штуку по цене», запишитесь на бесплатную консультацию с архитектором. После неё Вы получите расчёт цены и сроков по этапам.

Где посмотреть

Публичного адреса у магазина сейчас нет, ссылку не даём. Админку ECOCOM показываем на встрече.

Технологический стек и подходы

SaaS архитектура Микросервисы Облачные вычисления Масштабируемость ПО API интеграции DevOps процессы High-load системы Кибербезопасность решений

Частые вопросы

01Как продавать линолеум онлайн, если цена зависит от ширины рулона?

В карточке товара покупатель выбирает ширину рулона, а магазин показывает цену за квадратный метр в рознице и оптом от рулона. Корзина принимает дробное количество с двумя знаками после запятой, например 17,4 м². В магазине Lino на платформе ECOCOM ширина рулона задаётся от 1,5 до 4 м, а товары в наличии выводятся раньше товаров под заказ.

02Зачем интернет-магазину напольных покрытий шесть типов цен?

Розница, опт и закупка живут по разным правилам. В Lino шесть типов цен: закупка, супер-опт, опт, розница и две стоп-цены, для розницы и для опта, ниже которых продавать нельзя. Опт для линолеума считается от рулона, для ламината от 100 м². Закупка и остатки видны только администратору, а стоп-цены не дают при скидке опуститься ниже допустимого уровня.

03Можно ли менять цены целой категорией, а не по одному товару?

Да. Прайсы поставщиков напольных покрытий приходят на коллекцию, поэтому в Lino администратор меняет цены категории прямо с витрины с учётом ширины и закупочной цены. В панели ECOCOM есть массовое редактирование и правка поля прямо в строке таблицы товаров. Так обновление прайса не превращается в десятки ручных правок по каждой позиции.

04Как перенести каталог из старого магазина и не потерять цены?

Сопоставить каждое поле старой и новой базы и проверить его отдельно. В Lino производитель и бренд лежали в одной таблице, цена закупки называлась purchase_price вместо buy_price, а стоп-цены и супер-опт были пустыми. Поля разбирали по одному, лишние ограничения NOT NULL сняли, чтобы импорт не падал на пустых значениях, и сверяли результат с заказчиком.

05Сколько стоит интернет-магазин со сложными ценами и 1С?

Стоимость зависит от числа типов цен, единиц измерения, объёма переноса данных и обмена с учётной системой, например 1С 8.3 «Управление торговлей». Типовое Ingello берёт из платформы ECOCOM, доработки делает под специфику. Запишитесь на бесплатную консультацию с архитектором: после неё Вы получите расчёт цены и сроков по этапам с фиксированной ценой каждого этапа.