Сверка нашей системы с МойСкладом

Коротко и без технических терминов. Полная версия — docs/moysklad-logic-audit.md. 08.10.2026
Главный вывод. Большинство процессов у нас работает похоже на МойСклад. Но есть несколько мест, где логика отличается и это влияет на остатки, прибыль и понятность отчётов. Самое заметное — инвентаризация (вы это и заметили) и способ расчёта себестоимости.

3 вещи, которые стоит поправить в первую очередь

важно  1. Инвентаризация

Сейчас: инвентаризация сама меняет остатки и показывает «Проведено», но без документов оприходования/списания — непонятно, откуда изменения.

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

Переделка уже запланирована следующей задачей — план совпал с этой сверкой.

важно  2. Себестоимость и прибыль

Сейчас: себестоимость — «скользящее среднее»: при новой закупке пересчитывается одно общее значение, и прибыль за прошлые периоды может «плыть» задним числом.

Как в МойСкладе: себестоимость по FIFO — «первым пришёл, первым продан»; прибыль считается точно по партиям и не меняется задним числом.

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

средне  3. «Создать на основании» и связи документов

Сейчас: документы слабо связаны между собой (не видно «на основании чего» создан документ).

Как в МойСкладе: почти всё создаётся «на основании» (приёмка→возврат поставщику, инвентаризация→оприходование/списание, продажа→возврат), и в каждом документе видно связи.

Топ расхождений (влияют на остатки/деньги/отчёты)

ЧтоУ насВ МойСкладе
Себестоимостьскользящее среднееFIFO по партиямважно
Прибыль (себестоимость продажи)приближённо, задним числомточно, на момент продаживажно
Инвентаризациясама двигает остатки, «Проведено»только считает → оприходование/списаниеважно
Списание/перемещение: ценапереданная/средняяпо FIFO-партииважно
Связи «на основании»слабыесквозные, виднысредне
Отмена проведениянеединообразноштатная для всех документовсредне
Розничная сменаоткрытие вручнуюавтооткрытие первой продажей, ≤24чсредне
Взаиморасчётыдолги считаются, но не единый реестрединый реестр документ+оплатасредне

Где мы можем сделать ЛУЧШЕ, чем МойСклад (нужно ваше решение)

  1. Инвентаризация в один клик — «Применить результаты» сразу создаёт и проводит оба документа (у МойСклада — две отдельные кнопки).
  2. Простой режим прячет лишнее — оприходование/списание не отдельными пунктами, а только из инвентаризации/приёмки.
  3. Себестоимость на выбор — среднее (проще/быстрее) или FIFO (точнее).
  4. Единый экран «Деньги» вместо четырёх типов документов МойСклада (проще для маленькой розницы).
  5. Возврат поставщику прямо из приёмки с готовым списком товаров.
  6. Касса не стопорит продажу при нулевом остатке — мягкое предупреждение + быстрый приход.
  7. Онбординг «первая приёмка за 2 минуты» — у МойСклада старт тяжелее.
  8. Весовые штрихкоды из коробки с настройкой префиксов (у нас уже есть — довести).
  9. Прибыль сразу на дашборде простого режима — без захода в отчёты.
  10. Понятные статусы по-русски без слова «проведено» в спорных местах.

🇰🇿 Казахстан — обязательное по закону (проход 2)

Это не «лучше/хуже», а требования закона РК — без них магазин не может легально работать.

ТребованиеЧто нужно магазинуУ нас сейчас
Фискализация (онлайн-ККМ + ОФД)каждый чек уходит в ОФД (новый протокол с 01.04.2026)нет (заглушка)
НДС 16% (с 2026, было 12%; 5% лекарства)верная ставка в чеке и отчётахдефолт KZ уже 16% ✓ (нет перехода 12→16 по дате)
Маркировка (сигареты, обувь, лекарства)сканировать и «вывести код из оборота»только галочка, вывода нет
СНТ/ЭСФ (накладные)для розницы в основном автоматически; по подакцизным — подтверждатьнет интеграции

Что нужно в первую очередь: 1) фискализация ОФД (иначе нельзя пробивать чеки) → 2) маркировка, если продаёте сигареты → 3) НДС 16% в чеке. МойСклад в Казахстане это умеет (интеграции WebKassa / reKassa).

Что уточнили на проходе 2

Что с тестами

Часть наших тестов закрепляла текущее (неправильное) поведение как эталон — их нужно переписать под логику МойСклада. В первую очередь: шаг 10 full-chain (инвентаризация), unit-тесты инвентаризации и себестоимости, прибыль, mobile post/unpost инвентаризации.

Правило на будущее: сначала сверка с МойСкладом → потом реализация → потом тесты под сверенное поведение (а не тесты под уже написанный код).

Это только отчёт. Исправления — отдельными задачами после вашего решения. По умолчанию делаем «как в МойСкладе»; предложения «как лучше» применяем только с вашего согласия.