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

Платформа для оптовой торговли — это закрытый каталог и заказ для ваших покупателей, в котором работают правила опта: цена по договору, кратность упаковки, минимальная партия, резерв, кредитный лимит и отгрузка частями. Строим её вокруг вашего учёта, а не вместо него: остатки, цены и документы берутся из 1С или ERP, заказ уходит обратно. Начинаем с правил опта: они, а не экраны, определяют цену.

Нижняя граница — от 250 000 ₽, правила опта оцениваем на обследованииЦены, остатки и документы из 1С или ERP, заказ возвращается в учётИсходный код в вашем репозитории с первого коммита

С чем приходят

Когда оптовым продажам тесно в прайсе и почте

Заказ приходит файлом и письмом

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

Прайс в нескольких версиях

У крупных покупателей один прайс, у региональных другой, у новых третий, и половина условий хранится в файлах у менеджеров. Покупатель не знает, по какой цене закажет, пока не позвонит.

Остатки и сроки узнают по телефону

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

Интернет-магазин не подходит для опта

Витрина рассчитана на одного человека и одну цену. Для опта в ней приходится дописывать организации, договоры, лимиты и согласование.

Типы платформ

Что называют оптовой платформой: четыре варианта и где у каждого трудности

Кабинет для дилеров с их ценами и документами разобран на странице B2B-портала. Здесь речь о платформе, где центр тяжести — каталог и правила заказа.

Вариант
Для кого
Что внутри
Где ломается
ВариантЗакрытый оптовый каталогодин продавец, свои покупатели
Для когоДистрибьютор или производитель со своим складом и постоянными покупателями
Что внутриУпаковки и кратность, цены по договору, заказ по артикулам и из файла, резерв
Где ломаетсяПрайс-листы расходятся с учётом, остатки не вычитают резерв, покупатель видит позиции, которые ему не продают
ВариантОптово-розничная витринаодна товарная база, две аудитории
Для когоРозничный сайт и закрытая оптовая часть, где после входа меняются цены
Что внутриОдин каталог и два набора правил, общий склад и общие карточки
Где ломаетсяОпт и розница спорят за один остаток, акция попадает не в ту группу
ВариантПлатформа для сети дистрибьюторовпроизводитель и посредники
Для когоГоловной поставщик, у которого товар отгружают разные склады и юридические лица
Что внутриТерритории, цены по уровням сети, остатки по складам посредников, сквозные заказы
Где ломаетсяНет единой модели «кто кому продаёт», остатки посредников обновляются раз в неделю
ВариантB2B-маркетплейсмного продавцов, много покупателей
Для когоВитрина, на которой торгуют сторонние продавцы, а площадка берёт комиссию и разбирает споры
Что внутриКабинеты продавцов, модерация, расчёты между сторонами, рейтинги
Где ломаетсяЭто отдельный продукт со своей экономикой: мы такие площадки не делаем (подробнее ниже)
Каталог

Каталог для опта: упаковки, кратность, аналоги и закрытые позиции

Оптовый каталог отличается от розничного не количеством позиций, а тем, как с ними обращается заказ.

Розничный покупатель берёт «штуку». Оптовый берёт упаковку, коробку, паллету или килограмм, а в учёте та же позиция хранится в базовой единице. Для каждой позиции записываются: базовая единица, вторичные единицы и коэффициенты, кратность (заказывают целыми упаковками), минимальная партия и шаг. Эти данные лежат в учёте, и на обследовании мы первым делом проверяем, заполнены ли они. Если одна позиция записана четырьмя способами, начинать надо со справочника, см. статью про нормативно-справочную информацию.

  • Артикул покупателя. У крупных клиентов свои коды. Платформа хранит соответствие «ваш артикул — артикул клиента», и заказ из его файла собирается без ручной сверки.
  • Аналоги и замены. Если позиции нет, показываем замену с пометкой, чем она отличается; решает покупатель. Подменять молча нельзя.
  • Закрытый ассортимент. Часть позиций продаётся не всем: по региону, уровню договора или допуску. Для остальных такой позиции не существует, а не «нет в наличии».

