Перейти к контенту

4 поста с тегом "Assets"

Посмотреть все теги

Накопленная амортизация (для Beancount): Практическое руководство в виде простого текста

· 8 мин чтения
Mike Thrift
Mike Thrift
Marketing Manager

Если вы учитываете основные средства в своей бухгалтерии — ноутбуки, камеры, оборудование или даже офисную мебель — ваши книги должны отражать их снижающуюся стоимость. Это включает два ключевых понятия: амортизация (расход) и её суммарный показатель — накопленная амортизация. В этом руководстве оба понятия объяснены простым языком, а затем показано, как моделировать их в Beancount с готовыми к копированию примерами, включая мощные варианты автоматизации.


2025-08-23-accumulated-depreciation

Что такое накопленная амортизация?

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

В финансовой отчётности вы увидите накопленную амортизацию рядом с первоначальной стоимостью актива. Это позволяет любому, кто читает ваши книги, увидеть как историческую стоимость (сколько вы заплатили), так и чистую балансовую стоимость (сколько он стоит сейчас в учёте).

Важный момент: накопленная амортизация — это контра‑актив счёт. Это может звучать сложно, но идея проста:

  • Это счёт «актив», поэтому он находится в разделе Assets вашего плана счетов.
  • Однако он имеет кредитовый остаток (отрицательное значение в активных счетах Beancount), что уменьшает стоимость связанного основного средства.

Где она отображается в балансе?

Накопленная амортизация обычно появляется в балансе сразу под соответствующим основным средством. Например:

Оборудование: Компьютеры$3,000.00
Минус: Накопленная амортизация($1,000.00)
Оборудование: Компьютеры, чистая стоимость$2,000.00

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


Как рассчитывается амортизация?

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

  • Прямолинейный (SL): Самый простой и часто используемый метод. Вы списываете равную часть стоимости актива каждый период его полезного срока службы. Например, ноутбук стоимостью $3,000 с полезным сроком 36 мес. (3 года) будет амортизироваться $83.33 в месяц.
  • Налоговые методы (например, MACRS в США): Для налоговых целей государства часто задают ускоренные графики. В США система Modified Accelerated Cost Recovery System (MACRS) позволяет брать большие амортизационные отчисления в первые годы эксплуатации актива. Beancount легко справляется с такими графиками — нужно лишь рассчитать суммы по официальным таблицам (например, из IRS Publication 946) и сформировать соответствующие проводки.

Формула (прямолинейная)

Периодическая амортизация = СтоимостьЛиквидационная стоимостьПолезный срок\frac{\text{Стоимость} - \text{Ликвидационная стоимость}}{\text{Полезный срок}}

Накопленная амортизация (на дату t) = (Периодическая амортизация до t)\sum (\text{Периодическая амортизация до } t)

Ликвидационная стоимость — это предполагаемая остаточная стоимость актива в конце его срока службы. Для простоты часто принимается равной нулю.


Подход Beancount: моделируем стоимость и накопленную амортизацию

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

  • Assets:Equipment:Computers:Cost — для хранения исторической стоимости
  • Assets:Equipment:Computers:AccumDep — контра‑актив, который будет кредитоваться со временем
  • Expenses:Depreciation:Computers — для записи периодических расходов

Эта структура отражает стандартную бухгалтерскую практику и рекомендуется для управления амортизацией основных средств в Beancount.


Вариант A: Ручные прямолинейные проводки

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

1. Откройте необходимые счета

2025-01-01 open Assets:Bank:Checking
2025-01-01 open Assets:Equipment:Computers:Cost
2025-01-01 open Assets:Equipment:Computers:AccumDep
2025-01-01 open Expenses:Depreciation:Computers

2. Запишите покупку (по исторической стоимости)

При покупке актива дебетуйте счёт Cost.

2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD

3. Запишите ежемесячную амортизацию

Каждый месяц фиксируйте расход амортизации. Для актива $3,000 за 36 мес. месячная амортизация = $3000 ÷ 36 = $83.33.

Транзакция включает дебет расходного счёта и кредит контра‑активного счёта.

2025-02-28 * "Monthly depreciation - MacBook Pro (SL 36mo)"
Expenses:Depreciation:Computers 83.33 USD
Assets:Equipment:Computers:AccumDep -83.33 USD ; кредит контра‑актива

Повторяйте эту запись каждый месяц в течение 36 мес. Баланс Assets:Equipment:Computers:AccumDep будет становиться всё более отрицательным, уменьшая чистую балансовую стоимость актива.

