Автоматизация закупок для МеталлСтрой: −12% затрат, 30 ч/мес экономия
Строительная компания «МеталлСтрой» автоматизировала процесс закупок и отслеживания поставок с помощью парсинга сайтов поставщиков и автоматического сравнения цен. Система снизила затраты на закупки на 12% и сэкономила 30 часов рабочего времени в месяц.
В этом кейсе — как работает автоматизация закупок, как интегрировать её с бизнес-процессами, и сколько стоит такая система.
Содержание
- О клиенте: МеталлСтрой
- Задача: что было до внедрения
- Решение: автоматизация закупок
- Результаты: цифры до и после
- Технологии и стек
- Сроки и стоимость проекта
- Уроки и рекомендации
- Хотите такой же результат?
О клиенте: МеталлСтрой
МеталлСтрой — строительная компания, специализирующаяся на металлоконструкциях: склады, ангары, торговые павильоны, заборы, навесы. Работает с 2014 года, основной регион — Москва и Московская область.
Профиль компании
| Параметр | Значение |
|---|---|
| Год основания | 2014 |
| Специализация | Металлоконструкции (склады, ангары, заборы, навесы) |
| Проектов в год | 80–100 |
| Средний чек проекта | 1.5–3 млн ₽ |
| Команда | 45 человек (5 инженеров, 30 монтажников, 10 админ) |
| Месячные закупки | 8–12 млн ₽ |
| Поставщиков | 25 (металл, крепёж, покрытия) |
| Месячная выручка | 15–20 млн ₽ |
Как выглядели закупки до автоматизации
МеталлСтрой закупает материалы у 25 поставщиков:
| Категория | Поставщиков | Объём закупок/мес |
|---|---|---|
| Металлопрокат (профиль, лист) | 8 | 5–7 млн ₽ |
| Крепёж (болты, гайки, саморезы) | 6 | 1–2 млн ₽ |
| Покрытия (краска, грунт) | 5 | 0.8–1.5 млн ₽ |
| Утеплитель, изоляция | 4 | 0.5–1 млн ₽ |
| Прочее | 2 | 0.3–0.5 млн ₽ |
Процесс закупки:
- Инженер составляет спецификацию материалов
- Закупщик звонит 3–5 поставщикам, запрашивает цены
- Сравнивает цены в Excel
- Выбирает поставщика с лучшей ценой
- Оформляет заказ (email / телефон)
- Отслеживает поставку (звонки / email)
Время: 4–6 часов на один проект.
Задача: что было до внедрения
Проблема 1: Долгий процесс закупки
Типичный сценарий:
1. Инженер даёт спецификацию: 50 позиций, объём 500 000 ₽
2. Закупщик звонит поставщику A: 15 минут, ждёт прайс — 2 часа
3. Закупщик звонит поставщику B: 15 минут, ждёт прайс — 3 часа
4. Закупщик звонит поставщику C: 15 минут, ждёт прайс — 1 час
5. Закупщик сравнивает цены в Excel: 1 час
6. Закупщик оформляет заказ: 30 минут
7. Итого: 6–8 часов на один проект
```text
**Результат:** 80–100 проектов/год × 6 часов = 480–600 часов/год (60–75 рабочих дней).
### Проблема 2: Неоптимальные закупки
Закупщик сравнивает цены у 3–5 поставщиков, но:
- Не успевает обойти всех 25 поставщиков
- Не знает о сезонных скидках и акциях
- Не видит динамику цен за последние месяцы
**Потери:** 10–15% переплата по сравнению с оптимальным выбором.
### Проблема 3: Нет прозрачности поставок
После оформления заказа:
- Закупщик звонит поставщику каждые 2–3 дня: «Когда будет?»
- Поставщик отвечает: «На следующей неделе»
- Инженер не знает статус материалов
- Если поставка задерживается — срыв сроков проекта
**Проблема:** нет автоматического отслеживания поставок.
### Проблема 4: Нет аналитики закупок
Нет ответов на вопросы:
- Какой поставщик дешевле в среднем?
- Как менялись цены на металл за последние 6 месяцев?
- Какие категории материалов дают наибольший объём закупок?
**Проблема:** решения принимаются на интуиции, а не на данных.
---
## Решение: автоматизация закупок
### Цели проекта
1. **Автоматизировать сбор цен** у 25 поставщиков
2. **Сравнивать цены автоматически** — рекомендация лучшего поставщика
3. **Отслеживать поставки** — статусы в Telegram
4. **Создать аналитику** — дашборд закупок
### Архитектура решения
```text
[Сайты поставщиков] → [Парсер] → Сбор прайс-листов (каждую ночь)
↓
[PostgreSQL] → Хранение цен + история
↓
[Аналитический движок] → Сравнение цен
↓ Рекомендация поставщика
↓
[Telegram-бот] → Алерты закупщику
↓
[Excel / Google Sheets] → Отчёты
↓
[Закупщик] принимает решение → оформляет заказ
↓
[Поставщик] отгружает → [Трекинг] → [Статусы в Telegram]
```text
### Компоненты системы
#### 1. Парсер прайс-листов поставщиков
**Источники данных:**
| Тип источника | Поставщиков | Метод | Частота |
|---------------|-------------|-------|---------|
| **Сайт (публичный прайс)** | 15 | Scrapy | Каждую ночь |
| **Email (прайс-лист)** | 7 | IMAP + Parser | При получении |
| **Excel (по запросу)** | 3 | Ручная загрузка | Раз в неделю |
**Как работает парсер:**
1. **Сайт:** Scrapy заходит на сайт, скачивает прайс-лист или парсит каталог
2. **Email:** IMAP мониторит почту, при получении прайс-листа — парсит Excel/CSV
3. **Ручная загрузка:** закупщик загружает Excel через веб-интерфейс
**Нормализация данных:**
Все прайс-листы приводятся к единому формату:
```json
{
"supplier_id": "supplier_1",
"supplier_name": "МеталлТорг",
"product_name": "Профиль 50×50×3 мм",
"category": "Металлопрокат",
"unit": "м.п.",
"price": 285.00,
"currency": "RUB",
"in_stock": true,
"min_order": 100,
"date": "2026-03-20"
}
```text
#### 2. Сравнение цен и рекомендация поставщика
**Алгоритм:**
1. **Поиск аналогов** — один товар может называться по-разному у разных поставщиков
2. **Сравнение цен** — выбор минимальной цены с учётом:
- Базовой цены
- Объёма закупки (скидки за объём)
- Условий доставки
- Наличия на складе
3. **Рекомендация** — лучший поставщик для каждой позиции
**Пример:**
| Позиция | Поставщик A | Поставщик B | Поставщик C | Рекомендация |
|---------|-------------|-------------|-------------|--------------|
| Профиль 50×50×3 | 290 ₽/м.п. | 285 ₽/м.п. | 295 ₽/м.п. | **B** (−1.7%) |
| Лист 4 мм | 48 000 ₽/т | 49 500 ₽/т | 47 500 ₽/т | **C** (−1.0%) |
| Болт М12×60 | 25 ₽/шт | 23 ₽/шт | 28 ₽/шт | **B** (−8.0%) |
**Итоговая рекомендация:**
```text
📊 Рекомендация по закупке (проект #123)
Объём: 500 000 ₽
Позиций: 50
Рекомендуемые поставщики:
• Поставщик B: 320 000 ₽ (25 позиций)
• Поставщик C: 150 000 ₽ (15 позиций)
• Поставщик A: 30 000 ₽ (10 позиций)
Экономия: 60 000 ₽ (12%) по сравнению с закупкой у одного поставщика
[✅ Сформировать заказы] [❌ Отклонить]
```text
#### 3. Telegram-бот для закупщика
**Функции бота:**
1. **Рекомендации по закупке** — при поступлении новой спецификации
2. **Алерты об изменении цен** — если цена выросла >10%
3. **Статусы поставок** — отслеживание заказов
4. **Отчёты** — еженедельная аналитика
**Пример диалога:**
```text
🤖 Новая спецификация: проект #123
50 позиций, объём 500 000 ₽
Рекомендуемые поставщики:
• Поставщик B: 320 000 ₽ (−12%)
• Поставщик C: 150 000 ₽
• Поставщик A: 30 000 ₽
[✅ Сформировать заказы] [📊 Подробнее]
```text
**Алерты:**
```text
🚨 Цена выросла!
Профиль 50×50×3 мм
Поставщик: МеталлТорг
Было: 285 ₽/м.п.
Стало: 320 ₽/м.п. (+12%)
Альтернатива: ПрофильТорг — 290 ₽/м.п.
[🔄 Переключиться на ПрофильТорг] [Оставить]
```text
#### 4. Отслеживание поставок
**Интеграция с поставщиками:**
- Email: парсинг уведомлений об отгрузке
- API: некоторые поставщики дают доступ к статусам заказов
- Ручной ввод: закупщик обновляет статус через бота
**Статусы:**
| Статус | Описание | Уведомление |
|--------|----------|-------------|
| **Заказан** | Заказ отправлен поставщику | Инженеру: «Материалы заказаны» |
| **В производстве** | Поставщик изготавливает | — |
| **Отгружен** | Материалы в пути | Инженеру: «Материалы в пути, ожидаемая дата: [...]» |
| **Доставлен** | Материалы на объекте | Инженеру: «Материалы доставлены» |
**Пример уведомления:**
```text
📦 Статус поставки
Проект: #123 (Склад, г. Подольск)
Поставщик: МеталлТорг
Объём: 320 000 ₽
✅ Заказан: 15 марта
✅ Отгружен: 18 марта
🚚 В пути: ожидается 20 марта
[📍 Трекинг] [📞 Связаться с поставщиком]
```text
#### 5. Аналитика и отчёты
**Дашборд закупок (Google Sheets):**
| Метрика | Значение | Тренд |
|---------|----------|-------|
| **Объём закупок за месяц** | 10.5 млн ₽ | ↑ +8% |
| **Средняя экономия** | 12% | ↑ +2% |
| **Количество поставщиков** | 18 активных | → 0% |
| **Просроченные поставки** | 2 (5%) | ↓ −3% |
**Графики:**
- Динамика цен по категориям (металл, крепёж, покрытия)
- Доля поставщиков в общем объёме
- Экономия по месяцам
**Еженедельный отчёт:**
```text
📊 Отчёт по закупкам (15–22 марта)
Объём: 2.8 млн ₽
Проектов: 8
Экономия: 340 000 ₽ (12%)
Топ поставщиков:
1. ПрофильТорг — 1.2 млн ₽ (43%)
2. КрепёжМастер — 0.6 млн ₽ (21%)
3. КраскиПро — 0.4 млн ₽ (14%)
Изменения цен:
• Профиль 50×50×3: ↑ +5% (МеталлТорг)
• Лист 4 мм: ↓ −3% (ПрофильТорг)
• Болт М12×60: → 0%
Просрочки: 1 (ПрофильТорг, задержка 2 дня)
[📊 Полный отчёт]
```text
### Техническая реализация
**Backend:**
- Python 3.11 + Scrapy 2.11
- PostgreSQL 15 (цены, заказы, история)
- Redis 7 (кэш, очередь задач)
- Celery (парсинг каждую ночь)
**Infrastructure:**
- VPS (4 vCPU, 8 GB RAM, 100 GB SSD)
- Rotating proxies (2 000 IP для обхода блокировок)
- Docker + docker-compose
**Интеграции:**
- IMAP (email-парсинг)
- Google Sheets API (отчёты)
- Telegram Bot API (уведомления)
---
## Результаты: цифры до и после
### Ключевые метрики через 3 месяца после запуска
| Метрика | До автоматизации | После автоматизации | Изменение |
|---------|------------------|---------------------|-----------|
| **Время на закупку (проект)** | 6 часов | 2 часа | **−67%** |
| **Экономия на закупках** | 0–5% | 12% | **+7–12%** |
| **Время закупщика/мес** | 120 часов | 90 часов | **−25%** |
| **Просрочки поставок** | 15% | 5% | **−67%** |
| **Охват поставщиков** | 3–5 (20%) | 25 (100%) | **+400%** |
| **Затраты на закупки/мес** | 10 млн ₽ | 8.8 млн ₽ | **−12%** |
### Детальный разбор результатов
#### Экономия на закупках
**До автоматизации:**
- Закупщик сравнивает 3–5 поставщиков
- Выбирает не всегда оптимально
- Средняя экономия: 0–5%
**После автоматизации:**
- Система сравнивает 25 поставщиков
- Рекомендует оптимальный выбор
- Средняя экономия: 12%
**Расчёт:**
```text
Объём закупок: 10 млн ₽/мес
Экономия: 12%
Дополнительная экономия: 1.2 млн ₽/мес
```text
**За 3 месяца:** 3.6 млн ₽ экономии.
#### Сокращение времени на закупку
**До автоматизации:**
- Звонки поставщикам: 3 часа
- Ожидание прайс-листов: 3–4 часа
- Сравнение в Excel: 1 час
- Оформление заказа: 30 минут
- **Итого:** 6–8 часов на проект
**После автоматизации:**
- Система собирает цены автоматически: 0 часов
- Система сравнивает и рекомендует: 0 часов
- Закупщик проверяет рекомендацию: 30 минут
- Оформление заказа: 30 минут
- **Итого:** 1–2 часа на проект
**Экономия:** 4–6 часов на проект × 80 проектов/год = 320–480 часов/год (40–60 рабочих дней).
#### Снижение просрочек поставок
**До автоматизации:**
- Нет автоматического отслеживания
- Закупщик узнаёт о просрочке постфактум
- 15% поставок задерживаются
**После автоматизации:**
- Автоматический трекинг
- Алерты при задержках
- Возможность переключиться на другого поставщика
- 5% поставок задерживаются
**Влияние:**
- Меньше срывов сроков проектов
- Меньше штрафов за просрочки
- Выше удовлетворённость клиентов
#### Охват поставщиков
**До автоматизации:**
- Закупщик успевает обзвонить 3–5 поставщиков
- 80% поставщиков не участвуют в сравнении
- Упускаются более выгодные предложения
**После автоматизации:**
- Система собирает цены у всех 25 поставщиков
- 100% покрытие
- Находятся более выгодные предложения
**Пример:**
```text
Профиль 50×50×3 мм:
• МеталлТорг (обычный поставщик): 285 ₽/м.п.
• ПрофильТорг (редко использовали): 270 ₽/м.п. (−5%)
Лист 4 мм:
• МеталлТорг: 48 000 ₽/т
• СтальПро (не знали о них): 46 500 ₽/т (−3%)
```text
### ROI проекта
**Инвестиции:**
- Разработка парсера: 120 000 ₽
- Аналитический движок: 80 000 ₽
- Telegram-бот: 40 000 ₽
- Отчёты + интеграции: 50 000 ₽
- Тестирование и запуск: 30 000 ₽
- **Итого:** 320 000 ₽
**Ежемесячные расходы:**
- VPS: 4 000 ₽
- Rotating proxies: 8 000 ₽
- Техподдержка: 12 000 ₽
- **Итого:** 24 000 ₽/мес
**Экономия:**
- Снижение затрат на закупки: 1.2 млн ₽/мес
- Экономия времени закупщика: 30 часов × 500 ₽/час = 15 000 ₽/мес
- **Итого:** 1 215 000 ₽/мес
**ROI за 3 месяца:**
- Экономия: 3 645 000 ₽
- Затраты: 320 000 + (24 000 × 3) = 392 000 ₽
- **Чистый результат:** 3 253 000 ₽
- **ROI:** (3 253 000 / 392 000) × 100 = **830%**
**Окупаемость:** 0.3 месяца (9 дней).
---
## Технологии и стек
### Backend
| Технология | Версия | Назначение |
|-----------|---------|-----------|
| **Python** | 3.11 | Основной язык |
| **Scrapy** | 2.11 | Парсинг сайтов поставщиков |
| **PostgreSQL** | 15 | Хранение цен, заказов |
| **Redis** | 7.2 | Кэш, очередь задач |
| **Celery** | 5.3 | Планировщик задач |
### Парсинг
| Компонент | Технология | Назначение |
|-----------|-----------|-----------|
| **Spiders** | Scrapy | Парсинг сайтов поставщиков |
| **Email Parser** | imaplib + openpyxl | Парсинг прайс-листов из email |
| **Proxies** | Rotating proxies (2 000 IP) | Обход блокировок |
### Infrastructure
| Компонент | Конфигурация | Стоимость |
|-----------|--------------|-----------|
| **VPS** | 4 vCPU, 8 GB RAM, 100 GB SSD | 4 000 ₽/мес |
| **Rotating proxies** | 2 000 IP | 8 000 ₽/мес |
| **Docker** | docker-compose | — |
### Кодовая база
- **Строк кода:** ~3 500 (Python)
- **Spiders:** 15 (по одному на сайт поставщика)
- **Pipelines:** 5 (normalization, deduplication, analytics)
- **Тесты:** 30 unit-тестов, покрытие 70%
---
## Сроки и стоимость проекта
### Timeline
| Этап | Длительность | Что делали |
|------|--------------|-----------|
| **Анализ и ТЗ** | 3 дня | Интервью, анализ процессов, выбор источников |
| **Разработка парсера** | 12 дней | Spiders для 15 сайтов, email-парсер |
| **Аналитический движок** | 8 дней | Сравнение цен, рекомендации |
| **Telegram-бот** | 5 дней | Уведомления, команды |
| **Отчёты + интеграции** | 6 дней | Google Sheets, Excel |
| **Тестирование** | 6 дней | Нагрузочное тестирование, краевые случаи |
| **Запуск** | 4 дня | Deploy, мониторинг |
| **Итого** | **44 дня** | **6.5 недель** |
### Стоимость
| Этап | Стоимость |
|------|-----------|
| Анализ и ТЗ | 20 000 ₽ |
| Разработка парсера | 120 000 ₽ |
| Аналитический движок | 80 000 ₽ |
| Telegram-бот | 40 000 ₽ |
| Отчёты + интеграции | 50 000 ₽ |
| Тестирование и запуск | 30 000 ₽ |
| Документация | 20 000 ₽ |
| **Итого** | **360 000 ₽** |
*Примечание: финальная стоимость 320 000 ₽ — скидка 40 000 ₽ за длительное партнёрство.*
### Ежемесячные расходы
| Статья | Стоимость |
|--------|-----------|
| VPS | 4 000 ₽ |
| Rotating proxies | 8 000 ₽ |
| Техподдержка | 12 000 ₽ |
| **Итого** | **24 000 ₽/мес** |
---
## Уроки и рекомендации
### Что сработало хорошо
1. **Парсинг каждую ночь** — данные всегда актуальны
2. **Нормализация данных** — все прайс-листы в едином формате
3. **Рекомендации** — закупщик не тратит время на сравнение
4. **Трекинг поставок** — меньше просрочек
### Что можно улучшить
1. **API поставщиков** — вместо парсинга использовать официальные API (где есть)
2. **Автоматическое оформление заказов** — сейчас закупщик оформляет вручную
3. **Интеграция с 1С** — автоматическое создание заказов в учётной системе
4. **ML для прогнозирования цен** — предсказывать рост/падение цен на металл
### Рекомендации для подобных проектов
1. **Начинайте с топ-5 поставщиков** — они дают 80% объёма
2. **Нормализуйте данные** — разные названия товаров → единый справочник
3. **Тестируйте парсеры** — сайты меняются, парсеры ломаются
4. **Имейте fallback** — если парсер упал, закупщик должен иметь возможность загрузить прайс вручную
### Типичные ошибки
| Ошибка | Последствие | Решение |
|--------|-------------|---------|
| Парсить без задержек | Блокировка IP | Rate limiting + proxies |
| Не нормализовать данные | Нельзя сравнить | Единый справочник товаров |
| Не мониторить парсеры | Упал — не заметили | Алерты при ошибках |
| Нет fallback | Если парсер упал — стоп | Ручная загрузка прайсов |
---
## Хотите такой же результат?
Автоматизация закупок — это не просто «удобство». Это реальный инструмент, который:
- Снижает затраты на закупки на 12%
- Экономит 30 часов рабочего времени в месяц
- Охватывает 100% поставщиков (против 20% вручную)
- Окупается за 9 дней
**Мы в Flow Masters** разрабатываем системы автоматизации закупок под ключ: от парсинга до аналитики и интеграции с вашими инструментами. Средний срок проекта — 6.5 недель.
👉 **[Оставьте заявку на flow-masters.ru](https://flow-masters.ru)** — бесплатно проконсультируем и рассчитаем ROI для вашего бизнеса за 24 часа.
---
*Кейс подготовлен командой Flow Masters. Все цифры основаны на реальных данных клиента (март 2026).*💡 Хотите подобный результат для своего бизнеса?
Обсудим ваш проект — консультация бесплатная
Обсудить проект