Ведение расходов в гугл таблицах и телеге

 Публичный пост
2 октября 2024  577

Или еще один способ вести домашнюю бухгалтерию так, чтобы было удобно именно тебе, а все стальные говорили "интересно, но я такое использовать не буду" :)

Предисловие

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

Проблема и поиски решения

А вот после релока появилась проблема.
Новая валюта, к размерности которой ты не привык и все цены в ней же. Нет понимания стоимости денег и понимания относительной ценности денег и товаров.

Т.е. 10 тугриков это насколько больше 100 тугриков. Не математически х10 и точка. А вот 10 это много? а 100? А если один товар стоит 20, а другой аналогичный 90 это странно или норм? А относительно чего это "много" считать?

Причем даже если это все перевести в проценты от зп, и наложить на свою старую зп, особо легче не становится, т.к. стоимость жизни тут другая, другое соотношение расходов и другой подход к жизни в целом.
Т.е. для своих существующих знаний и методов учета денег, которые ты нарабатывал с малолетства и до этого вообще не задумывался "а как оно там устроено?", нужно задать корректировки, а для этого как-то формализовать эти методы.
А иначе ты просто не понимаешь на что ты тратишь деньги и из-за чего у тебя под конец месяца на счету ноль, а зарплата только через неделю. А ещё стало полной неожиданностью насколько ущербны банковские приложения, особенно в части ведения статистики. И стало понятно, что вообще сподвигло создавать 100500 приложенек для ведения домашних финансов.
В итоге было решено просто строить всё с нуля.

Какие проблемы нужно решить

  1. Учёт всех совершенных трат.
  2. Категоризация всех трат.
  3. Подсчёт сумм по категориям за какой-то период. Пусть будет месяц.
  4. Графики? ну м.б. хз.
  5. Чтобы было удобно.
  6. Чтобы не было дублирования записей.
  7. Чтобы категории выставлялись правильно.
  8. Всё в одном месте для всей семьи.

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

Что не интересует или чего избегать

  • Откуда трата. Интересует суммарный бюджет, а не разбивка по счетам и картам.
  • Мгновенные изменения. Это не онлайн казино, устраивает адекватная задержка.
  • Ручное добавление - это боль с и страдание.
  • Хотелось бы что-то максимально селфхостное. Ибо всё же это финансы и нефиг их опять специально выгружать очередному "анонимному анализатору", для этого банка достаточно.

Что делать

Пунктом №1 было поискать в клубе, поспрашивать в чатиках, покопаться в своих записках, на худой конец в экселе завести двойную бухгалтерскую запись и страдать:).

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

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

И я всё же хочу решить проблему отсутствия понимания куда я трачу деньги, а не сидеть и задротить сам процесс ведения гроссбуха в тележке.
А еще очень не хочется пробовать пару десятков приложух, которые в массе своей платные, чтобы потыкать в неё, понять что не заходит и перейти к следующей.

Тут  сейчас должны прийти адепты зен мани и ynab и сказать, что вот оно, идеальное решение.
Но поскольку это я пишу последовательно, а поиски шли параллельно, то они были отложены как запасной вариант, если таблички не выгорят.

Кстати о гроссбухах. Двойная запись.
Изначально это была одна таблица вида "имя - сумма - остаток". Для ведения дел в лавке 15 века норм. Для дома ок, но только если у тебя все операции наликом, а дома стоит сундук с монетами и основная цель всегда знать текущий остаток.

В современном мире, и сильно упрощая, двойная запись это две таблицы, условно доход и расход, которые считаются отдельно, но обязательно должны сойтись. И сама суть ведения этого формата: свести баланс движения всех денежных средств в ноль в и из разных источников/счетов.
Имхо, если ты не главбух, который уже без этого не может - оно тебе в таком виде на надо. Потому, что пользоваться этим неудобно и переусложнено.
Так что нафиг её. А заодно beancount и всех ему подобных.