Быстрая проверка: легко проверить чистую стоимость в отчёте Balance Sheet Fava или запросом:

bean-query myledger.bean "SELECT account, SUM(position) WHERE account   'Assets:Equipment:Computers:(Cost|AccumDep)' GROUP BY account"

Сумма остатков этих двух счетов — это ваша чистая балансовая стоимость.


Вариант B: Автоматизация плагином amortize в Fava

Если вы используете Fava (популярный веб‑интерфейс для Beancount) и ваша амортизация фиксирована каждый месяц, её можно автоматизировать.

Сначала включите плагин в начале файла Beancount:

plugin "fava.plugins.amortize_over"

Затем создайте одну транзакцию, определяющую весь график амортизации.

; 1. Запишите покупку как обычно
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD

; 2. Настройте график амортизации
2025-01-20 * "Depreciation schedule - MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USD

Плагин увидит эту транзакцию и автоматически сгенерирует виртуальные проводки по $83.33 каждый месяц в течение 36 мес. Эти записи не записываются в ваш .bean‑файл, но отображаются во всех отчётах. Это идеально для прямолинейной амортизации, но не подходит для нерегулярных графиков, таких как MACRS.


Вариант C: Генерация периодических записей сторонним плагином

Если хотите, чтобы реальные (не виртуальные) проводки записывались в файл, но при этом нужна автоматизация, подойдёт генератор периодических записей. Один из самых популярных — beancount-periodic от Далласа Лу. Плагин можно настроить для создания датированных проводок, давая вам контроль ручных записей и удобство автоматизации.


Просмотр результатов: стоимость, накопленная амортизация и чистая балансовая стоимость

Независимо от выбранного метода, ваш Balance Sheet будет показывать оба счёта — Cost и AccumDep — в разделе Активов. Сумма этих двух — это ваша чистая балансовая стоимость. Такое представление — историческая стоимость за вычетом накопленной амортизации — ожидается бухгалтерами и финансовыми аналитиками. Оно обеспечивает полную прозрачность возраста и стоимости ваших активов.


Вывод актива из учёта (продажа, утилизация, списание)

Когда актив достигает конца срока службы, его нужно либо продать, утилизировать, либо списать. Чтобы удалить его из книг, необходимо:

  1. Удалить его историческую стоимость.
  2. Удалить связанную накопленную амортизацию.
  3. Записать полученные денежные средства.
  4. Записать полученную прибыль или убыток (разницу между полученными деньгами и чистой балансовой стоимостью).

Пример: продажа актива с прибылью

Допустим, вы продаёте MacBook Pro 15 июня 2027 г.

  • Историческая стоимость: $3,000
  • Накопленная амортизация на момент продажи: -$2,500
  • Чистая балансовая стоимость: $3,000 - $2,500 = $500
  • Вы продаёте за: $800
  • Прибыль от продажи: $800 - $500 = $300

Транзакция Beancount для отражения выбытия:

2027-06-15 * "Sell MacBook Pro"
Assets:Bank:Checking 800.00 USD ; полученные деньги
Assets:Equipment:Computers:AccumDep 2500.00 USD ; дебет для обнуления контра‑актива
Assets:Equipment:Computers:Cost -3000.00 USD ; кредит для снятия исторической стоимости
Income:Gains:AssetDisposals -300.00 USD ; кредит для записи прибыли

Если бы вы получили только $400 (убыток $100), разницу следует отразить в счёте Expenses:Losses:AssetDisposals с положительным значением (дебет).


FAQ (быстро)

  • Является ли накопленная амортизация активом или обязательством?
    Ни тем, ни другим. Это контра‑актив. Он находится в разделе активов баланса, но имеет кредитовый остаток, уменьшающий общую стоимость актива.

  • Стоит ли когда‑либо писать напрямую в счёт Cost после покупки?
    Обычно — нет. Контра‑актив нужен, чтобы сохранять историческую стоимость. Все списания стоимости из‑за амортизации должны идти в ...:AccumDep.

  • Можно ли использовать Beancount для графиков MACRS?
    Да. Нужно рассчитать суммы амортизации по таблицам IRS Publication 946, а затем записать их вручную или через периодический плагин. Плагин amortize в Fava не подходит, так как суммы в MACRS не равны каждый месяц.

  • Что насчёт списания по разделу 179?
    Раздел 179 позволяет списать полную стоимость квалифицированного имущества в год ввода в эксплуатацию вместо амортизации. В Beancount это просто дебет расходного счёта вместо счёта основного средства в момент покупки.


