Цикл бухгалтерського обліку, у стилі Beancount
Фінансові звіти не з’являються за допомогою магії. Це кінцевий продукт структурованого, повторюваного процесу, відомого як цикл бухгалтерського обліку. Хоча принципи універсальні, інструменти, якими ви користуєтесь, можуть кардинально змінити досвід. Цей посібник проведе вас через цикл бухгалтерського обліку з акцентом на Beancount, потужний інструмент бухгалтерського обліку у вигляді простого тексту.
Ми побачимо, як підхід Beancount, орієнтований на текст, усуває нудні кроки, що варто автоматизувати, і які звіти дають найчіткішу картину вашого фінансового здоров’я. 🧑💻
TL;DR: Робочий процес у Beancount
- Capture & Journal: Записуйте кожну операцію як чистий запис подвійного запису у вашому
.beancount
текстовому файлі. - Validate & Reconcile: Використовуйте твердження
balance
, щоб підтвердити, що ваш головний журнал відповідає банківським випискам, і запускайтеbean-check
для виявлення помилок. - Review: Створіть незкоригований пробний баланс для швидкої перевірки.
- Adjust: Додайте записи для нарахувань, відстрочок, амортизації та інших елементів кінця періоду.
- Re-review: Перевірте скоригований пробний баланс, щоб переконатися, що все правильно.
- Publish & Close: Створіть звіт про прибутки та збитки, баланс та звіт про грошові потоки. Закриття книг є необов’язковим у Beancount, оскільки звіти враховують дати.
Цей процес можна візуалізувати так:
Крок 1: Захоплення та реєстрація операцій
Це базовий крок. Кожна фінансова подія — продаж, покупка, банківська комісія — має бути зафіксована. У Beancount ви робите це, створюючи транзакції у простому текстовому файлі, зазвичай названому main.beancount
або розподіленому на кілька файлів за роками.
Кожна транзакція повинна відповідати правилам подвійного запису, тобто сума всіх записів має дорівнювати нулю. Beancount забезпечує це автоматично.
2025-08-10 * "Walmart" "Purchase of office supplies"
Expenses:Office:Supplies 45.67 USD
Assets:Bank:Checking -45.67 USD
- Pro‑Tip: Використовуйте теги типу
#project-phoenix
або#client-acme
, щоб додати виміри до ваших даних. Це робить запити та звіти надзвичайно гнучкими.
Гігієна звірки ✅
Найпотужніша функція для забезпечення точності — твердження балансу. В кі нці звітного періоду (наприклад, в кінці місяця) ви вказуєте, яким має бути баланс рахунку.
2025-08-31 balance Assets:Bank:Checking 12345.67 USD
Якщо сума всіх транзакцій, що впливають на Assets:Bank:Checking
до цієї дати, не дорівнює 12345.67 USD
, Beancount виведе помилку. Це просте директивне перетворює ваш журнал у самоперевірковий документ.
Для тих, хто заповнює історичні дані, директива pad
може автоматично створити балансуючу транзакцію, щоб ваші початкові залишки відповідали першому твердженню.