Как по мне, один из основных недостатков подавляющего большинства приложух для домашней бухгалтерии: они пытаются как либо колсплеить двойную запись, попутно натянув на неё красивый гуй. Хочешь быть бухом - купи гроссбух, ну или 1с поставь:)

Остаётся подход людей с "у меня всё в экселке". Значит будем пробовать начинать с этого.
Но с этим, обычно, есть проблема, т.к. мало кто хочет делиться подобными табличками, да и вообще в деталях рассказывать как у него это устроено.
Мне повезло, т.к. Лев незадолго до моих поисков хвастался как он уже лет 10 ведет подобную табличку, и он ею поделился, и рассказал как её ведет. И это ЕСТЕСТВЕННО НЕУДОБНО :))

Было так

1 лист - 1 месяц.


В шапке категории. Первая строка это номер категории, вторая - суммирующая формула, третья - название
Ну а слева ручками пишем сколько и на что потратили, ну и номер категории.

Еще одна подобная таблица но уже с тратами по счетам, где категории вида "банк-№счета"

Плюс сводная таблица по месяцам, где данные берутся из шапки предыдущей


И такая же по годам.

Ну и всякие графики. В моем примере они ужасные. А реальные очень красивенькие и можно повтыкать в них с умным видом:) Особенно на дистанции в 10 лет:)

Выглядит немного страшненько, не хватает автоматизации, но общее воркфлоу похоже на то, что мне нужно. Значит будем адаптировать. :)

Таблица

После нескольких бессонных ночей у меня получилось такое:


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

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

И сводные таблички стали повеселей


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

Ну и относительно красивые графики уже получились

С этим уже можно работать.
Попробовал вводить эти данные руками - через 3 минуты появилось желание убивать.
А значит что?

Автоматизация. Начало.

Для начала можно попробовать руками обрабатывать выгрузки из банка.
В эксельке будут строки вида

|2024/08/19|2024/08/16|TRANSACCION CONTACTLESS EN KFC CITI, CITI, TARJ. :*12358|-13.98|

В принципе похоже, но порядок не тот, мусора много в описании.
Поколдовав минут 5 со "вставкой и заменой" это можно привести к виду:

|2024-08-16|-13.98|KFC|

И уже скопом вставить в табличку и еще минут за 5 расставить везде категории.

Всё,

Ну почти:)
Но это однозначно лучше чем водить все траты руками. И уж точно быстрее.

Такого режима мне хватило почти на год. Оно не особо удобно, и порой подбешивает, но было уже приемлемо. И раз в месяц выгрузить пару отчетов и раскидать их за 20 минут это допустимая трата времени при условии, то ты не понимаешь будет ли толк из твоих действий.

А толк был. И появился достаточно быстро, т.к. я заодно загрузил всю имеющуюся банковскую историю, и вот через несколько месяцев у меня есть реальная статистика за год. На основании которой можно делать выводы.
Собственно в этот момент эта табличка уже выполнила свою минимальную задачу. Я мог анализировать свои расходы и быть уверенным, что учтено всё. Ну или почти всё, т.к. при заполнении таблички раз в месяц-полтора, на регулярное занесение трат за налик просто забиваешь, а потом уже не помнишь.

В какой-то момент мне совсем надоело руками править выгрузку и появилась первая попытка в автоматизацию. На которой и планировал остановиться.
Просто баш скриптик, который конвертит xls в scv, и потом в основном sed и немножко всяким из base-utils приводит все строки к такому виду |2024-08-16|-13.98|KFC|.

Но тут в дело вступает банк, в очередной раз подтверждая, что Испанское ИТ самое лучшее ИТ в мире:)


Выгрузка из вебморды у нас в xls, а в приложениях в xlsx. А ещё везде разный формат даты. А ещё там все вспомогательные поля будут на английском, а тут на испанском. И здесь всё капсом, а там там как получится. Ну и всё в таком духе.
Вот вроде мелочи, но бесят. Собственно тут пришла идея "а что будет если это все запихнуть в телегу и пускай оно само всё делает, а меня спрашивает только если не знает что делать".
Но самый прикол, что нельзя просто сохранить файл локально на телефон, можно только зашарить его в какую-то другую аппку:)