Частые ошибки (и как их избежать)

  • Запись амортизации напрямую в счёт Cost.
    Исправление: всегда кредитуйте счёт ...:AccumDep. Это сохраняет историческую стоимость, важную для финансовой отчётности.

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

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

  • Ожидание, что плагин amortize в Fava справится с неравными графиками.
    Исправление: помните, что плагин работает только с равными ежемесячными частями. Для любых других схем используйте ручные проводки или более гибкий периодический плагин.


Шаблон для копирования

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

option "title" "My Business Ledger"
plugin "fava.plugins.amortize_over" ; Удалите, если не используете автоматизацию Fava

; --- Счета ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Assets:Equipment:Computers:Cost
2025-01-01 open Assets:Equipment:Computers:AccumDep
2025-01-01 open Expenses:Depreciation:Computers
2025-01-01 open Income:Gains:AssetDisposals
2025-01-01 open Expenses:Losses:AssetDisposals

; --- Покупка ---
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD

; --- Прямолинейные проводки ---
2025-02-28 * "Monthly depreciation - MacBook Pro (SL 36mo)"
Expenses:Depreciation:Computers 83.33 USD
Assets:Equipment:Computers:AccumDep -83.33 USD

; --- Автоматический график (если используете плагин) ---
2025-01-20 * "Depreciation schedule - MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USD

; --- Выбытие актива ---
2027-06-15 * "Sell MacBook Pro"
Assets:Bank:Checking 800.00 USD
Assets:Equipment:Computers:AccumDep 2500.00 USD
Assets:Equipment:Computers:Cost -3000.00 USD
Income:Gains:AssetDisposals -300.00 USD

Таблица сравнения методов

МетодПреимуществаНедостатки
Ручные прямолинейныеПолный контроль, простота пониманияТребует ручного ввода каждый месяц
Плагин amortize в FavaАвтоматические виртуальные записи, быстрый обзорНе записывает реальные проводки, не подходит для ускоренных графиков
beancount-periodicРеальные записи + автоматизацияТребует настройки стороннего плагина

Заключение

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

Моделирование операций с недвижимостью в Beancount

· 6 мин чтения
Mike Thrift
Mike Thrift
Marketing Manager

Сделки с недвижимостью могут стать крупнейшей финансовой операцией в жизни семьи. Эта статья объясняет, как моделировать недвижимость в Beancount. Я рассматриваю недвижимость как актив, а рост её стоимости — как нереализованную прибыль. Кроме того, ипотека моделируется как обязательство, а проценты — как расходы.

Предположим, что господин А купил роскошный дом по адресу 123 ABC Street, XYZ City, CA, 12345 1 января 2020 года по цене 1 000 000. Процентная ставка составляет 3,0 %, первоначальный взнос — 20 %, а сумма кредита — 800 000.

СтатьяСумма
Сумма ипотеки800 000
Процентная ставка3 %
Срок ипотеки30 лет
Общая стоимость ипотеки1 478 219,62
Ежемесячные платежи4 106,17
Страхование жилья1 300 в год (39 000 всего)
Налог на имущество7 500 в год (225 000 всего)
Погашение кредитаДекабрь 2049
Всего выплачено процентов414 219,62

2023-06-09-tracking-real-estate

Mortgage detail screenshot

Создание счетов

Во-первых, мы рассматриваем дом как Актив (Asset). Поскольку дом числится как Актив, ему необходимо присвоить единицу измерения. В данном случае количество единиц — одна, так как маловероятно наличие нескольких одинаковых объектов, и даже если это n-й дом, мы захотим записать его в отдельный Актив. То есть одному дому соответствует один Актив, и этот Актив имеет специальную единицу измерения, значение которой может быть только 1.

2019-12-31 commodity HOUSE.ABC
name: "123 ABC Street, XYZ City, CA, 12345"

2019-12-31 open Assets:Property:US:CA:123ABC HOUSE.ABC
2019-12-31 open Liabilities:Bank:US:SomeBank:Mortgage:Loan USD

В первой строке мы определили единицу товара (commodity), представляющую дом. В четвертой строке мы определили счет Актива, который содержит единицу товара, ранее определенную как дом. В пятой строке мы определили счет для банка-кредитора. Поскольку это обязательство, оно относится к категории Liabilities.

Покупка

