Как проверить цифры после выгрузки МойСклад
Берём один расходящийся день и ищем причину по документам: фильтры, даты, правки, удаления и правила пересчёта.
В понедельник в таблице продаж за пятницу было 12 000 ₽, во вторник — 10 000 ₽. Это не обязательно сбой BI: продажу на 2 000 ₽ могли изменить или удалить после первого снимка. Но та же разница возникает и при изменении фильтра или формулы. Проверка начинается с одного дня и списка документов, а не с попытки подогнать два итоговых числа.

Сначала проверьте, что сравниваете одно и то же
Запишите дату и время обоих снимков, период отчёта, часовой пояс, организацию, магазин или склад, типы документов и их статус. В API МойСклад дата документа и время его изменения — разные поля: операция за пятницу может быть исправлена во вторник. Для времени создания и обновления документация JSON API указывает MSK; для даты самого документа и локального отчёта отдельно зафиксируйте правило интерпретации времени и границы дня.
| Слой | Что должно совпасть | Следующий шаг |
|---|---|---|
| Период и время | Один и тот же интервал, часовой пояс и момент последней выгрузки | Сравните параметры двух запусков и дату документа |
| Набор документов | Одинаковые типы, статусы, проведение, магазины и организации | Сравните список ID, а не только итоговую сумму |
| Изменения | Исправления сумм, позиций, дат и проведение | Откройте историю нужного документа и аудит |
| Удаления | Запись была удалена или восстановлена между выгрузками | Проверьте корзину, аудит и повторный сбор типа документа |
| Расчёт | Формула, возвраты, дедупликация и группировка не менялись | Пересчитайте показатель из одинакового списка исходных ID |
Не начинайте со сравнения готовых графиков, если один показывает сумму чеков, а другой — оплаты или выручку за вычетом возвратов. Разбор этих определений есть в статье об отчётах продаж.
Найдите документ, из-за которого изменился итог
Сохраните для двух выгрузок строки с ID документа, типом, датой операции, временем изменения, магазином, суммой и статусом. Сравните множества ID: что появилось, исчезло и изменилось при одинаковом ID. Для позиции товара дополнительно сравнивайте ID строки, количество и цену. Так вы отделите новый документ от исправления прежнего.
Откройте найденный документ в МойСклад и нажмите «Изменения» справа вверху. Если нужно понять действие пользователя или импорт, смотрите «Моя компания → Аудит». Официальная справка описывает создание, изменение и удаление документов в общем аудите; права на просмотр задаются отдельно. Отсутствие доступа к истории не означает, что правки не было.
Проверьте проведение и связанные документы. Например, удаление приёмки меняет остаток товара, хотя созданные на её основе документы остаются. Восстановленная приёмка вернёт влияние на остатки после проведения. Поэтому для истории остатков по дням одной проверки существования документа мало.
Что делать с удалением и правкой задним числом
Если документ исчез из обычной выборки, проверьте корзину и аудит. JSON API МойСклад поддерживает фильтр isDeleted=true для документов, находящихся в корзине, и isDeleted=false для неудалённых. Восстановление из корзины через API не предусмотрено. Корзину нужно включить в настройках; по справке МойСклад документы хранятся там семь дней. Этот фильтр нельзя считать вечным журналом удалений.
Для собственной базы полезно сохранять ID и время изменения записей, а при каждом запуске сверять удалённые документы и перечитывать период, который сотрудники могут менять задним числом. После изменения приёмки или продажи пересчитывают затронутые дни, а для накопительных остатков — и последующие даты. Размер такого окна нельзя обещать одинаковым всем компаниям: он зависит от их правил редактирования и от того, какие контрольные сверки построены.

Как принять исправленный отчёт
Повторите расчёт для той же даты и тех же условий. Итог в своей базе должен сходиться с выбранным отчётом МойСклад настолько, насколько совпадают определения метрики. Если остаётся разница, запишите её по документам: продажа, возврат, удаление, изменение даты, проведение или особое правило расчёта. Для большого объёма начните с одного магазина и короткого периода, затем расширяйте проверку.
Храните время последней успешной выгрузки и дату расчёта каждой витрины. Это позволяет отличить устаревший снимок от реальной ошибки. Если данные используются для зарплаты, закупок или финансового отчёта, согласуйте допустимую задержку и процедуру пересчёта до того, как команда начнёт принимать решения по графику.
Частые вопросы
Почему вчера и сегодня в BI разные цифры за одну дату?
Причина может быть в правке или удалении документа задним числом, разной дате завершения выгрузки, фильтрах, часовом поясе или формуле. Возьмите один день и один магазин, сравните ID документов и только затем итоговую сумму.
Где посмотреть, кто изменил документ в МойСклад?
Откройте документ и ссылку «Изменения» в правой верхней части карточки. Общие события доступны в «Моя компания → Аудит» при соответствующих правах. Доступ к конкретной истории зависит от прав сотрудника.
Как найти удалённый документ в API МойСклад?
Для поддерживаемой выборки документов фильтр isDeleted=true возвращает документы в корзине. Он не является полной историей удалений: корзина должна быть включена, а документы хранятся в ней семь дней. Для разбора причины дополнительно проверьте аудит.
Нужно ли каждый раз перечитывать всю историю?
Способ зависит от объёма данных и того, насколько далеко назад сотрудники могут исправлять документы. Надёжная схема хранит ID, время изменения и контрольные суммы, перечитывает согласованный период, отдельно обрабатывает удаления и регулярно сверяет старые даты. Конкретное окно выбирают после проверки процессов компании.
Как проверить остаток на прошлую дату после исправления приёмки?
Сравните отчёт об остатках на нужную дату в МойСклад с локальным результатом при тех же товарах и складах. Найдите приёмку и её историю изменений. Исправление даты или количества влияет на расчёт прошлых остатков; после изменения локальную историю нужно пересчитать.