Как компания выгрузила все платежи из двух аккаунтов «МойСклад» в одну Google-таблицу и синхронизировала их в реальном времени

Автор: Александр Кая

Компания работает в торговом и финансовом контуре и использует «МойСклад» для ведения учёта. Для таких бизнесов критично иметь консолидированную финансовую картину, особенно если операции ведутся сразу в нескольких аккаунтах.

Этот сегмент особенно нуждается в автоматизации, потому что:

  • финансовые данные распределены между разными аккаунтами
  • ручная консолидация в таблицах не масштабируется
  • отчётность требует актуальных данных без задержек

У клиента используется два аккаунта «МойСклад», в которых формируются финансовые документы разных типов. Руководству требовалась единая Google-таблица, где в одном месте собраны все движения денежных средств.

Под платежами понимались:
• входящие платежи
• исходящие платежи
• приходные ордеры
• расходные ордеры

Решение должно было учитывать историю за несколько лет и далее автоматически обновляться при любых изменениях.

Проблема заказчика

До внедрения автоматизации данные по платежам были разрозненными.

Основные сложности:

  • платежи хранились в двух аккаунтах «МойСклад»
  • отсутствовала единая таблица для анализа
  • ручная выгрузка большого объёма данных была невозможна
  • данные в таблицах быстро устаревали
  • невозможно было отследить изменения и удаления платежей

Общий объём данных составлял около 48 000 документов, что делало задачу особенно чувствительной к нагрузке на систему.

Предложенная автоматизация

Мы предложили разделить задачу на два логических этапа:

  • первоначальную историческую выгрузку всех платежей
  • синхронизацию платежей в реальном времени

Такой подход позволил аккуратно загрузить большой объём данных без перегрузки API и далее поддерживать таблицу в актуальном состоянии автоматически.

5. Решение проблемы

Реализация была выполнена в два этапа.

Часть 1. Историческая выгрузка платежей

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

Процесс выглядел так:

  1. В сценарии задавался период выгрузки — с декабря 2022 года по текущую дату.
  2. Для каждого типа документа определялось количество платежей за месяц.
  3. Данные скачивались пачками по 100 документов через API «МойСклад».
  4. Каждый месяц выгружался примерно за 20 секунд.

Логика сценария:
• получение списка платежей
• преобразование данных в массив
• запись строк в Google Sheets

Каждая выгрузка запускалась вручную через NODUL, что позволяло полностью контролировать процесс.

Для каждого типа документа узнавали количество платежей за месяц.

Часть 2. Выгрузка платежей в реальном времени

После загрузки истории была реализована синхронизация в реальном времени.

В «МойСклад» были созданы 12 вебхуков:
• по 3 вебхука на каждый тип платежей
• создание
• изменение
• удаление

Для обработки событий были настроены три типа сценариев.

  1. При создании платежа
    Новый платёж автоматически добавляется в Google Sheets.

  2. При изменении платежа
    Сценарий находит соответствующую строку и обновляет данные.

  3. При удалении платежа
    Сценарий находит и удаляет строку из таблицы.

В сумме для проекта использовалось 5 сценариев, которые покрыли всю логику работы с данными.

Вывод

Компания получила единую, актуальную и полностью автоматизированную финансовую таблицу, объединяющую данные из двух аккаунтов «МойСклад».

Ключевые результаты:

  • выгружено около 48 000 платежей без перегрузки системы
  • все типы финансовых документов сведены в одну Google-таблицу
  • данные обновляются в реальном времени при создании, изменении и удалении платежей
  • исключена ручная работа и риск расхождений
  • Google Sheets стала полноценным источником аналитики и отчётности