InvenTree 1.6: бесплатный складской учёт запчастей на своём сервере
АйТи Фреш
Серверы и инфраструктура

InvenTree 1.6: бесплатный складской учёт запчастей на своём сервере — обзор с практикой

Автор: , директор ООО «АйТи-Фреш» · · ~20 мин чтения
Карточка детали InvenTree «Колодки тормозные передние ГАЗель NEXT»: на складе 11, требуется 1, минимальный запас 4, место по умолчанию и ценовой диапазон
Карточка детали собирает остаток, потребность под заказы, минимальный запас и цены закупки.

InvenTree — бесплатная система складского учёта с открытым кодом (лицензия MIT), которая ставится на ваш сервер и закрывает количественный учёт запчастей: что лежит, на каком складе и в какой ячейке, сколько пришло от поставщика и куда ушло. Мы развернули версию 1.6.0 на демо-стенде, наполнили её автозапчастями и прошли весь путь детали от заказа до установки на машину. Ниже — что работает хорошо, где грабли и чего от InvenTree ждать не стоит.

Чем InvenTree отличается от учёта ценностей: запчасть расходуется

Почти все бесплатные системы учёта, которые нам приносят на обсуждение, построены вокруг штучной ценности. У перфоратора, ноутбука или нивелира есть инвентарный номер, серийник и владелец на сегодня, а главный вопрос звучит так: у кого он сейчас и когда вернут. Для этого хорошо подходит Snipe-IT, и как это выглядит на практике с приходящими работниками, мы разобрали в статье про выдачу инструмента работникам по QR-коду. С запчастями логика другая: колодки, фильтры, ремни и масло приходят партиями, лежат сразу в нескольких местах и уходят безвозвратно — в машину, в ремонт, в брак.

Для такой номенклатуры вопросы меняются. Сколько тормозных колодок осталось всего и сколько на каждом складе? Из какой поставки эти колодки и почём мы их брали? Кто перенёс две канистры масла в машину-мастерскую и когда? Пора ли заказывать фильтры и у какого поставщика они были дешевле в прошлый раз? Учёт ценностей на это отвечает плохо: в Snipe-IT расходный материал живёт в одном месте, а приход сводится к «увеличить количество» без партии и цены. InvenTree, наоборот, изначально задуман как количественный склад: деталь в каталоге одна, а складских позиций (stock items) с остатками может быть сколько угодно — каждая со своим местом, кодом партии и ценой закупки.

Важно сразу развести понятия, которые в интерфейсе InvenTree встречаются постоянно. Деталь (part) — это строка каталога: «Колодки тормозные передние ГАЗель NEXT» с артикулом, параметрами и поставщиками. Складская позиция — конкретное количество этой детали в конкретном месте: «6 шт., полка А-1, партия от 14.10». Место хранения — узел дерева: склад, стеллаж, полка, а также машина или изолятор брака. Всё движение — приход, перемещение, списание, разбиение партии — пишется в историю складской позиции, поэтому через месяц можно восстановить, куда делась любая деталь.

Разобрать InvenTree удобнее на живом примере. Возьмём условный автосервис «Гараж Профи»: основной склад с полками, второй склад в гараже, небольшой запас на объекте и машина-мастерская, в которой мастер возит ходовые расходники. Запчасти закупаются у нескольких поставщиков, а уходят на ремонт собственного автопарка. Именно такую структуру мы и завели на стенде, поэтому все скриншоты ниже — реальные экраны InvenTree 1.6.0 с демонстрационными данными.

Если в компании и инструмент, и запчасти, не пытайтесь загнать всё в одну систему. Штучный учёт с выдачей — Snipe-IT, количественный склад — InvenTree; обе спокойно живут на одном сервере.
Слайд «Что умеет InvenTree»: каталог запчастей, склады и ячейки, приход, перемещения, расход и контроль остатков
Шесть задач, которые InvenTree закрывает в одной базе: от каталога до контроля минимального запаса.

Каталог запчастей: категории, IPN, параметры и поставщики

