Токарев Lab Написать

БотGoldPromo, агентствоРаботает у заказчика

ДДС GoldPromo: учёт движения денег в Telegram вместо Google Таблицы

Система учёта движения денег для агентства вместо общей Google Таблицы. Сотрудники пишут операции в рабочий чат Telegram, бот предлагает их провести, а остатки, еженедельная сверка, акты и договоры ведутся в Mini App.

Сергей Токарев

Сергей ТокаревРазработчик проекта. Делаю похожее на заказ.

ДДС GoldPromo: учёт денег

Учёт движения денег в Google Таблице: где он ломался

В агентстве движение денежных средств вели в общей Google Таблице. Сотрудники писали о приходах и расходах в рабочий чат, а кто-то потом переносил это в таблицу. Сверка остатков шла раз в неделю вручную, кассы складывались в остатки ИП, статусы актов и договоров по каждому приходу жили в отдельных колонках. Чем больше операций, тем больше ручного переноса и расхождений.

Задача была оставить привычный чат, но убрать ручной перенос: операция вносится там же, где её обсуждают, а остатки, сверка и документы считаются сами.

Операции прямо из чата Telegram

Сотрудник пишет в рабочую группу как обычно: «+50 000 от клиента за август» или пересылает SMS банка. Бот находит в сообщении операцию и отвечает: «Провести?»

  • Разбор без нейросети, по правилам: сумма в разных форматах («10.000», «1.5 млн», «9997.38»), дата («вчера», «от 21.08»), контрагент, счёт. Шум банковских SMS вроде номера документа и остатка вычищается.
  • Несколько операций в одном сообщении проводятся по отдельности, строки без суммы становятся комментарием.
  • Кнопки: провести через форму, провести сразу без формы, провести все, «не операция».
  • Защита от повторов: если похожая операция уже есть в пределах суток, бот предупреждает «похоже на повтор» и не даёт провести её в одно нажатие.
  • Правка ответом на карточку операции: «сумма 5000», «дата 08.09», «удалить».
  • Чеки и файлы: фото или документ, отправленные вместе с суммой или в течение пяти минут, прикрепляются к операции.

Категория определяется по правилам, контрагенты каждый день подтягиваются из СБИС с ИНН и склеиваются с дублями.

Mini App и веб-кабинет

В Telegram Mini App и в браузере видны остатки по счетам, лента операций с фильтрами, переводы между своими счетами и кассами, отчёты и выгрузки в Excel. Вход через Telegram: в Mini App по подписи Telegram, в браузере через виджет или подтверждение кодом в боте. Доступ есть у участников рабочей группы: вышел из группы, потерял доступ.

Еженедельная сверка остатков

Неделя закрывается по средам в 11:00. Для каждого счёта сервис считает остаток по операциям, владелец ИП вводит остаток из банка и видит расхождение. Когда все ИП подтвердили сверку, неделя закрыта. Если кто-то задним числом меняет операцию в уже закрытой неделе, подтверждение снимается и сверку нужно пройти заново. Напоминания приходят сначала лично, потом в группу, а в выходные не приходят.

Документы по приходам: акты и договоры

Для каждого прихода ведутся статусы работ, акта и договора, номера документов и отметка бухгалтера. Приходы проходят этапы «Ждёт статуса», «Готов к акту», «Ждём подписи», «Нет договора», «Закрыто», а менеджер и бухгалтер видят, что осталось закрыть. Когда работа отмечена выполненной, бухгалтер получает уведомление.

Отчёт бухгалтера за месяц

Сервис сам считает работу бухгалтера за месяц по неделям: подписанные акты, подписанные и подготовленные договоры, сверки с клиентами. Отчёт проходит статусы «черновик», «на проверке», «подтверждён» или возвращается с комментарием, а подтверждённый сохраняет цифры и выгружается в Excel.

Переход с таблицы и резервные копии

История перенесена из Google Таблицы разовым импортом: операции, документы и контрагенты, остатки сошлись с итоговым листом. Бот по расписанию присылает архив базы с вложениями и полную выгрузку в Excel, из которой данные можно восстановить.

Как устроено

TypeScript, Fastify для API, grammY для бота, SQLite через Drizzle ORM, Mini App на React и Vite. Всё работает одним процессом на сервере заказчика, ежедневные резервные копии базы хранятся 30 дней.

Скриншоты

ДДС GoldPromo: учёт денег: Веб-кабинет
Веб-кабинет

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

Можно ли вести ДДС в Telegram вместо Google Таблицы?

Да. Сотрудники пишут операции в рабочий чат, бот предлагает их провести, а остатки, сверка и отчёты собираются в Mini App.

Нужна ли нейросеть, чтобы разбирать сообщения?

Нет. Суммы, даты, счета и контрагенты находятся по правилам, поэтому разбор предсказуемый, а каждая операция подтверждается человеком.

Как не провести одну операцию дважды?

Бот ищет похожие операции в пределах суток и в этом случае не даёт провести операцию в одно нажатие, только через форму с проверкой.

Как считается сверка остатков?

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

Нужно похожее?

Напишите, что хотите автоматизировать или сделать: отвечаю лично и быстро. Работаю по договору, цена фиксируется до начала. Как я работаю и сколько это стоит

Написать в Telegram MAX