Уявіть, що ви сплачуєте річну страховку на автомобіль одноразовим платежем у розмірі $600. Якщо зафіксувати це як одноразову витрату, ваш баланс за цей місяць покаже велику суму, а наступні 11 місяців — нульові витрати на страхування. Це спотворює щомісячну фінансову картину, ускладнюючи розуміння справжніх операційних витрат та ефективне бюджетування.
Рішення — амортизація: бухгалтерська практика розподілу одноразової вартості на період, якому вона приносить користь. Цей посібник покаже, як бездоганно впровадити амортизацію в Beancount за допомогою плагіна Fava.
Що таке амортизація?
Амортизація — це процес поступового віднесення вартості нематеріального активу або попередньо оплаченого об'єкта на витрати протягом його корисного терміну служби.
Ключові переваги:
- Точна звітність: Вирівнює великі витрати для більш реалістичного уявлення про щомісячну прибутковість.
- Краще бюджетування: Дозволяє планувати постійні щомісячні витрати замість великих нерегулярних.
- Чіткіший аналіз грошових потоків: Відокремлює момент грошового платежу від визнання витрат.
Рішення Beancount: fava.plugins.amortize_over
Beancount разом із веб-інтерфейсом Fava надає простий, але потужний плагін для автоматизації амортизації.
Крок 1: Увімкнення плагіна
Спочатку потрібно увімкнути плагін, додавши наступний рядок на початок вашого файлу Beancount:
plugin "fava.plugins.amortize_over"Важливо: Віртуальні транзакції Майте на увазі, що цей плагін створює віртуальні проводки. Вони динамічно відображаються у звітах Fava та інструментах на кшталт
bean-report(якщо плагін завантажено), але не записуються назад у ваш файл.bean. Ваш вихідний файл залишається без змін.
Крок 2: Структуруйте свої рахунки
Для типової попередньо оплаченої витрати вам потрібні три ключові рахунки:
Assets:Bank:Checking: Джерело грошового платежу.Assets:Prepaid:Insurance: Тимчасовий рахунок для зберігання вартості, яку ви вже сплатили, але ще не використали.Expenses:Insurance:Auto: Кінцевий пункт призначення для щомісячних витрат.
2024-01-01 open Assets:Bank:Checking
2024-01-01 open Assets:Prepaid:Insurance
2024-01-01 open Expenses:Insurance:AutoКрок 3: Запишіть амортизовану транзакцію
Зафіксуємо платіж на $600 за страховку строком на 6 місяців. Ми переказуємо гроші з банку на рахунок попередньо оплачених активів і додаємо тег метаданих.
2024-06-01 * "Сплата страхового внеску за авто на 6 місяців"
amortize_months: 6
Assets:Prepaid:Insurance 600.00 USD
Assets:Bank:Checking -600.00 USD
Expenses:Insurance:Autoamortize_months: 6: Вказує плагіну розподілити вартість на 6 місяців.- Транзакція переказує грошові кошти в попередньо оплачений актив.
Expenses:Insurance:Auto: Ця кінцева частина без суми вказує плагіну, куди відносити щомісячні витрати.
Плагін генерує щомісячні записи, які дебетують Expenses:Insurance:Auto та кредитують Assets:Prepaid:Insurance на $100, починаючи з першого числа місяця транзакції.
Практичні приклади
Річна ліцензія на програмне забезпечення
2024-01-15 * "Річна ліцензія Adobe Creative Suite"
amortize_months: 12
Assets:Prepaid:Software 1200.00 USD
Assets:Bank:Checking -1200.00 USD
Expenses:Software:AdobeРезультат: Витрати в розмірі $100.00 визнаються на рахунку Expenses:Software:Adobe щомісяця протягом 12 місяців.
Ретейнер за професійні послуги
; Щоквартальний юридичний ретейнер, сплачений авансом з поточного рахунку
2024-01-05 * "Юридичний ретейнер за Q1"
amortize_months: 3
Assets:Prepaid:Professional 4500.00 USD
Assets:Bank:Checking -4500.00 USD
Expenses:Professional:LegalРезультат: Юридичні витрати в розмірі $1500.00 визнаються щомісяця протягом Q1.
Амортизація обладнання (основні засоби)
Амортизація основних засобів потребує більш формального підходу, щоб зберегти первісну вартість активу в обліку. Це робиться за допомогою контр-активного рахунку, який зазвичай називають Accumulated-Depreciation.
Процес складається з двох окремих транзакцій:
; Відкриття необхідних рахунків, включаючи контр-активний
2024-01-01 open Assets:Equipment:Computers:Cost
2024-01-01 open Assets:Equipment:Computers:AccumDep
2024-01-01 open Expenses:Depreciation:Computers
; Крок 1: Фіксація початкової покупки. Це проста, неамортизована транзакція.
2024-01-20 * "Придбання MacBook Pro для бізнесу"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD
; Крок 2: Налаштування графіка амортизації. Ця нульова транзакція
; вказує плагіну створити щомісячні записи з амортизації.
2024-01-20 * "Графік амортизації для MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USDРезультат: Плагін генеруватиме щомісячний запис протягом 36 місяців, який дебетує Expenses:Depreciation:Computers на $83.33 та кредитує контр-активний рахунок Assets:Equipment:Computers:AccumDep на $83.33.
Звітність та перевірка
1. Моніторинг залишків передоплати за допомогою перевірок
Використовуйте директиву balance Beancount, щоб переконатися, що рахунок передоплати коректно зменшується.
Примітка: Дата перевірки повинна бути не раніше дати віртуального запису (яка за замовчуванням припадає на 1 число місяця). Хорошою практикою є встановлювати її на 2 число.
; Для прикладу зі страховкою перевірте залишок після першого місяця.
2024-07-02 balance Assets:Prepaid:Insurance 500.00 USD2. Поглиблена перевірка за допомогою bean-query
Для швидкого огляду змін залишків передоплати з часом ви можете використовувати bean-query у терміналі:
bean-query your-ledger.beancount "SELECT date, account, SUM(position) WHERE account ~ 'Prepaid' GROUP BY date, account ORDER BY date"Обмеження та заключні поради
- Лише рівні частки: Плагін
amortize_overпризначений для рівного розподілу на цілу кількість місяців. Він не обробляє нерегулярні графіки або щоденний пропорційний розподіл. Для таких випадків потрібен ручний підхід. - Управлінський vs. Податковий облік: Описані тут графіки амортизації призначені для управлінського обліку (отримання чіткого уявлення про фінанси). Якщо ви ведете офіційний бухгалтерський облік, переконайтеся, що ваші графіки амортизації відповідають місцевим нормам (GAAP/IFRS).
- Обробка дат: Плагін генерує щомісячні записи на перше число кожного місяця, починаючи з місяця вихідної транзакції. Якщо ви хочете, щоб амортизація почалася, наприклад, у лютому, датуйте вихідну транзакцію на 2024-02-01 або пізніше.