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

90 постов с тегом "Accounting"

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

Раздельный учет для бизнеса и личных финансов с помощью Beancount

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

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

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

2023-08-12-business-vs-personal-bookkeeping-with-beancount

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

Почему разделение важно

Отсутствие разделения финансов — это не просто плохая привычка; это несет в себе значительные риски и скрывает ценную бизнес-информацию.

  • Прозрачность для налоговой: Налоговая служба не просто предлагает вам иметь отдельные банковские счета; она настоятельно рекомендует это. Когда бизнес- и личные средства смешиваются, становится трудно доказать, какие расходы являются законными бизнес-вычетами. Эта двусмысленность может привести к вопросам и сложностям, которых лучше избегать.
  • Риск аудита: Смешивание транзакций — это серьезный сигнал тревоги для аудиторов. Если ваши книги — это запутанный клубок личной и деловой активности, вы рискуете тем, что действительные вычеты будут отклонены или даже будут наложены штрафы. Чистая, отдельная бухгалтерская книга демонстрирует профессионализм и делает любой потенциальный аудит более гладким и менее стрессовым.
  • Более четкий анализ: Как вы можете узнать свою истинную норму прибыли, если денежный поток вашего бизнеса омрачен личными расходами? Отдельная бизнес-книга дает вам неискаженное представление о финансовом состоянии вашей компании. Вы можете точно отслеживать доходы, анализировать расходы и рассчитывать налоговые обязательства без «шума» вашей личной финансовой жизни.

Ключевые различия вкратце

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

ОбластьБизнес-учетЛичный учет
ЦельОтслеживание доходов, расходов, активов и обязательств для принятия налоговых решений и решений о ростеУправление бюджетом домохозяйства и целями сбережений
Налоговые правилаДолжны соответствовать Приложению C, 1120‑S или 1065; строгие стандарты вычетаНесколько формальных требований, помимо базового учета
СчетаСобственный капитал, кредиторская задолженность, дебиторская задолженность, налог с продаж, заработная платаРасчетный счет, сберегательный счет, инвестиции, кредиты
Оплата владельцуЗаработная плата (W‑2) или снятие средств владельцем через собственный капиталН/Д — личные снятия средств для покрытия расходов на проживание

Четырехэтапный план Beancount

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

• 1 — Откройте отдельные счета

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

2025-07-23 open Assets:Bank:Business   USD
2025-07-23 open Assets:Bank:Personal USD

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

• 2 — Регистрируйте взносы и снятия средств владельца

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

  • Взносы: Когда вы вкладываете свои собственные деньги в бизнес, чтобы начать его или покрыть дефицит.
  • Снятие: Когда вы забираете деньги из бизнеса для личного пользования (так многие индивидуальные предприниматели «платят» себе).
; Вложение капитала для запуска бизнеса
2025-07-23 * "Взносы владельца"
Assets:Bank:Business 10,000.00 USD
Equity:Owner:Contrib

; Снятие денег на личные расходы
2025-08-05 * "Снятие владельцем на аренду"
Equity:Owner:Draw 2,500.00 USD
Assets:Bank:Business

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

• 3 — Быстро обрабатывайте смешанные чеки

Ошибки случаются. Вы можете случайно использовать свою бизнес-карту для оплаты личного ужина. Главное — немедленно исправить это в своей бухгалтерской книге. Не удаляйте транзакцию; переклассифицируйте ее как снятие средств владельцем.

2025-08-07 * "Личные покупки по бизнес-карте"
Equity:Owner:Draw 72.35 USD
Assets:Bank:Business

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

• 4 — Сверяйте и проверяйте по графику

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

# Проверьте баланс вашего бизнес-банковского счета по вашей выписке
bean-balance books.bean "Assets:Bank:Business"

# Создайте отчет о прибылях и убытках, чтобы проверить прибыльность
bean-report books.bean income_statement -e 2025-08-31

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

Налоговые соображения

  • Предварительные налоги: Чтобы избежать болезненного налогового счета, относитесь к своим будущим налогам как к текущим бизнес-расходам. Создайте счета обязательств (Liabilities:Tax:Federal, Liabilities:Tax:State) и регулярно переводите на них установленный процент от каждого депозита. Когда наступает срок квартальных платежей, деньги уже ждут.
  • Не подлежащие вычету личные расходы: Помните правило налоговой службы: бизнес-расходы должны быть «обычными и необходимыми» для вашей работы. Ваши личные расходы на питание, транспортные расходы и не связанные с бизнесом подписки не подлежат вычету и должны быть полностью исключены из отчета о прибылях и убытках вашего бизнеса.