С настроенными выше счетами акт покупки дома эквивалентен формуле:

заем денег (долг) + трата денег (первоначальный взнос) = 1 дом в активах

Самым важным справочным документом при покупке недвижимости, скорее всего, является Settlement Statement (расчетный лист покупателя), в котором четко прописано движение денежных средств.

2020-01-01 * "Buying the house"
Assets:Property:US:CA:123ABC 1 HOUSE.ABC {1,000,000 USD}
Assets:Bank:US:SomeBankA -100,000 USD
Assets:Bank:US:SomeBankB -101,000 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan -800,000.00 USD
Expenses:Home:Insurance 1,000 USD
Expenses:Home:Mortgage:Loan:ClosingCost

Здесь мы подробно описываем операцию покупки дома, где деньги уходят из некоторых банков (используются для первоначального взноса и других расходов), берется кредит (увеличиваются обязательства) и приобретается дом (добавляется в активы).

Выплата ипотеки

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

Чтобы записать погашение кредита, вам достаточно проверить выписку из вашего банка. Нужно лишь знать, какую часть основного долга вы выплачиваете каждый месяц, а остальное — это проценты. Проценты учитываются как расходы (Expenses).

2020-02-01 * "Mortgage payment"
Assets:Bank:US:SomeBank:Saving:Joint -3,372.83 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan 1,376.26 USD
Expenses:Home:Mortgage:Loan:Interest

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

Рост стоимости

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

Я не стал использовать этот метод по следующим причинам:

  1. Текущая рыночная стоимость дома может быть только оценочной, она предназначена только для справки и не имеет практической ценности. Обычно я могу получить оценку недвижимости только на таких сайтах, как Redfin или Zillow, и лично я не считаю, что она имеет высокую справочную ценность. Я также не рассматривал возможность включения этого прироста в общие активы в режиме реального времени.
  2. Лично я считаю, что пока ипотека не выплачена, если денежный поток по дому отрицательный, в определенной степени недвижимость все еще является обязательством. Поэтому преждевременное включение её в активы создаст иллюзию богатства и роста капитала, и я лично хочу избежать этой иллюзии.

Метод, который я использую для записи прироста стоимости недвижимости, также будет обсуждаться позже в контексте моделирования RSU. Этот метод заключается в использовании виртуальной валютной единицы. Предполагая, что вашей базовой валютой является USD, мы можем использовать USD.UNVEST (кажется, для этого нет необходимости создавать новый Commodity), чтобы указать, что этот актив рассчитывается в специальной валюте. Рост или уменьшение этого актива не будут фиксироваться в USD. Таким образом, я могу достичь своей первоначальной цели — зафиксировать рост стоимости дома, и этот рост не будет включен в итоговый балансовый отчет (Balance Sheet).

2020-01-01 price HOUSE.ABC                          1,000,000 USD
2025-01-01 price HOUSE.ABC 1,400,000 USD.UNVEST

Вам нужно лишь регулярно указывать цену вашей недвижимости в USD.UNVEST.

Таким образом, на странице Commodity в Fava вы сможете отслеживать динамику справочной цены дома. Но на странице Balance Sheet цена дома останется ценой на момент совершения сделки. То есть вашими общими активами по-прежнему будут ваши первоначальные вложения плюс основной долг, который вы продолжаете выплачивать. Окончательное изменение этого актива должно произойти только при продаже дома.

Property price chart screenshot

Продажа

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

Предположим, что к 1 января 2025 года стоимость недвижимости выросла до 1 400 000 $, а некоторые справочные данные выглядят следующим образом:

СтатьяСумма
Остаток709 656,20
Комиссия агента (6%)72 000
Прочие расходы на закрытие сделки10 000

Лицо А решает продать недвижимость, и итоговая цена продажи дома составляет 1 300 000 $.

2025-01-01 * "Продажа дома"
Assets:Property:US:CA:123ABC -1 HOUSE.ABC {1,300,000 USD}
Liabilities:Bank:US:SomeBank:Mortgage:Loan 709,656.20 USD
Expenses:Home:Agent:Fee 72,000 USD
Expenses:Home:ClosingCost 10,000 USD
Expenses:Home:Tax 90,000 USD
Assets:Bank:US:SomeBankA