Каталог в InvenTree — дерево категорий: «Фильтры» → «Масляные», «Тормозная система», «Масла и жидкости», «Электрика», «Ходовая». У каждой детали есть внутренний артикул IPN — ваш собственный код, который не зависит от поставщика и не меняется, когда вы сменили магазин. Мы советуем придумать формат заранее: короткий префикс категории и номер, например ТОРМ-0012. Рядом с IPN хранятся описание, единица измерения, фото, ссылки на документы и признаки детали: можно ли её закупать, продавать, собирать из других деталей, отслеживать по серийным номерам. Для автозапчастей обычно хватает «закупаемая» и «продаваемая» — второй признак понадобится для расхода на машину, о нём ниже.

Самое полезное для автосервиса — параметры по шаблонам. Шаблон параметра создаётся один раз («Марка авто», «Модель», «OEM-номер», «Вязкость», «Объём, л», «Размер шины») и привязывается к категории, после чего у каждой детали этой категории появляются одинаковые поля. На стенде мы завели восемь шаблонов, и поиск сразу стал осмысленным: фильтр по модели «ГАЗель NEXT» показывает всё, что к ней подходит, а поиск по OEM-номеру находит деталь, даже если кладовщик не помнит, как она у нас называется. Пример параметров масла — на скриншоте ниже.

Поставщики и производители разведены по разным сущностям, и это правильно. Производитель (например, TRW) даёт деталь с номером MPN, поставщик продаёт её со своим артикулом SKU и ценой. Одна и та же деталь может иметь несколько поставщиков, и при оформлении заказа InvenTree подставляет нужный артикул и последнюю цену. Отсюда же берётся ценовой диапазон на карточке детали: видно, по какой цене брали в разных поставках. Для внутреннего клиента — автопарка, на который списываются детали, — заводится отдельная компания с признаком «клиент».

Карточка детали собирает всё вместе: сколько на складе, сколько уже распределено под заказы на ремонт, сколько едет от поставщика и какой минимальный запас установлен. На главном скриншоте статьи — карточка колодок: на складе 11, требуется 1, минимум 4, место по умолчанию и ценовой диапазон. Возможности системы, которые мы проверили на стенде, сведены в таблицу.

ЗадачаКак решается в InvenTree 1.6Проверено на стенде
Каталог с категориямиДерево категорий, IPN, фото, вложенияда
Характеристики деталиПараметры по шаблонам, привязка к категориида, 8 шаблонов
Поставщики и производителиSKU поставщика, MPN производителя, ценыда
Остатки по местамСкладские позиции в дереве местда, 20 мест
Партии и цены закупкиКод партии и цена у каждой позициида
Перемещение и списаниеTransfer, remove, разбиение партии, историяда
ЗакупкаЗаказ поставщику, частичная приёмкада
Расход на машинуЗаказ на продажу внутреннему клиентуда
Минимальный запасПоле у детали, фильтр «мало на складе»да
ШтрихкодыQR своих объектов, привязка EANда
Мобильная работаОфициальное приложение Android и iOSприложение, веб — на планшете

Каталог из 65 деталей с параметрами, поставщиками и производителями мы загрузили скриптом через API за один прогон. В реальном внедрении так же переносится Excel-таблица или выгрузка из 1С: главное — заранее договориться о категориях и наборе параметров, иначе через месяц в одной категории окажутся «Колодки пер.», «Колодки передние» и «Колодки торм. перед.» с разными полями.

Список деталей InvenTree: аккумуляторы, амортизаторы, антифриз, тормозной барабан с внутренним артикулом, OEM в описании, категорией и остатком
Таблица деталей: IPN, описание с OEM-номером, категория и общий остаток по всем складам.
Вкладка параметров детали в InvenTree: марка и модель автомобиля, OEM-номер, вязкость и объём моторного масла
Параметры по шаблонам: одинаковые поля у всех деталей категории, по ним работают поиск и фильтры.

Склад: дерево мест, партии, перемещение и движение остатков

Места хранения в InvenTree — дерево любой глубины. На стенде у нашего автосервиса оно такое: Склад №1 со стеллажами и полками А-1…C-3, Склад №2 (Гараж), Склад №3 на объекте, Машина-мастерская и изолятор брака. Машина как место хранения — приём, который мы рекомендуем всем, у кого мастера возят с собой запас: тогда «а сколько у Сергея в машине фильтров» перестаёт быть вопросом к Сергею. Изолятор брака нужен, чтобы бракованная деталь не числилась среди годных, но и не пропадала из учёта до возврата поставщику.