Краткий контрольный список

  • Откройте банковские счета и кредитные карты только для бизнеса.
  • Создайте план счетов Beancount с Assets:Bank:Business, Equity:Owner:Contrib и Equity:Owner:Draw.
  • Определитесь с вашей учетной базой (кассовый метод или метод начисления) и отметьте это в своих options Beancount.
  • Немедленно помечайте любые случайные личные расходы по бизнес-картам как Equity:Owner:Draw.
  • Сверяйте еженедельно; создавайте резервные копии вашего файла .bean в частном удаленном репозитории Git.
  • Ежемесячно просматривайте отчет о прибылях и убытках, баланс и отчеты о движении денежных средств.

Итог: Раздельные деньги, раздельный учет. 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

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

Всем привет! В сегодняшнем посте мы погрузимся в мир Beancount, инструмента бухгалтерского учета по двойной записи, который многие любят за его простоту и мощь. Более конкретно, мы поговорим о двух ключевых понятиях: дебиторской и кредиторской задолженности.

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

Дебиторская и кредиторская задолженность: Основы

2023-05-30-receiveable-and-payable

В бухгалтерском учете «дебиторская задолженность» и «кредиторская задолженность» — это термины, используемые для отслеживания денежных средств, которые должны быть получены или выплачены. «Дебиторская задолженность» относится к деньгам, которые другие должны вам, в то время как «кредиторская задолженность» относится к деньгам, которые вы должны другим.

Рассмотрим пример:

  1. Дебиторская задолженность (ДЗ): Предположим, у вас есть книжный магазин, и покупатель приобретает книгу в кредит. Деньги, которые он вам должен за книгу, являются дебиторской задолженностью.

  2. Кредиторская задолженность (КЗ): С другой стороны, представьте, что вы заказываете новый комплект книг у издателя, но не оплачиваете их сразу. Деньги, которые вы должны издателю, являются кредиторской задолженностью.

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

Настройка дебиторской и кредиторской задолженности в Beancount

Структура вашего файла Beancount может быть настолько простой или сложной, насколько вам это необходимо. Для дебиторской и кредиторской задолженности вы, вероятно, захотите создать отдельные счета в разделах «Активы» и «Обязательства».

Вот простой пример:

1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:AccountsPayable

Отслеживание транзакций

Сторона получателя

После настройки счетов вы можете отслеживать транзакции, связанные с дебиторской и кредиторской задолженностью. Рассмотрим пример:

2023-05-29 * "Sold books to customer on credit"
Assets:AccountsReceivable 100 USD
Income:BookSales -100 USD

Здесь вы добавляете 100 долларов к своей дебиторской задолженности, потому что клиент должен вам эту сумму. Одновременно вы уменьшаете свой доход на ту же сумму, чтобы сохранить баланс (поскольку вы еще не получили деньги).

Когда клиент в конечном итоге заплатит, вы запишете это так:

2023-06-01 * "Received payment from customer"
Assets:Bank:Savings 100 USD
Assets:AccountsReceivable -100 USD

Сторона плательщика

Тот же принцип применяется и к кредиторской задолженности, но с обратными знаками:

2023-05-30 * "Bought books from publisher on credit"
Liabilities:AccountsPayable 200 USD
Expenses:BookPurchases -200 USD

И когда вы погашаете свой долг:

2023-06-02 * "Paid off debt to publisher"
Liabilities:AccountsPayable -200 USD
Assets:Bank:Checking 200 USD

Заключение

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

Это только отправная точка, и Beancount способен на гораздо большее. Надеюсь, этот пост в блоге поможет прояснить эти важные понятия. Как всегда, удачного учета!

Деконструкция реестра Beancount: Пример для бизнес-учета

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

В сегодняшнем посте мы подробно разберем реестр Beancount для бизнеса, что поможет вам понять тонкости этой системы учета двойной записи в виде обычного текста.

