Перейти до основного вмісту

Налаштування бюджетів Beancount і відстеження їх у Fava

Налаштуйте бюджети для кожного рахунку за допомогою спеціальних директив бюджету в Beancount, порівнюйте фактичні витрати з цілями у Fava, переносьте невитрачені кошти та відстежуйте цілі доходу.

У цьому посібнику пояснюється, як налаштовувати, керувати та візуалізувати бюджети за рахунками за допомогою користувацьких директив custom у Beancount та веб-інтерфейсу Fava.

Робочі приклади Ledger: Моделюйте кожен конверт як субрахунок власного капіталу, накладений на реальний банківський рахунок. Розподіл зарплати переміщує вартість у межах власного капіталу, тоді як покупка фіксує як рух готівки, так і бюджетне рішення.

Як встановити бюджет​

Бюджети визначаються за допомогою директиви custom "budget" у вашому файлі Beancount. Синтаксис простий:

РРРР-ММ-ДД custom "budget" НазваРахунку "інтервал" Сума ВАЛЮТА
  • НазваРахунку: Конкретний рахунок витрат або доходу, для якого ви хочете встановити бюджет.
  • інтервал: Період бюджету. Має бути одним із daily, weekly, monthly, quarterly або yearly.
  • Сума: Цільова сума для інтервалу.

Як це працює:

  • Директива бюджету діє з дати її встановлення до тих пір, поки інша директива бюджету для того самого рахунку не замінить її.
  • Beancount і Fava розбивають усі бюджети на щоденний еквівалент, що дозволяє їм розрахувати загальну бюджетну суму для будь-якого заданого діапазону дат.

Приклад:

; Встановити щоденний бюджет на каву
2024-01-01 custom "budget" Expenses:Food:Coffee       "daily"      5.00 USD
 
; Встановити місячний бюджет на продукти
2024-01-01 custom "budget" Expenses:Food:Groceries    "monthly"  600.00 USD
 
; Встановити річний бюджет на відпустки
2024-01-01 custom "budget" Expenses:Travel:Vacation   "yearly"  3000.00 USD

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

2024-03-01 custom "budget" Expenses:Food:Groceries    "monthly"  650.00 USD

Візуалізація бюджетів у Fava​

Fava, веб-інтерфейс для Beancount, автоматично виявляє та відображає ваші бюджети в кількох ключових звітах, що дозволяє порівнювати фактичні витрати з вашими цілями:

  • Звіт про прибутки та збитки: Діаграми Чистий прибуток та Витрати покажуть бюджетні та фактичні значення.
  • Зміни (щомісячно): Показує заплановану суму для кожного місяця.
  • Залишки (щомісячно): Показує кумулятивну бюджетну суму з часом.

Просунуті методи бюджетування​

Перенесення залишку бюджету​

Стандартна система бюджетування скидається кожного періоду. Щоб реалізувати "перенесення залишку", коли невитрачені кошти переносяться, використовуйте спеціальний рахунок активів для зберігання бюджетних коштів.

  1. Поповніть бюджетний рахунок на початку періоду:

    2024-02-01 * "Поповнити щомісячний бюджет на розваги"
      Assets:Checking                  -200.00 USD
      Assets:Budget:Entertainment       200.00 USD
  2. Витрачайте безпосередньо з цього бюджетного рахунку:

    2024-02-15 * "Вечір кіно"
      Expenses:Entertainment:Movies      30.00 USD
      Assets:Budget:Entertainment       -30.00 USD

    Залишок на рахунку Assets:Budget:Entertainment є вашою сумою для перенесення.

Відстеження цілей доходу​

Ви також можете встановлювати цільові показники для рахунків доходу, використовуючи від'ємну суму бюджету. Це дозволяє Fava відстежувати ваші доходи відносно поставлених цілей.

; Встановити щомісячні цілі доходу
2024-01-01 custom "budget" Income:Salary      "monthly" -5000.00 USD
2024-01-01 custom "budget" Income:Freelance   "monthly" -1000.00 USD

Усунення несправностей​

Якщо ваші бюджети не відображаються у Fava, перевірте наступне:

  1. Формат дати: Переконайтеся, що дати мають формат РРРР-ММ-ДД.
  2. Назви рахунків: Назва рахунку в директиві має точно збігатися з назвою рахунку у ваших транзакціях.
  3. Написання інтервалу: Інтервал має бути одним із п'яти допустимих варіантів і написаний малими літерами (наприклад, "monthly").
  4. Перезапустіть Fava: Якщо ви щойно додали директиви, може знадобитися перезапуск сервера Fava, щоб він підхопив зміни.

Джерело: https://beancount.io/uk/docs/Tips/budgets