Карточки берутся из учёта: заводить их второй раз нельзя, у позиции появятся два хозяина. Обмен каталогом с сайтом на 1С-Битрикс описан в статье про CommerceML.

Цены

Откуда берётся цена оптового покупателя и что с каждым источником не так

В опте цена — результат нескольких правил, и порядок их применения нужно записать до разработки.

Источник цены
Как работает
Как считаем на платформе
Ловушка
Источник ценыПрайс-лист группыдля категории покупателей
Как работаетРегионы, уровни партнёрства, типы покупателей: у каждой группы свой прайс
Как считаем на платформеПокупатель относится к группе, группа к прайс-листу; результат берётся из учёта
ЛовушкаПокупатель сидит в двух группах, и неясно, какой прайс главный
Источник ценыДоговорная ценаиндивидуально
Как работаетСпециальные условия по позициям для клиента, иногда с датой окончания
Как считаем на платформеКопия из учёта с датой актуальности; просроченная цена не показывается
ЛовушкаУсловия лежат в таблице у менеджера и не заведены в учёт
Источник ценыСкидка за объёмпо количеству или сумме
Как работаетЧем больше партия, тем ниже цена
Как считаем на платформеЦена пересчитывается в корзине сразу, шкала показана до оформления
ЛовушкаКорзина и учёт считают по-разному, и сумма меняется после заказа
Источник ценыАкциина период
Как работаетЦена или бонус на ограниченное время, иногда с лимитом партии
Как считаем на платформеПравило с датой начала и конца, ограничением по группам и количеству
ЛовушкаВ учёте и на платформе акция действует по-разному
Заказ

Как оформляется оптовый заказ: быстрый ввод, файл, повтор и проверки

Заказ на опте — это не корзина из пяти товаров, а список на десятки строк, который часто собирают по таблице.

  • Быстрый ввод. Поле принимает артикул и количество, подсказывает позицию и сразу показывает цену, остаток и кратность. Ошибка видна в строке, а не при отправке.
  • Загрузка файла. Система сопоставляет строки с каталогом и помечает нераспознанные и спорные (нет в наличии, не кратно упаковке, закрытая позиция). Покупатель исправляет только отмеченное.
  • Повтор заказа. Заказ копируется целиком, а цены и остатки проверяются заново: вчерашние условия сегодня могут не действовать.

Прежде чем заказ уйдёт в учёт, платформа проверяет кратность и минимальную партию, остаток с учётом резерва (а не остаток на складе), кредитный лимит и просрочку покупателя, допуск к позициям и срок доставки. Если заказ превышает лимит, он уходит менеджеру на согласование с понятной причиной. Покупатель видит причину простыми словами и варианты: уменьшить количество, выбрать замену, оставить предзаказ. Отказ без объяснения превращается в звонок. Вход и роли строятся по принципам страницы про SSO и MFA.

Остатки

Остатки, резерв и склады: что показываем покупателю и как не продать одно дважды

Платформа не владеет остатком, она показывает копию из учёта и записывает резерв. Схемы доставки данных описаны на странице интеграции ERP с B2B-платформой.

Ситуация
Что видит покупатель
Что делает платформа
Что решаем на обследовании
СитуацияТовар есть на основном складев наличии, срок отгрузки
Что видит покупательСтатус «в наличии» или число, если вы готовы его показывать
Что делает платформаРезервирует позицию на время оформления и снимает резерв, если заказ не оформлен
Что решаем на обследованииПоказывать ли точный остаток, сколько живёт резерв
СитуацияТовара нет, но он ожидаетсяожидаемая дата и предзаказ
Что видит покупательПредзаказ привязан к ожидаемому поступлению
Что делает платформаРезервирует будущую партию, если это допускает учёт; иначе заявка менеджеру
Что решаем на обследованииКто отвечает за дату, если поступление сдвинулось
СитуацияДанные из учёта не пришлиметка времени «данные на 14:20»
Что видит покупательПоказывает последнюю копию с предупреждением, новые заказы встают в очередь
Что делает платформаОчередь, журнал обмена, оповещение специалисту заказчика
Что решаем на обследованииДо какой давности копия допустима для остатков и для справочников
Маркетплейс

B2B-маркетплейс: что это такое и почему мы такие площадки не делаем

Слово «маркетплейс» в запросах означает два разных проекта, и только один из них мы берём.

Первый проект — витрина одного продавца с большим каталогом и закрытым доступом. Покупатели ваши, цены ваши, склад ваш. Его часто называют «B2B-маркетплейсом», хотя по устройству это оптовый каталог. Именно такую платформу мы делаем.

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

Если у вас один склад или сеть складов, свои покупатели и свои цены, вам нужен оптовый каталог. Платформу с подписками для собственного продукта описывает страница про SaaS.

Что делаем

Из чего состоит работа и сколько она стоит

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

Обследование: каталог и одна-две системы

Как покупатели заказывают сегодня, где лежат цены и условия, что есть в учёте. На выходе правила опта в проверяемом виде, схема обмена и вилка бюджета. Вычитается из первого этапа.

200 000 ₽ · 2–3 недели

Обследование: несколько систем и складов

Учёт, склад, ЭДО, CRM и платформа вместе: матрица источников и правила резерва.

350 000 ₽ · 3–4 недели

Простой оптовый каталог

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

от 250 000 ₽ · разработка от 4 недель

Платформа с договорными ценами и остатками

Договорные цены, скидки за объём, резерв, кредитный лимит, согласование и загрузка заказа файлом. Существенно дороже нижней границы; идёт как лёгкий или тяжёлый пилот.

150 000–400 000 ₽ или 400 000–1 200 000 ₽ · 2–8 недель или 2–3 месяца

Вывод в эксплуатацию

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

от 1 500 000 ₽ этапами по 300 000–700 000 ₽ · от 3 месяцев

Сопровождение

Мониторинг обмена, обращения покупателей, плановые доработки с пакета на 60 000 ₽. Сверх пакета — 5 000 ₽ в час.

20 000 / 60 000 / 120 000 ₽ в месяц
Процесс

Как идёт работа

2–4 недели — Обследование: покупатели, правила, данные

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

Перед разработкой — Прототип

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

От 4 недель — Разработка

Каталог, цены, заказ, резерв, обмен, права. Работаем в вашем репозитории, раз в две недели показываем версию на тестовом стенде.

1–2 недели — Проверка

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

3–7 дней — Запуск на части покупателей

Сначала несколько покупателей и один склад, смотрим журнал обмена и обращения; остальных добавляем группами.

Дальше — развитие или сопровождение

Новые правила, склады и документы по этапам с отдельной приёмкой.

Контроль

Что остаётся у вас и чего мы не делаем

Остаётся у вас

  • Исходный код в вашем репозитории с первого коммита.
  • База, файлы и учётные записи на ваших серверах; развёртывание описано инструкцией.
  • Описание правил опта и таблица источников данных в проверяемом виде.
  • Прототип и документация: с ними можно идти к другому подрядчику.
  • Право остановиться после любой ступени: сделанное остаётся у вас по акту.

Мы этого не делаем

  • Не делаем маркетплейсы со сторонними продавцами: кабинеты продавцов, комиссии, модерация и расчёты между сторонами в нашу работу не входят.
  • Не принимаем платежи и не храним данные карт: оплату обслуживает ваш эквайринг или банк.
  • Не делаем нативные мобильные приложения: адаптивный интерфейс входит в проект, установка на экран возможна.
  • Не проводим аттестацию, лицензии ФСТЭК у нас нет; оферту и соглашения с покупателями готовит юрист заказчика.
  • Не берём работы дешевле 150 000 ₽ и не дежурим круглосуточно.
Граница

Оптовая платформа, B2B-портал или интернет-магазин: как выбрать

Если главная задача — дать дилерам кабинет с их ценами, документами и сверкой, нужен B2B-портал. Если покупатель в основном ищет товар, вводит заказ списком и сверяет наличие, это оптовая платформа. В большинстве проектов есть и каталог, и кабинет, и с какого конца начать, решаем на обследовании.