Деконструкция реестра Beancount: Пример для бизнес-учета

Начнем с кода:

2023-05-22-business-template

1970-01-01 open Assets:Bank:Mercury
1970-01-01 open Assets:Crypto

1970-01-01 open Equity:Bank:Chase

1970-01-01 open Income:Stripe
1970-01-01 open Income:Crypto:ETH

1970-01-01 open Expenses:COGS
1970-01-01 open Expenses:COGS:Contabo
1970-01-01 open Expenses:COGS:AmazonWebServices

1970-01-01 open Expenses:BusinessExpenses
1970-01-01 open Expenses:BusinessExpenses:ChatGPT

2023-05-14 * "CONTABO.COM" "Mercury Checking ••1234"
Expenses:COGS:Contabo 17.49 USD
Assets:Bank:Mercury -17.49 USD

2023-05-11 * "Amazon Web Services" "Mercury Checking ••1234"
Expenses:COGS:AmazonWebServices 14490.33 USD
Assets:Bank:Mercury -14490.33 USD

2023-03-01 * "STRIPE" "Mercury Checking ••1234"
Income:Stripe -21230.75 USD
Assets:Bank:Mercury 21230.75 USD

2023-05-18 * "customer_182734" "0x5190E84918FD67706A9DFDb337d5744dF4EE5f3f"
Assets:Crypto -19 ETH {1,856.20 USD}
Income:Crypto:ETH 19 ETH @@ 35267.8 USD

Понимание кода

  1. Открытие счетов: Код начинается с открытия ряда счетов 01.01.1970. Они включают в себя комбинацию счетов активов (Assets:Bank:Mercury и Assets:Crypto), счета капитала (Equity:Bank:Chase), счетов доходов (Income:Stripe и Income:Crypto:ETH) и счетов расходов (Expenses:COGS, Expenses:COGS:AmazonWebServices, Expenses:BusinessExpenses и Expenses:BusinessExpenses:ChatGPT).

  2. Транзакции: Затем код переходит к записи ряда транзакций в период с 01.03.2023 по 18.05.2023.

    • Транзакция от 14.05.2023 представляет собой платеж в размере $17.49 в CONTABO.COM со счета Mercury Checking ••1234. Это записывается как расход (Expenses:COGS:Contabo) и соответствующее списание со счета Assets:Bank:Mercury.

    • Аналогично, транзакция от 11.05.2023 представляет собой платеж в размере $14490.33 в Amazon Web Services с того же банковского счета. Это регистрируется под Expenses:COGS:AmazonWebServices.

    • Транзакция от 01.03.2023 показывает доход от STRIPE, зачисленный на счет Mercury Checking ••1234, на общую сумму $21230.75. Это записывается как доход (Income:Stripe) и пополнение банковского счета (Assets:Bank:Mercury).

    • Последняя транзакция от 18.05.2023 представляет собой криптовалютную транзакцию, включающую 19 ETH от клиента. Это отслеживается по счетам Assets:Crypto и Income:Crypto:ETH. {1,856.20 USD} показывает цену ETH на момент транзакции, а @@ 35267.8 USD указывает общую стоимость транзакции 19 ETH.

    Во всех транзакциях соблюдается принцип двойной записи, что гарантирует постоянное выполнение уравнения Активы = Обязательства + Капитал.

Заключительные мысли

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

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

Повторное введение бесплатного тарифа для новых клиентов

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

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

Представляем новый бесплатный тариф для новых клиентов

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

2023-04-28-start-serving-free-users

Новые клиенты, зарегистрировавшиеся после 1 мая 2023 года, получат доступ к бесплатному тарифу.

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

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

Шпаргалка Beancount

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

Пример названия счета

Assets:US:BofA:Checking

cheatsheet-en

Типы счетов

Assets          +
Liabilities -
Income -
Expenses +
Equity -

Валюты и товары

CNY, EUR, CAD, AUD
GOOG, AAPL, RBF1005
HOME_MAYST, AIRMILES
HOURS

Директивы

Общий синтаксис

YYYY-MM-DD <Directive> <Parameters...>

Открытие и закрытие счетов

2001-05-29 open Expenses:Restaurant
2001-05-29 open Assets:Checking USD,EUR ; Ограничения по валюте

2015-04-23 close Assets:Checking