Здесь предполагается, что в течение 2 из 5 лет владелец проживал в доме самостоятельно, поэтому прирост стоимости в 500 000 не подлежит налогообложению. Я привел здесь произвольное число. В итоге сумма, поступающая на счет Лица А, составляет 418 343,8 \, из которых 200 000 —этопервоначальныйвзноснатотмомент,иоколо100000— это первоначальный взнос на тот момент, и около 100 000 было выплачено в качестве процентов. Таким образом, в конечном счете бухгалтерская прибыль Лица А составляет около 100 000 $. Стоит отметить, что мой расчет не является исчерпывающим, так как Лицо А экономило на аренде в течение этих 5 лет, а также могли быть другие расходы на дом, такие как техническое обслуживание, ремонт и так далее.

Чтобы отразить это в балансе, вы можете добавить следующую котировку цены:

2025-01-01 price HOUSE.ABC                          1,300,000 USD

Понимание амортизации в Beancount

· 2 мин чтения
Mike Thrift
Mike Thrift
Marketing Manager

Амортизация распределяет платежи на множество взносов во времени. В beancount.io вы можете использовать плагин fava.plugins.amortize_over для достижения этой цели.

2021-01-09-амортизация

Без амортизации, если вы хотите застраховать свой автомобиль на 6 месяцев стоимостью $600, вам придется записать это как разовый расход на определенную дату.

2017-06-01 open Assets:Bank:Checking
2017-06-01 open Assets:Prepaid-Expenses
2017-06-01 open Expenses:Insurance:Auto


2017-06-01 * "Pay car insurance"
Assets:Bank:Checking -600.00 USD
Assets:Prepaid-Expenses

Однако с амортизацией вы можете распределить расход на шесть месяцев, добавив plugin "fava.plugins.amortize_over" в начало файла и используя amortize_months: 6 для транзакции.

plugin "fava.plugins.amortize_over"

2020-06-01 open Assets:Bank:Checking
2020-06-01 open Assets:Prepaid-Expenses
2020-06-01 open Expenses:Insurance:Auto

2020-06-01 * "Amortize car insurance over six months"
amortize_months: 6
Assets:Prepaid-Expenses -600.00 USD
Expenses:Insurance:Auto

И затем в Журнале вы увидите, что транзакция разбита на 6 проводок.

2020-11-01 * Amortize car insurance over six months (6/6) am
2020-10-01 * Amortize car insurance over six months (5/6) am
2020-09-01 * Amortize car insurance over six months (4/6) am
2020-08-01 * Amortize car insurance over six months (3/6) am
2020-07-01 * Amortize car insurance over six months (2/6) am
2020-06-01 * Amortize car insurance over six months (1/6) am

Скриншот транзакции амортизации

Введение в Beancount.io

· 5 мин чтения
Mike Thrift
Mike Thrift
Marketing Manager

Почему современный бухгалтерский учет важен

Все еще управляете своими инвестициями с помощью электронных таблиц? Хотя электронные таблицы универсальны, они могут стать громоздкими и подверженными ошибкам по мере роста вашего инвестиционного портфеля. Представляем Beancount.io – сложную, но удобную платформу для отслеживания инвестиций, разработанную специально для управления портфелями акций и криптовалют. Созданный с учетом потребностей инженеров и приверженцев финансового минимализма, Beancount.io сочетает в себе мощные функции с интуитивно понятным интерфейсом для оптимизации вашего опыта отслеживания инвестиций.

2019-09-07-introduction-to-beancount

Expenses

Income Statement

Balance Sheet

Двойная запись: Основа точности

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

В системе двойной записи каждая операция требует как минимум двух записей – дебета (+) и кредита (-) – по разным счетам. Эта встроенная система проверки делает практически невозможным запись несбалансированных операций, гарантируя точность и надежность ваших финансовых записей.

1970-01-01 open Income:BeancountCorp
1970-01-01 open Assets:Cash
1970-01-01 open Expenses:Food
1970-01-01 open Assets:Receivables:Alice
1970-01-01 open Assets:Receivables:Bob
1970-01-01 open Assets:Receivables:Charlie
1970-01-01 open Liabilities:CreditCard

2019-05-31 * "BeancountCorp" "Salary of May 15th to May 31st"
Income:BeancountCorp -888 USD
Assets:Cash 888 USD

2019-07-12 * "Popeyes chicken sandwiches" "dinner with Alice, Bob, and Charlie"
Expenses:Food 20 USD
Assets:Receivables:Alice 20 USD
Assets:Receivables:Bob 20 USD
Assets:Receivables:Charlie 20 USD
Liabilities:CreditCard -80 USD

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

Assets = Liabilities + Equity(aka Net Assets)