Если к опту добавляется розница на том же складе, опираемся на обмен сайта с 1С, а оптовую часть закрываем отдельными правилами. Если главный вопрос в обмене между системами, начинают с API и бэкенда. Нужен ли заказной вариант или хватит готового, разобрано в статье «Коробочное ПО или заказная разработка».

Инструменты

На чём собираем

Серверная часть и данные
  • Python: Django или FastAPI, при необходимости Go
  • PostgreSQL с политиками на уровне строк, поиск по артикулам и названиям
  • Redis для кэша остатков; очередь обмена с 1С в PostgreSQL или RabbitMQ
  • S3-совместимое хранилище для файлов заказов и документов
Интерфейс, вход и развёртывание
  • React или Vue, TypeScript, адаптивная вёрстка с быстрым вводом списком
  • Keycloak или ваш каталог (LDAP, Active Directory), единый вход, двухфакторность
  • Docker, Nginx, GitLab CI
  • Журнал действий и мониторинг обмена
Материалы

Материалы по теме

Статья

Платформа для оптовых продаж: что включить

Что входит в первую версию оптовой платформы, а что откладывается: каталог, цены, заказ, резерв и обмен с учётом.

  • Состав первой версии
  • Что отложить
  • Порядок работ
Читать →
Статья

Личный кабинет для партнёров: что в него включать

Что обязательно, а что можно отложить: индивидуальная цена, остатки, заказ с проверкой, документы и статус.

  • Что обязательно
  • Откуда данные
  • Ролевая модель
Читать →
Разбор

Кабинет партнёра с ценами из 1С

Разбор типовой задачи: договорные цены и остатки по складам, которые партнёр видит сам.

  • Цены по договору
  • Остатки
  • Права
Читать →
Заявка

Разберём, как ваши покупатели заказывают сегодня

Сорок минут созвона: как оптовики оформляют заказ, где живут цены и условия, какие системы есть. По итогам скажем, с какой ступени начинать и в какую вилку это укладывается.

Спасибо, заявка отправлена. Ответим в течение рабочего дня.

Не удалось отправить. Напишите в телеграм или позвоните.

Вопросы

Частые вопросы: платформа для оптовой торговли

Сколько стоит платформа для оптовой торговли?

Нижняя граница — от 250 000 ₽: оптовый каталог с одной ролью покупателя, ценами по группе и заказом. Платформа с договорными ценами, резервом, лимитами и загрузкой заказа из файла существенно дороже; цену называем по итогам обследования (200 000 ₽ за одну-две системы, 350 000 ₽ за несколько). Оно вычитается из первого этапа, если продолжаете с нами.

Чем оптовая платформа отличается от интернет-магазина?

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

Можно ли подключить платформу к нашей 1С или ERP?

Да. С 1С работаем через OData, HTTP-сервисы или обмен файлами, с другими системами через их API. Цены, остатки и статусы приходят копией, а не запросом на каждый клик. Если у системы нет ни интерфейса, ни выгрузки, скажем об этом до договора.

Делаете ли вы B2B-маркетплейс со сторонними продавцами?

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

Как платформа обходится с остатками и резервом?

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

Как защищены цены и данные покупателей?

Права проверяет сервер на каждый запрос, действия пишутся в журнал, для ответственных ролей включается второй фактор. При приёмке из-под каждой роли пробуем открыть чужие заказы, цены и закрытые позиции по прямым адресам. Юридические вопросы остаются за юристом заказчика.

Кому принадлежит код и кто сопровождает платформу?

Код лежит в вашем репозитории с первого коммита, подписки на доступ нет. Сопровождение помесячное: 20 000, 60 000 или 120 000 ₽ в месяц, до 4, 12 или 25 часов, сверх пакета — 5 000 ₽ в час. Круглосуточного дежурства нет.

Вы работаете только в Ростове-на-Дону?

Мы в Ростове-на-Дону, работаем с заказчиками по всей России: удалённо и в вашем контуре. Доступ к системам и обследование согласуем на старте с вашей службой безопасности.