Объявление валют/товаров (Необязательно)

1998-07-22 commodity AAPL
name: "Apple Computer Inc."

Цены

2015-04-30 price AAPL   125.15 CNY
2015-05-30 price AAPL 130.28 CNY

Заметки

2013-03-20 note Assets:Checking "Позвонил, чтобы узнать о скидке"

Документы

2013-03-20 document Assets:Checking "путь/к/выписке.pdf"

Транзакции

2015-05-30 * "Некоторое описание этой транзакции"
Liabilities:CreditCard -101.23 CNY
Expenses:Restaurant 101.23 CNY

2015-05-30 ! "Кабельная компания" "Счет за телефон" #tag ˆlink
id: "TW378743437" ; Метаданные
Expenses:Home:Phone 87.45 CNY
Assets:Checking ; Вы можете опустить одну сумму

Проводки

  ...    123.45 USD                             Простая
... 10 GOOG {502.12 USD} С себестоимостью за единицу
... 10 GOOG {{5021.20 USD}} С общей себестоимостью
... 10 GOOG {502.12 # 9.95 USD} С обеими себестоимостями
... 1000.00 USD @ 1.10 CAD С ценой за единицу
... 10 GOOG {502.12 USD} @ 1.10 CAD С себестоимостью и ценой
... 10 GOOG {502.12 USD, 2014-05-12} С датой
! ... 123.45 USD ... С флагом

Утверждения баланса и выравнивание

; Утверждает сумму только для указанной валюты:
2015-06-01 balance Liabilities:CreditCard -634.30 CNY

; Автоматическая вставка транзакции для выполнения следующего утверждения:
2015-06-01pad Assets:Checking Equity:Opening-Balances

События

2015-06-01 event "местоположение" "Нью-Йорк, США"
2015-06-30 event "адрес" "123 Мэй Стрит"

Опции

option "заголовок" "Моя личная бухгалтерская книга"

Прочее

pushtag #trip-to-peru
...
poptag #trip-to-peru
; Комментарии начинаются с точки с запятой

Магия учета в виде простого текста с Beancount

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

Откройте для себя магию учета в виде простого текста с Beancount

Beancount.io banner

Введение

2023-04-18-introduction-to-beancount

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

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

Что такое Beancount?

Beancount — это система учета в виде простого текста с открытым исходным кодом, созданная Мартином Бле. Вдохновленный системой Ledger Джона Уигли, Beancount стремится предоставить надежный и проверенный метод управления личными финансами и финансами малого бизнеса с использованием текстовых файлов. С Beancount вы можете легко отслеживать свои доходы, расходы, инвестиции и многое другое.

Почему Beancount?

Учет в виде простого текста предлагает несколько преимуществ по сравнению с традиционными системами учета на основе электронных таблиц или программного обеспечения:

  • Прозрачность: Файлы Beancount удобочитаемы, что упрощает понимание и аудит ваших финансовых данных.
  • Гибкость: Beancount легко настраивается под ваши конкретные нужды, и вы можете использовать свой любимый текстовый редактор и систему контроля версий для управления вашими финансовыми данными.
  • Портативность: Ваши финансовые данные доступны на любом устройстве, и их легко переносить между системами или делиться ими с другими.
  • Устойчивость к будущим изменениям: Текстовые файлы универсально совместимы, что гарантирует доступность ваших финансовых данных даже по мере развития технологий.

Основные концепции Beancount

Для эффективного использования Beancount крайне важно понимать его основные концепции:

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

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

Чтобы начать использовать Beancount, выполните следующие простые шаги:

  • Установите Beancount: Установите Beancount на свою систему, используя предоставленные инструкции по установке для вашей операционной системы.
  • Создайте свой файл Beancount: Создайте новый текстовый файл с расширением .beancount (например, my_finances.beancount).
  • Определите свои счета: Используйте директиву "open" для определения счетов, которые вы будете использовать в своих транзакциях.
  • Записывайте транзакции: Используйте директиву "txn" для записи ваших финансовых транзакций.

Или просто зарегистрируйтесь на https://beancount.io. Вот несколько примеров учета в виде простого текста:

Пример 1: Базовая транзакция

2023-04-01 open Assets:Checking
2023-04-01 open Expenses:Groceries

2023-04-10 txn "Grocery Store" "Buying groceries"
Assets:Checking -50.00 USD
Expenses:Groceries 50.00 USD

В этом примере мы открываем два счета: Assets:Checking (Активы:Текущий) и Expenses:Groceries (Расходы:Продукты). 10 апреля 2023 года мы записываем транзакцию на покупку продуктов на сумму $50. Транзакция уменьшает баланс Assets:Checking на $50 (дебет) и увеличивает баланс Expenses:Groceries на $50 (кредит).

Пример 2: Транзакция дохода и расхода

2023-04-01 open Assets:Checking
2023-04-01 open Income:Salary
2023-04-01 open Expenses:Rent

2023-04-05 txn "Employer" "Salary payment"
Assets:Checking 2000.00 USD
Income:Salary -2000.00 USD

2023-04-06 txn "Landlord" "Monthly rent payment"
Assets:Checking -1000.00 USD
Expenses:Rent 1000.00 USD

В этом примере мы открываем три счета: Assets:Checking (Активы:Текущий), Income:Salary (Доход:Зарплата) и Expenses:Rent (Расходы:Аренда). 5 апреля 2023 года мы записываем транзакцию по выплате зарплаты в размере $2000. Транзакция увеличивает баланс Assets:Checking на $2000 (кредит) и уменьшает баланс Income:Salary на $2000 (дебет). 6 апреля 2023 года мы записываем транзакцию по оплате аренды в размере $1000. Транзакция уменьшает баланс Assets:Checking на $1000 (дебет) и увеличивает баланс Expenses:Rent на $1000 (кредит).

Пример 3: Перевод между счетами

2023-04-01 open Assets:Checking
2023-04-01 open Assets:Savings

2023-04-15 txn "Bank" "Transfer from Checking to Savings"
Assets:Checking -500.00 USD
Assets:Savings 500.00 USD

В этом примере мы открываем два счета: Assets:Checking (Активы:Текущий) и Assets:Savings (Активы:Сбережения). 15 апреля 2023 года мы записываем транзакцию по переводу $500 с текущего счета на сберегательный. Транзакция уменьшает баланс Assets:Checking на $500 (дебет) и увеличивает баланс Assets:Savings на $500 (кредит).

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

Генерация отчетов и анализ данных

Beancount поставляется с набором мощных инструментов для генерации финансовых отчетов, включая бухгалтерские балансы, отчеты о прибылях и убытках и многое другое. Вы также можете использовать Fava, веб-интерфейс для Beancount, для визуализации и взаимодействия с вашими финансовыми данными. https://beancount.io построен на основе Fava с лицензией MIT.

Заключение

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

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

Теперь, когда у вас есть прочная основа в Beancount, пришло время отправиться в путешествие по учету в виде простого текста. Попрощайтесь с громоздкими электронными таблицами и запутанным программным обеспечением, и добро пожаловать в мир Beancount. Удачного учета!

Улучшение работы с Beancount с помощью пользовательских ссылок и запросов

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

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

В этом руководстве мы покажем вам, как:

  • Добавлять ссылки быстрого доступа на боковую панель Fava
  • Использовать SQL-запросы для расширенной фильтрации и анализа
  • Настраивать свой рабочий процесс для ежемесячных обзоров или обнаружения аномалий

Зачем настраивать Fava?

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

Проблемы, которые это решает:

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

✨ Пользовательские ссылки боковой панели

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

Добавьте эти строки в ваш файл Beancount:

2021-01-01 custom "fava-sidebar-link" "Current Month" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "Last Month" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "Clear All" "/jump?account=&time=&filter="

Что они делают:

  • Текущий месяц: Открывает представление транзакций, отфильтрованное по текущему месяцу.
  • Прошлый месяц: Мгновенно переходит к предыдущему месяцу — отлично подходит для обзоров в конце месяца.
  • Очистить все: Сбрасывает фильтры, снова показывая все записи.

Эти ярлыки устраняют ручной ввод времени и делают ваш опыт работы с Fava более плавным и персонализированным.

🔍 Пользовательские SQL-запросы

Для более глубокого анализа SQL-интерфейс Fava невероятно мощный. Вот запрос, который находит все отрицательные остатки на счетах, соответствующих шаблону — идеально подходит для отметки необычных или проблемных транзакций.

SELECT account, units(sum(position)), sum(position)
WHERE number(units(position)) < 0
AND account ~ '.*:BCM:.*'
AND date >= DATE(2021,12,9)
AND date < DATE(2022,1,9)

Разбор:

  • account ~ '.*:BCM:.*': Фильтрует счета, содержащие :BCM: в своем названии.
  • number(units(position)) < 0: Отмечает отрицательные остатки (например, перерасходованные бюджеты).
  • Фильтры по дате сужают результат до определенного 1-месячного окна.

Случаи использования:

  • Обнаружение ошибок, таких как дублирующиеся расходы или неверные проводки
  • Аудит конкретного поставщика или категории
  • Быстрое извлечение полезных данных для бюджетирования

🛠 Совет профессионала: Объединяйте ссылки + запросы

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

  • Используя ссылку «Текущий месяц», чтобы начать обзор
  • Открывая вкладку с сохраненными запросами в другой панели
  • Просматривая оба одновременно — сначала фильтруйте, затем углубляйтесь

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

Заключительные мысли

Beancount минималистичен по своей сути, но небольшие улучшения, подобные этим, приносят огромный прирост эффективности. Независимо от того, просматриваете ли вы свой бюджет, отлаживаете странные остатки или просто экономите клики, пользовательские ссылки и SQL-запросы дают вам больше возможностей и меньше затруднений.

Бонус: Если вы используете пользовательские отчеты Fava, вы даже можете создавать полноценные панели, адаптированные к вашим ритуалам личных финансов.

Готовы взять под контроль?

Начните с малого: добавьте ссылку «Текущий месяц». Затем создайте свои собственные запросы. Ваше будущее «я» скажет вам спасибо.

Хотите больше таких советов? Подпишитесь на нашу рассылку или изучите другие рецепты Beancount на Beancount.io.

Прогнозирование будущих транзакций в Beancount

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

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

; import the plugin
plugin "fava.plugins.forecast"

; добавить ежемесячную плату за ТСЖ
2022-05-30 # "Плата за ТСЖ [ЕЖЕМЕСЯЧНО]"
Expenses:Hoa 1024.00 USD
Assets:Checking -1024.00 USD

Скриншот плагина прогнозирования

2022-05-30-плагин-прогнозирования

И затем вы увидите прогноз в отчете о чистой прибыли.

Плагин прогнозирования

Тег [MONTHLY] выше означает, что транзакция будет повторяться бесконечно. Если у вас есть дополнительные условия для применения, попробуйте [ЕЖЕМЕСЯЧНО ДО 2022-06-01], [ЕЖЕМЕСЯЧНО ПОВТОРИТЬ 5 РАЗ], [ЕЖЕГОДНО ПОВТОРИТЬ 5 РАЗ], или [ЕЖЕНЕДЕЛЬНО ПРОПУСТИТЬ 1 РАЗ ПОВТОРИТЬ 5 РАЗ].

Создание и отслеживание счетов с помощью Beancount

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

Текстовый шаблон, повторяемый рабочий процесс и один запрос для ответа на вопрос «Кто мне еще должен?»


2022-02-12-crafting-tracking-invoices-with-beancount

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

Хотя специализированные SaaS-приложения могут отправлять красивые, автоматизированные PDF-файлы, они часто требуют ежемесячной платы и блокируют ваши данные в проприетарном хранилище. Легкий, текстовый подход с использованием Beancount предлагает мощную альтернативу. Вы можете превратить каждый счет в четкий набор бухгалтерских записей, получая все преимущества контроля версий, мощных метаданных и мгновенных запросов — без необходимости подписки.


Минимально жизнеспособный счет (поля, которые никогда нельзя пропускать)

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

  • Реквизиты продавца: Название вашей компании и физический адрес.
  • Реквизиты клиента: Имя вашего клиента и (в идеале) его адрес.
  • Номер счета: Уникальный, последовательный идентификатор, который никогда не используется повторно. INV-045 следует за INV-044.
  • Даты выставления и оплаты: Четко укажите, когда был выставлен счет и когда ожидается оплата.
  • Строки счета: Четкое описание услуг или продуктов, а также количество, ставка и итоговая сумма по строке.
  • Итого, налог и общая сумма: Покажите расчет, чтобы клиент мог легко его проследить.
  • Дополнительные примечания: Место для благодарности, инструкций по переводу или предоставленного клиентом номера заказа на покупку.

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

Note: Invoice templates are coming soon! In the meantime, you can create your own using the fields listed above in Google Docs, Word, Sheets, Excel, or any other document format.


Запись счета в бухгалтерской книге

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

1. При выставлении счета:

Вы создаете транзакцию, которая перемещает общую сумму с вашего счета Income (Доход) на счет Assets:AccountsReceivable (Активы:Дебиторская задолженность). Это создает цифровой долговой документ в вашей бухгалтерии.

; 2025‑07‑21 Счет № 045  Веб-дизайн спринт для Acme Corp.
2025-07-21 * "Acme Corp" "INV-045 Веб-дизайн спринт"
Assets:AccountsReceivable 3500.00 USD ; due:2025-08-04
Income:Design:Web
invoice_id: "INV-045"
contact_email: "[email protected]"
link: "docs/invoices/2025-07-21_Acme_INV-045.pdf"

Здесь вы дебетуете AccountsReceivable (Дебиторская задолженность) и кредитуете свой счет Income (Доход). Обратите внимание на богатые метаданные: срок оплаты, уникальный invoice_id и даже прямая link: (ссылка) на отправленный вами PDF-файл.

2. При оплате клиентом:

Когда деньги поступают на ваш банковский счет, вы записываете вторую транзакцию, чтобы "закрыть" долговой документ. Это перемещает баланс с AccountsReceivable (Дебиторская задолженность) на ваш расчетный счет.

2025-08-01 * "Acme Corp" "Оплата INV-045"
Assets:Bank:Checking 3500.00 USD
Assets:AccountsReceivable
invoice_id: "INV-045"

Баланс для INV-045 в Assets:AccountsReceivable (Дебиторская задолженность) теперь равен нулю, и ваша бухгалтерия идеально сбалансирована.

Прикрепите PDF: Ключ метаданных link: особенно полезен при использовании с Fava, веб-интерфейсом Beancount. Fava отобразит кликабельную ссылку прямо в представлении транзакции, поэтому исходный документ всегда находится на расстоянии одного клика. Этот рабочий процесс был задуман еще в 2016 году в запросе на функцию (GitHub).


Один запрос для вывода списка всех открытых счетов

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

Сохраните следующее как файл с именем open-invoices.sql:

SELECT
meta('invoice_id') AS id,
payee,
narration,
date,
number(balance) AS outstanding
WHERE
account = "Assets:AccountsReceivable"
AND balance != 0
ORDER BY
date;

Теперь запустите его из командной строки:

bean-query books.beancount open-invoices.sql

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


Автоматизируйте рутинную работу

Прелесть простого текста — это возможность написания скриптов. Вы можете автоматизировать утомительные части этого рабочего процесса.

  • Шаблон + Pandoc = PDF: Храните шаблон счета в Markdown. Небольшой скрипт на Python может заполнить переменные (имя клиента, строки счета, номер счета), а инструмент командной строки Pandoc может мгновенно преобразовать его в профессиональный PDF-файл.
  • Git Pre-commit Hook: Если вы храните свою бухгалтерскую книгу в Git, простой pre-commit hook может выполнять проверки перед сохранением вашей работы. Он может проверить, что каждый новый invoice_id уникален, что проводки по транзакции сбалансированы до нуля, и что файл, на который ссылается метаданные link:, действительно существует.
  • Cron Job: Настройте запланированное задание (cron job) для запуска запроса open-invoices.sql каждую ночь и отправки вам сводки по электронной почте. Вы будете начинать каждый день, точно зная, кому нужно отправить дружеское напоминание.

Реалистичное предостережение

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

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


Следующие шаги

Готовы взять под контроль выставление счетов? Вот как начать.

  1. Скачайте шаблон и используйте его для создания следующего реального счета, обязательно используя последовательный номер счета.
  2. Храните отправленные PDF-файлы в специальной папке, например docs/invoices/, и используйте ключ метаданных link: в своей транзакции Beancount для ссылки на них.
  3. Сохраните запрос open-invoices.sql и сделайте его запуск частью вашего еженедельного финансового обзора.

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