Мы использовали синтаксис Beancount от Мартина Блейса и веб-проект Fava от Якоба Шнитцера для создания этого веб-сайта. И он предупредит вас, если какая-либо операция не будет суммироваться до нуля.

Error Alert

Теперь вы понимаете, как мы обеспечиваем правильность учета. Но вы можете спросить, что такое эти "счета"?

Понимание счетов: Аналогия с ведром воды

Представьте свои финансовые счета как систему взаимосвязанных ведер с водой, где деньги текут между ними, как вода. Эта аналогия делает двойную запись интуитивно понятной: когда вы переводите деньги с одного счета на другой, это похоже на переливание воды из одного ведра в другое – общее количество воды (денег) в системе остается постоянным.

Beancount.io предлагает пять типов счетов.

  1. Доходы — Их сумма всегда отрицательна или находится в дебете. Это потому, что вы зарабатываете деньги, и затем деньги дебетуются со счета "Доходы" и кредитуются на ваши "Активы".
  2. Расходы — Их сумма всегда положительна или находится в кредите. Это потому, что вы тратите деньги, и деньги перетекают из "Активов" или "Обязательств" в "Расходы".
  3. Обязательства — Их сумма положительна или равна нулю. Ваши обязательства по кредитной карте являются хорошим примером, которые растут и падают циклически.
  4. Активы — Их сумма положительна или равна нулю. Ваши наличные деньги или дома всегда имеют определенную стоимость.
  5. Капитал — Ваши чистые активы. Система рассчитает это автоматически для вас. Капитал = Активы - Обязательства и это отражает ваше благосостояние.

Теперь вы можете открыть свои настраиваемые счета с помощью указанных выше ключевых слов:

1970-01-01 open Assets:Cash
1970-01-01 open Assets:Stock:Robinhood
1970-01-01 open Assets:Crypto:Coinbase
1970-01-01 open Expenses:Transportation:Taxi
1970-01-01 open Equity:OpeningBalance

Расширенное отслеживание инвестиций с помощью товаров

Beancount.io отлично справляется с отслеживанием разнообразных инвестиций, от акций до криптовалют. Давайте рассмотрим, как он обрабатывает сложные инвестиционные сценарии. Например, вот как вы бы записали покупку 10 биткойнов по $100 каждый в 2014 году:

2014-08-08 * "Buy 10 Bitcoin"
Assets:Trade:Cash -1000.00 USD
Assets:Trade:Positions 10 BTC {100.00 USD}

А затем, три года спустя, вы продаете их (изначально с затратами в $100 за единицу, аннотированными {100.00 USD}) по цене $10 000 за единицу, аннотированной @ 10,000.00 USD.

2017-12-12 * "Sell 2 Bitcoin"
Assets:Trade:Positions -2 BTC {100.00 USD} @ 10,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

Или та же операция с @@ 20,000.00 USD означает, что по цене $20 000 в общей сложности.

2017-12-12 * "Sell 2 Bitcoin"
Assets:Trade:Positions -2 BTC {100.00 USD} @@ 20,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

Сумма всех частей операции, включая -2 BTC {100.00 USD}, по-прежнему, как всегда, равна нулю.

Тег стоимости {100.00 USD} важен, потому что вы могли приобрести тот же товар по разным ценам.

100 BTC {10.00 USD, 2012-08-08}
10 BTC {100.00 USD, 2014-08-08}

Если вы хотите упростить процесс, вы можете настроить счет в начале с использованием FIFO или LIFO. FIFO означает "первым пришел, первым ушел", а LIFO – "последним пришел, первым ушел". В США IRS использует FIFO для расчета вашей прибыли/убытка и соответствующего налогообложения.

1970-01-01 open Assets:Trade:Positions "FIFO"

И затем, когда вы продаете его в сокращенной форме, например -2 BTC {}, Beancount автоматически применит стратегию FIFO и продаст самый старый товар.

Начало работы с Beancount.io

Beancount.io – это современная облачная платформа для управления финансами, которая преобразует ваши текстовые записи транзакций в полные финансовые отчеты, включая отчеты о прибылях и убытках, балансы и оборотные ведомости. Объединяя надежность простых текстовых файлов с мощными инструментами визуализации, Beancount.io помогает вам поддерживать точный контроль над вашей финансовой жизнью, получая при этом ценные сведения о вашей инвестиционной эффективности.

Начните свой финансовый путь с Beancount.io – Бесплатно в течение нашего акционного периода!