Каждое место показывает, что в нём лежит, с количеством и партиями, а у мест можно поставить свой тип (склад, стеллаж, ячейка, транспорт) с иконкой. На полках удобно держать этикетки с QR-кодом места: кладовщик сканирует полку и сразу видит её содержимое. Как подобрать размер и материал наклеек для полок и коробок, мы разобрали отдельно в статье об этикетках и принтерах для маркировки.

Партия — не отдельный справочник, а свойство складской позиции: код партии, количество, цена закупки, дата, поставщик. Если 12 колодок пришли одной поставкой, а потом 4 из них увезли в машину, InvenTree разбивает позицию на две: 8 на полке и 4 в машине, обе с тем же кодом партии и той же ценой. Поэтому на вкладке «Склад» карточки детали видно сразу несколько строк — как на скриншоте ниже, где одна деталь лежит тремя партиями в разных местах.

Перемещение делается из карточки позиции, из списка остатков или со сканера: выбираете позиции, количество и место назначения, при желании пишете примечание. Мы проверили перенос 2 шт. партии смазки в машину-мастерскую через диалог веб-интерфейса и тот же перенос через API от имени обычного пользователя — в обоих случаях остаток разделился, а в истории появилась запись с автором и временем. Кроме перемещения доступны «добавить» (найденное при пересчёте), «удалить» (списание с причиной) и «посчитать» (инвентаризация: вводите фактическое количество, система пишет разницу).

Движение остатков (stock tracking) — та часть InvenTree, ради которой стоит переходить с таблиц. У каждой позиции есть журнал: создана при приёмке заказа такого-то, перемещена из А-1 в Машину-мастерскую, разделена, распределена под заказ на ремонт, списана. В записи — пользователь, дата, количество и примечание. Когда в конце месяца не сходится количество масла, разбор занимает минуты: открываете деталь, смотрите движение по каждой партии и находите, где списали без заказа.

Заведите изолятор брака и «пересчёт» как обязательные шаги с первого дня. Если брак и недостачу списывать в никуда, через квартал остатки снова перестанут совпадать с полками.
Дерево мест хранения InvenTree: Склад №1, Склад №2 (Гараж), Склад №3 на объекте, машина-мастерская и изолятор брака
Места хранения: склады, машина-мастерская и изолятор брака в одном дереве.
Вкладка «Склад» карточки детали: три партии в машине-мастерской и на полке А-1 с кодами партий и стоимостью
Одна деталь — несколько складских позиций: у каждой своё место, код партии и цена закупки.
Диалог «Переместить склад» в InvenTree: перенос двух штук партии в другое место хранения с заметкой
Перемещение части партии: остаток делится, а в истории появляется запись с автором и временем.

Закупки, минимальный запас и расход на машину

Заказ поставщику (Purchase Order) в InvenTree — полноценный документ со статусами: черновик, оформлен, частично получен, завершён. Строки заказа берут деталь, артикул поставщика и цену, можно указать место, куда принять товар по умолчанию. На стенде мы держим четыре заказа в разных состояниях, и самый показательный из них — PO-0002, получен частично: по одной строке пришло 2 из 2, по другой 1 из 2, по третьей ничего. Для автозапчастей это обычная история, когда поставщик привёз не всё, и InvenTree её честно отражает: недостающее остаётся «в заказе» и видно на карточке детали.

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

Минимальный запас задаётся у каждой детали. Если остаток по всем местам опустился ниже минимума, деталь попадает в список «мало на складе», её видно фильтром в таблице деталей и на главной странице, а подписанные на деталь или категорию пользователи получают уведомление. На стенде у нас 14 деталей ниже минимума — ровно столько, сколько бывает у живого автосервиса без системы. Учтите, что InvenTree сам заказ не создаёт: он подсказывает, что пора, а заказ оформляет ответственный.

Расход на машину — место, где InvenTree приходится немного «прочитать по-своему». Отдельного документа «ремонт» в системе нет, зато есть заказ на продажу (Sales Order). Мы завели внутреннего клиента «Автопарк» и оформляем ремонт как заказ на продажу: в названии и примечании — госномер машины и вид работ, в строках — детали. Детали распределяются на строки заказа с конкретных складских позиций, а при отгрузке списываются со склада. В итоге по каждой машине видно, какие колодки и фильтры на неё ушли, из какой партии и по какой цене. Цену продажи для внутреннего клиента можно не заполнять.