Телега

В итоге меня это задолбало, была расчехлена Idea и за пару недель был написан бот который:

  • преобразует даты и суммы в единый формат
  • предварительно парсит описание трат и удаляет мусор из строк.
  • удаляет пустые строки в гугл таблице
  • ищет дубли между добавляемым и имеющимся.
  • сам категоризирует траты на базе шаблонов.
  • для чего не смог найти категорию спрашивает.
  • спрашивает нужно ли сделать новый шаблон.
  • позволяет использовать несколько категорий для шаблона.
  • умеет редактировать шаблоны.
  • если трата походит под шаблон с несколькими категориями - спрашивает какую брать.
  • позволяет переименовать описание. Это полезно когда покупаешь что-нить в амазоне и тебя в банке транзакция имеет имя amazon rg3q5YH246uqt, и хотелось бы это привести к амазон кроссовки
  • находит переименованные и спрашивает это так или просто так совпало.
  • может добавить траты кешем. Также с категориями или без.
  • может задать даты отпуска, когда все траты автоматически помечаются определенной категорией.

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




И текущий вокрфлоу выглядит так:
Выгрузить из банка xlsx и зашарить его в приложеньку от моего NAS, в ней выбрать нужную папку, а дальше бот сам закидает тебя вопросами.

Раза с третьего, четвертого он почти перестает спрашивать о новых категориях и либо всё распределяет сам, либо уточняет, когда несколько категорий. Т.к. деньги ты тратишь обычно примерно в одних и тех же местах.
Ну а если выгружать отчеты раз в недельку, то теперь это всё занимает меньше минуты и уже стало комфортно.
Главное не забывать вносить траты за налик сразу:)

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

Что дальше?

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

Можно попробовать это монетизировать, но тут тоже есть вопросы. Как быть с безопасностью данных, как разделять доступы, каким образом вообще создавать многопользовательность и пр.

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

Связанные посты
5 комментариев 👇

Интересно, я проходил что то подобное, поделюсь своим опытом. Я тоже когда то начинал учет с гуглотаблиц, затем был бот в тг (забросил, стало лень пилить «интеграции» с файлами разных банков), затем купил ynab. Пока работала интеграция с моими банками соглашался платить подписку, тк заводить транзакции это самый головняк. Но в какой то момент часть интеграций у них отсохла, ручной труд стал утомлять, и я начал искать альтернативы (даже снова подумывал вернуться и допилить бота). Где то на реддит увидел пост про Actual https://github.com/actualbudget/actual и теперь я с ним. Серверная часть хостится на vps, все банковские акки синхронизированы через GoCradless, правила для категорий работают исправно, практически не требуется что то править, аналитика и графики присутствуют. Минимум доп.действий и никаких подписок, только донат проекту. Теперь только баланс кеша не сходится, там всегда что то забывается 😁

  Развернуть 1 комментарий

@ElKosta, а как импортируешь выписки по карте из банка?

  Развернуть 1 комментарий

@orbit, через сервис сторонний агрегирущий данные. В РФ такое не работает увы и никогда не работало из за законодательных ограничений на обмен банковскими и перс данными

  Развернуть 1 комментарий

@ElKosta, не совсем понимаю связку с GoCradless.
Это же система для провода денег и выставления счетов для бизнеса. Разве не так?

Ну и оно платное. Почему тогда никаких подписок?

  Развернуть 1 комментарий

@djhrum, почти так. У них есть еще Bank Account Data сервис - вот он как раз про синк данных.
Тут больше детелей - https://actualbudget.org/docs/advanced/bank-sync на фри тире 50 запросов в месяц. Я синк дергаю раз в пару дней обычно, мне хватает.

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб