Руководства

Как сделать приложение для бюджета: категории, транзакции, импорт и отчёты

Приложение для бюджета показывает, сколько вы планировали потратить по каждой категории, сколько уже потратили и что осталось. Чтобы его сделать, нужны аккаунты, категории, месячный бюджет по каждой категории, транзакции и несколько понятных отчётов. Два решения определяют всё остальное: ваш метод бюджетирования и то, как транзакции попадают в приложение — вводятся вручную, импортируются из CSV-файла банка или подтягиваются через подключение к банку. Начните с импорта CSV: он даёт большую часть пользы за малую долю работы и риска.

Этот гид посвящён программной части. Это не финансовый совет.

Сначала выберите метод бюджетирования

Метод определяет экраны и расчёты, поэтому выберите его до написания промпта.

МетодКак работаетЧто показывает приложение
Лимиты по категориямЗадаёте месячный лимит для каждой категорииПотрачено и лимит по категориям, с индикаторами прогресса
Нулевой бюджетКаждой единице дохода назначается задача, пока ничего не останется нераспределённымБаланс «не распределено»; деньги переносятся между категориями
Разделение 50/30/20Доход делится на проценты: нужды, желания и сбереженияТри блока и то, как каждый из них идёт
КонвертыФиксированные суммы по категориям; неизрасходованное переходит дальшеОстатки по конвертам, которые переносятся из месяца в месяц

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

Что нужно приложению для бюджета

Страницы

  • Этот месяц — каждая категория с бюджетом, потраченным и остатком; общий доход и общие траты.
  • Транзакции — список с датой, получателем, суммой, категорией и счётом; фильтры и поиск; быстрая смена категории.
  • Импорт — загрузка CSV, сопоставление колонок, предпросмотр, подтверждение.
  • Настройка бюджета — категории, группы (жильё, еда, транспорт) и суммы в месяц.
  • Счета — текущий счёт, сбережения, кредитная карта, наличные, с балансами.
  • Отчёты — траты по категориям во времени, доходы и расходы, сравнение месяцев. Подсказки по выбору диаграмм см. в гиде о том, как сделать дашборд.

Данные

  • Счета — название, тип, валюта, начальный баланс.
  • Категории — название, группа, порядок сортировки, архивная отметка.
  • Бюджеты — категория, месяц, сумма.
  • Транзакции — счёт, дата, получатель, сумма, категория, заметка, ID импорта, отметка «проведено».
  • Правила — «получатель содержит TESCO → Продукты», применяются при импорте.
  • Переводы — пара связанных транзакций между вашими счетами, чтобы перевод на сбережения не считался тратой.

Права доступа

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

Как работать с деньгами правильно

Финансовые приложения ломаются в мелочах, и это неприятно. Укажите эти правила в промпте:

  • Храните суммы как целые числа в наименьшей единице (копейках, центах) плюс код валюты. Числа с плавающей точкой дают итоги вроде 0.30000000000000004.
  • Знаки согласованы. Расход отрицательный, доход положительный, либо используйте отдельное поле направления — но не оба варианта сразу.
  • Переводы — не траты. Связывайте обе стороны перевода и исключайте их из сумм по категориям.
  • Возвраты уменьшают траты в исходной категории, а не считаются доходом.
  • Месяцы определяются по часовому поясу пользователя, чтобы транзакция в 23:00 последнего дня месяца не попадала в следующий месяц.
  • Одна валюта на бюджет для первой версии. Многовалютность требует курсов обмена и решения, какой курс использовать.

Как попадают транзакции

СпособСложность сборкиПримечания
Ручной вводНизкаяПодходит для наличных, но утомительно для всего остального
Импорт CSVНизкая–средняяБольшинство банков позволяют скачать транзакции; колонки в каждом банке разные, поэтому дайте пользователям сопоставлять колонки и сохранять это сопоставление
Подключение банкаВысокаяИспользует агрегатор вроде Plaid или открытые банковские API; аккаунты разработчика, одобрение, постоянные расходы и серьёзные обязанности по безопасности

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

Если позже вы добавите подключение к банку, ключи API провайдера должны оставаться на сервере, а пароли от банков пользователям никогда не запрашивайте. См. как хранить ключи API в безопасности.

Пример первого промпта

Сделай веб-приложение для бюджета на двоих: семейный учёт. Мы используем лимиты по категориям: категории сгруппированы (Жильё, Еда, Транспорт, Развлечения, Сбережения), у каждой месячная сумма бюджета. Главный экран показывает этот месяц: бюджет, потрачено и остаток по каждой категории с индикаторами прогресса, а также общий доход и общие траты. Счетов несколько (текущий, сбережения, кредитная карта). У транзакций есть дата, получатель, сумма, счёт, категория и заметка. Суммы храни как целые копейки с кодом валюты. Переводы между нашими счетами — связанные пары и не считаются тратами; возвраты уменьшают траты в их категории. Добавь импорт CSV: загрузка, сопоставление колонок один раз для каждого банка с запоминанием сопоставления, предпросмотр, пропуск дубликатов и правила получателей вроде «содержит TESCO → Продукты». Отчёты: траты по категориям по месяцам и доходы против расходов за последние 12 месяцев. Мы входим каждый по email и паролю и делим одно домохозяйство; никто другой не видит наши данные. С базой данных, удобно на телефоне.

Шаги сборки

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

Частые ошибки

  • Деньги в числах с плавающей точкой. Используйте целые копейки.
  • Учёт переводов как трат. Ваши взносы на сбережения будут выглядеть как перерасход.
  • Повторный импорт. Каждый повторный импорт удваивает траты, если нет проверки на дубликаты.
  • Начинать с подключения банков. Много работы и риска, прежде чем вы поймёте, что приложение полезно.
  • Хранить пароли от банков или номера карт. Никогда.
  • Нет экспорта. Людям нужны данные в таблице; добавьте экспорт в CSV.
  • Слишком много категорий. Двадцати достаточно; триста — это уже таблица.

Когда лучше готовое приложение для бюджета

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

Собственное приложение стоит делать, когда ваш метод не укладывается в их модель, когда вы не хотите, чтобы финансовые данные хранила другая компания, когда для вас достаточно импорта CSV пару раз в месяц или когда вы строите инструмент для конкретной группы — казначея клуба, небольшой благотворительной организации, программы коучинга. Если ваш бюджет сейчас живёт в таблице, как превратить таблицу в приложение поможет перейти. Для учёта расходов бизнеса или команды, а не домашнего бюджета, см. как сделать трекер расходов.

Как сделать приложение для бюджета в Mythex

Mythex может собрать это приложение по промпту выше: вы описываете его в чате, проверяете в живом предпросмотре и публикуете. Выделенная база Postgres добавляется, когда приложению она нужна. Вход — ваш собственный подход, и то же касается любого провайдера банковских данных: его ключи вы храните как секреты проекта, а агент подключает их на сервере. Банковских подключений в Mythex нет. Для старта подойдёт шаблон дашборда бюджета, построенный вокруг импорта CSV и анализа отклонений.

Вопросы

Могу ли я сделать собственное приложение для бюджета?

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

Как приложения для бюджета подключаются к банковским счетам?

Обычно через агрегатор банковских данных, например Plaid, или через открытые банковские API там, где они есть. Для этого нужен аккаунт разработчика, в некоторых случаях одобрение и аккуратная работа с безопасностью. Импорт CSV-файлов, которые вы скачиваете из банка, намного проще и отлично подходит для первой версии.

Как приложению для бюджета хранить суммы денег?

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

Безопасно ли хранить финансовые данные в приложении, которое я сделал?

Может быть безопасно, если приложение требует входа, отделяет данные каждого человека, хранит секреты на сервере и работает по HTTPS. Никогда не храните банковские пароли и полные номера карт. Проверьте приложение по чек-листу безопасности, прежде чем добавлять туда данные других людей.

Mythex · Pricing · Создавайте что угодно с ИИ · Шаблоны сайтов и приложений · Сравнения Mythex · Глоссарий по созданию приложений с ИИ · Бесплатные инструменты для создания приложений с ИИ · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)