Ниже — путь одной запчасти, как мы его прошли на стенде, по шагам:

Договоритесь, что ни одна деталь не уходит со склада без заказа на ремонт. Списание «просто так» через «удалить» оставьте для брака и недостачи с обязательной причиной.
Заказ на закупку PO-0002 в InvenTree в статусе частично получен: строки 2 из 2, 1 из 2 и 0 из 2
Частичная приёмка: недостающее остаётся «в заказе» и видно на карточке детали.
Заказ на продажу SO-0001 «ремонт машины» для внутреннего клиента «Автопарк» со списком списываемых деталей
Расход на машину оформлен как заказ внутреннему клиенту: видно, какие детали и из каких партий ушли.
Слайд «Путь одной запчасти»: заказ, приход, размещение, перемещение, расход и контроль остатка
Каждый шаг пути детали фиксируется в истории складской позиции.

Штрихкоды, официальное приложение и права пользователей

InvenTree генерирует собственные QR-коды для деталей, мест хранения и складских позиций. Этикетки печатаются из шаблонов: шаблон — это HTML (Django-шаблон), который InvenTree превращает в PDF нужного размера. Мы сделали два шаблона 58×40 мм — для детали (название, IPN, QR) и для места (путь «Склад 1 / А-1» и QR). Заводские штрихкоды тоже идут в дело: EAN-13 с коробки или код поставщика привязывается к складской позиции, и дальше коробку можно сканировать без своей наклейки. На стенде мы привязали шесть EAN и проверили, что поиск по скану открывает нужную позицию.

В веб-интерфейсе есть окно «Сканировать штрихкод»: работает с камерой ноутбука или со сканером, который вводит данные как клавиатура. Для склада этого хватает на рабочем месте кладовщика, но основная работа со сканером — в официальном бесплатном приложении InvenTree для Android (Google Play) и iOS (App Store). В нём есть поиск, сканирование камерой, перемещение («скан детали → скан ячейки → количество»), приёмка заказа поставщика, пересчёт и съёмка фото детали. Приложение подключается к вашему серверу по тому же HTTPS-адресу, логин и права — те же, что в вебе.

Почему не браузер на смартфоне? Мы проверили: на узком экране веб-интерфейс InvenTree 1.6 показывает предупреждение «Mobile viewport detected» и прямо предлагает официальное приложение — интерфейс рассчитан на планшеты и компьютеры. На планшете веб работает нормально, карточка детали и вкладка «Склад» читаются без проблем. Поэтому правило простое: кладовщику и мастерам — приложение на телефон, на складской стол — планшет или ПК со сканером. Для интенсивной приёмки можно взять Bluetooth-сканер или ТСД, но на старте хватает камеры телефона. Как терминалы сбора данных встраивают в связку с 1С, мы писали в статье о ТСД на складе и интеграции с 1С.

Права в InvenTree назначаются группам, а не пользователям поштучно. У группы есть набор ролей по разделам (детали, склад, места, заказы на закупку, заказы на продажу и т. д.) с уровнями «просмотр», «добавление», «изменение», «удаление». Пользователь получает права через членство в группе. Мы обычно делаем три группы — они в таблице ниже. Для демо-входа на стенде у нас как раз «кладовщик»: видит всё, добавляет и меняет детали, остатки, места, заказы и перемещения, но ничего не удаляет и в администрирование не попадает.

РольЧто можетЧто запрещено
КладовщикПриёмка заказов, перемещения, пересчёт, списание брака, печать этикеток, ведение каталогаУдаление записей, администрирование, настройки системы
Работник (мастер)Просмотр остатков и мест, поиск детали, в отдельных случаях перемещение из машиныЗаказы поставщикам, правка каталога, списание без заказа
АдминистраторПользователи, группы и роли, шаблоны параметров и этикеток, валюта, интеграции и APIРабота под этой учёткой в повседневных операциях

Мастерам часто достаточно права только на просмотр: они перестают звонить на склад с вопросом «есть ли фильтр на NEXT» и сами смотрят остаток в приложении. Администраторскую учётку держите отдельно от рабочей и включите для неё двухфакторную аутентификацию.

Слайд об официальном бесплатном приложении InvenTree со сканером: найти, переместить, принять заказ, посчитать остатки
Приложение для Android и iOS закрывает четыре складских сценария камерой телефона.
Веб-интерфейс InvenTree на смартфоне с предупреждением «Mobile viewport detected» и предложением установить официальное приложение
На смартфоне веб-интерфейс предлагает перейти в приложение — рассчитан на планшеты и ПК.

Установка: Docker production stack, PostgreSQL, Redis, Caddy и бэкап

Мы ставим InvenTree по официальной схеме для продакшена — Docker Compose из репозитория проекта. В стек входят контейнер сервера (Django + веб-интерфейс), фоновый воркер, PostgreSQL (на стенде — 17), Redis для кеша и Caddy как обратный прокси. Под одну систему достаточно небольшой виртуальной машины на Ubuntu 24.04; если рядом стоит Snipe-IT для инструмента, наш ориентир — 4 vCPU, 8 ГБ памяти и 60 ГБ диска на обе системы. Схему с двумя системами на одной ВМ подробно сравниваем в статье Snipe-IT или InvenTree и как их совместить.

Порядок установки по документации: скачать в один каталог три файла из репозитория (docker-compose.yml, .env, Caddyfile), заполнить .env — обязательно INVENTREE_EXT_VOLUME (каталог данных на хосте), пользователя и пароль базы, адрес сайта, язык и часовой пояс, — затем инициализировать базу, создать администратора и запустить контейнеры. Пароли в .env не храните в открытом виде в общих папках: права на файл — только владелец.

docker compose run --rm inventree-server invoke update
docker compose run --rm inventree-server invoke superuser
docker compose up -d

Обновление выглядит так же коротко: остановить стек, подтянуть образы, снова выполнить invoke update (по умолчанию он делает резервную копию базы перед миграцией) и поднять контейнеры. Наружу публикуем только 443-й порт: если на сервере уже есть общий Caddy или другой прокси с сертификатами Let's Encrypt, встроенный Caddy InvenTree слушает локальный порт, а внешний прокси передаёт на него запросы своего поддомена.

Бэкап мы не доверяем одному механизму. Каждую ночь скрипт делает pg_dump -Fc базы InvenTree, архивирует каталог данных с медиафайлами (фото, вложения, PDF этикеток) и копирует .env; хранится семь дней, копия уходит за пределы сервера. При сдаче системы обязательно восстанавливаем копию на чистой машине — бэкап, который ни разу не восстанавливали, бэкапом считать нельзя. Если хост — ваш Windows Server с Hyper-V, помните, что поддержка Windows Server 2016 заканчивается 12 января 2027 года: виртуальную машину с учётом придётся переносить на новый хост, и с готовым бэкапом это делается спокойно.

Теперь грабли, на которые мы наступили сами. Первая — статика. После обновления контейнеров автообновление не собрало статические файлы, и веб-интерфейс вместо страницы показал ошибку INVE-E1. Лечится командой invoke static в контейнере сервера, а надёжнее — всегда обновлять через invoke update. Вторая — профиль пользователя: учётка, созданная в обход интерфейса (например, скриптом в Django shell), осталась без профиля, и система отвечала ошибкой 500. Пользователей заводите через интерфейс администратора или API — тогда профиль создаётся сам.

Третья — права. Роли нужно назначать группам через интерфейс; правка правил напрямую в базе не превращается в реальные разрешения, и пользователь получает 403 на всё. Четвёртая — API-токены. Токен, записанный в базу вручную, не принимается: хранится его хеш, а не значение. Создавайте токены в профиле пользователя или через API. И последнее: если медиафайлы закрыты дополнительной авторизацией на прокси, скачать PDF этикетки скриптом с basic auth не выйдет — только из браузерной сессии или через API.

Всегда обновляйте InvenTree через `invoke update`, а не просто `docker compose pull && up`: эта команда выполняет миграции, собирает статику и перед этим делает резервную копию базы.

Ограничения InvenTree и когда он действительно нужен

InvenTree — не бухгалтерия. В нём нет проводок, счетов-фактур, УПД и налогового учёта; заказ поставщику не превращается в поступление в 1С сам по себе. Валюту RUB настраиваем по умолчанию, цены закупки хранятся, но себестоимость по правилам бухучёта считать не нужно — это задача вашей учётной программы. Связать InvenTree с 1С можно через REST API: например, выгружать закупки или подтягивать номенклатуру. Это отдельная доработка под ваш обмен, а не встроенная кнопка, и закладывать её в план стоит сразу, если бухгалтерии нужна единая номенклатура.

Русский перевод интерфейса неполный. Основные экраны переведены, но часть терминов остаётся английской, а некоторые переводы звучат непривычно для склада. Мы обычно готовим для кладовщиков короткую памятку «как называется в системе → что это значит у нас» и показываем главные сценарии на живых данных: приёмка, перемещение, заказ на ремонт, пересчёт. После часа такого разбора вопросов «где тут приход» почти не остаётся.

Ещё одно ограничение — расход через заказ на продажу. Это рабочий приём, но он требует дисциплины: внутренний клиент, правило именования заказов по госномеру и отгрузка в конце ремонта. Если в компании нужно учитывать нормо-часы, работы и запись клиентов, InvenTree этого не даст — нужна отраслевая программа автосервиса, а InvenTree может остаться складом рядом с ней. Когда задача шире склада и нужны продажи, финансы и производство в одной системе, посмотрите на ERP: как партии и штрихкоды решены в ERPNext, мы разбирали в статье о складе ERPNext с партиями и штрихкодами.

Когда InvenTree оправдан? По нашему опыту — если позиций запчастей больше 100–150 и они регулярно приходят, одна и та же деталь лежит на нескольких складах или в машинах, запчасти возят между точками и нужно знать, что заказывать и у кого дешевле. Если же запчастей несколько десятков и все на одной полке, хватит раздела расходников в Snipe-IT. Общий обзор вариантов для Linux — в материале какую систему учёта на Linux выбрать.

Перед внедрением мы проходим с клиентом опросник: склады и ячейки, объём номенклатуры, как сейчас ведутся остатки, кто принимает и кто списывает, какие этикетки и в каких условиях. Полный список вопросов и этапы запуска — в статье чек-лист перед внедрением учёта. Если хотите, чтобы склад запчастей развернули и настроили под вас, загляните на страницу услуги внедрение open-source систем.

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

InvenTree бесплатный?

Да, InvenTree распространяется бесплатно с открытым кодом по лицензии MIT, без ограничений на число пользователей и деталей. Платить нужно только за сервер или виртуальную машину, на которой он работает, и за работу по настройке, если вы её заказываете. Мобильное приложение для Android и iOS тоже бесплатное.

Есть ли InvenTree на русском языке?

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

Можно ли работать в InvenTree с телефона?

Да, через официальное бесплатное приложение InvenTree для Android и iOS. В нём есть поиск, сканирование камерой, перемещение, приёмка заказов, пересчёт и фото. Веб-интерфейс на смартфоне показывает предупреждение и предлагает приложение, так как рассчитан на планшеты и компьютеры. На планшете браузер работает нормально.

Подходит ли InvenTree как программа учёта автозапчастей?

Подходит для складской части: каталог с параметрами по маркам и OEM-номерам, остатки по складам и машинам, партии, заказы поставщикам и расход на машину через заказ внутреннему клиенту. Запись клиентов, нормо-часы и расчёт работ InvenTree не ведёт — для этого нужна отраслевая программа автосервиса, а склад может остаться в InvenTree.

Можно ли связать InvenTree с 1С?

Да, но только через REST API отдельной доработкой: готового обмена с 1С нет. Обычно выгружают номенклатуру или закупки по заранее согласованным правилам. InvenTree не ведёт проводки и первичные документы, поэтому бухгалтерский учёт остаётся в 1С, а InvenTree отвечает за физические остатки и движение деталей.

Столкнулись с похожей задачей? Обращайтесь — решим

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

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

📞 +7 903 729-62-41 ✈ Telegram @ITfresh_Boss

С уважением, Семёнов Евгений Сергеевич, директор «АйТи Фреш» — IT-аутсорсинг для компаний до 50 рабочих мест, 15+ лет практики

Источники

© ООО «АйТи-Фреш» · Москва · Все статьи