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

22 поста с тегом "Plain-Text Accounting"

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

Beancount.io v3.0: Ваши финансовые данные под вашим контролем

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

Большинство финансовых программ заставляют вас доверять им свои данные. Они владеют ими, контролируют их и удерживают вас. Мы считаем, что вы заслуживаете лучшего.

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

Этот выпуск посвящен трем основным целям, которые наиболее важны для людей, управляющих своими финансами с помощью plain-text accounting:

  1. Реальное владение данными благодаря встроенной Git-интеграции
  2. Беспрепятственное сотрудничество для команд, партнеров и бухгалтеров
  3. Интуитивно понятный интерфейс, который делает plain-text accounting доступным для всех

Обзор панели управления

Мощные финансовые отчеты у вас под рукой

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

Отчет о прибылях и убытках

Панель управления отчетом о прибылях и убытках

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

Бухгалтерский баланс

Панель управления бухгалтерским балансом

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

Оборотная ведомость

Панель управления оборотной ведомостью

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

Представление сведений об учетной записи

Панель управления сведениями об учетной записи

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

Современный файловый редактор

Панель управления файловым редактором

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

Git-интеграция: ваша бухгалтерская книга, ваш путь

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

Что вы можете делать:

# Клонируйте свою бухгалтерскую книгу на свой компьютер
git clone ssh://[email protected]:2222/you/ledger.git

# Редактируйте локально с помощью своих любимых инструментов
vim 2025.bean

# Отправьте изменения обратно
git commit -am "Added Q4 transactions"
git push

Почему это важно (суверенитет данных):

  • Реальный план выхода: вся ваша финансовая история находится в стандартном репозитории Git. Вы перестанете нам платить? Вы сохраните все.
  • Независимость от инструментов: редактируйте с помощью VS Code, Vim, Emacs или специализированных инструментов Beancount. Ваш выбор, а не наш.
  • Полный контрольный след: каждое изменение отслеживается с полной историей Git, показывая, кто, что и когда изменил. Идеально подходит для соответствия требованиям и спокойствия.
  • Распределенное резервное копирование: распределенная природа Git означает, что у вас есть автоматическое резервное копирование с контролем версий на вашем компьютере.

Это делает Beancount.io единственной платформой, которая делает ваши данные более портативными, а не менее.

Совместная работа в команде: создано для того, как команды работают на самом деле

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

Сотрудничайте со своей командой

Новая система совместной работы делает это естественным и доступным:

  • Приглашайте сотрудников: просто пригласите других по электронной почте присоединиться к вашей бухгалтерской книге в качестве сотрудников
  • Обновления в режиме реального времени: просматривайте изменения, внесенные сотрудниками в режиме реального времени, чтобы все были в курсе
  • История действий: отслеживайте, кто и какие изменения внес и когда, поддерживая полную подотчетность

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

Поддержка нескольких бухгалтерских книг: организуйте свои финансы так, как вам нужно

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

Преимущества поддержки нескольких бухгалтерских книг:

  • Разделение обязанностей: храните личные и деловые финансы полностью отдельно
  • Организация на основе проектов: создавайте выделенные бухгалтерские книги для разных проектов или клиентов
  • Гибкая структура: организуйте свою систему бухгалтерского учета таким образом, чтобы она имела смысл для вашей уникальной ситуации
  • Легкое переключение: легко перемещайтесь между бухгалтерскими книгами с помощью интуитивно понятного переключателя бухгалтерских книг

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

Общедоступные бухгалтерские книги: делитесь и учитесь у сообщества

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

Как работают общедоступные бухгалтерские книги:

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

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

Расширенные функции сообщества Fava & Beancount

Мы интегрировали популярные функции из сообщества Beancount, которые решают реальные проблемы рабочего процесса:

  • Амортизация расходов (amortize_over): автоматически распределяйте годовые подписки или предоплаченные расходы по месяцам
  • Финансовое прогнозирование (forecast): прогнозируйте будущий денежный поток на основе повторяющихся транзакций
  • Привязка документов (link_documents): храните квитанции и счета, связанные с транзакциями
  • Автоматическое обнаружение документов (tag_discovered_documents): автоматически помечайте и систематизируйте сопроводительные документы

Это не экспериментальные функции — это проверенные в боях инструменты из сообщества Beancount, которые теперь легко интегрированы.

Более высокая производительность, более удобный опыт

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

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

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

Конфиденциальность и безопасность: ваши данные, ваши правила

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

Что дальше?

Новая версия — это только начало нашего пути к тому, чтобы сделать Beancount.io лучшей доступной платформой plain-text accounting, нацеленной на GitHub of Finance. Традиционное финансовое программное обеспечение полагается на "Data Lock-in". Beancount.io строит другой вид защиты: Protocol Lock-in. Мы уже работаем над:

  • Улучшения мобильного приложения для бухгалтерского учета в дороге
  • Дополнительная интеграция с популярными финансовыми сервисами
  • Более продвинутые функции отчетности и аналитики
  • Улучшенные инструменты для совместной работы в командах

Мы будем рады услышать ваши отзывы о новой версии! Ваши отзывы помогают нам расставить приоритеты в том, что строить дальше.

Удачного бухгалтерского учета!

Команда Beancount.io

Детокс финансов вашего малого бизнеса — способ Beancount

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

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


2025-09-04-detox-your-small-business-finances

Коротко

  • Разделите, упростите и заблокируйте свои книги с помощью простого плана счетов, последовательного импорта и автоматизированных проверок баланса.
  • Покажите что важно—себестоимость, накладные расходы, денежный резерв—через быстрые отчеты bean-query.
  • Уберите шум (неиспользуемые подписки, дублирующие инструменты) и кодифицируйте хорошие привычки (еженедельная сверка, ежемесячное закрытие, прикрепленные чеки).
  • Сделайте налоговый сезон скучным храня выписки, чеки и балансы проверяемыми в одном месте.

Зачем "Детокс"?

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

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


Неделя 0 — Установите свою базовую линию

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

Создайте простой план счетов

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

Вот простая, эффективная отправная точка:

; Основные сущности
2025-01-01 open Assets:Bank:Checking USD
2025-01-01 open Assets:Bank:Savings USD
2025-01-01 open Liabilities:CreditCard:Business USD
2025-01-01 open Income:Sales
2025-01-01 open Expenses:COGS
2025-01-01 open Expenses:Overhead:Rent
2025-01-01 open Expenses:Overhead:Utilities
2025-01-01 open Expenses:SaaS
2025-01-01 open Equity:Opening-Balances

Заблокируйте балансы, которые вы можете проверить

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

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

; Инициализировать из выписок
2025-01-01 pad Assets:Bank:Checking Equity:Opening-Balances
2025-01-01 balance Assets:Bank:Checking 12345.67 USD

Слово предостережения: Используйте pad экономно. Это для чистого начала, а не для маскировки повторяющихся ошибок сверки.


Неделя 1 — Разделите и упростите потоки

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

Держите Бизнес ≠ Личное

Это золотое правило финансов малого бизнеса. Смешивание средств это рецепт для путаницы и налоговых головных болей.

  • Ведите один выделенный бизнес банковский счет и одну бизнес кредитную карту.
  • Отражайте это разделение в вашей главной книге: Assets:Bank:Business:Checking, Liabilities:CreditCard:Business.
  • Если вы платите себе, проводите это как распределение в Equity:Owner-Draws. Никогда не категоризируйте личные расходы напрямую с бизнес счетов.

Стандартизируйте категории поставщиков

Платите за AWS, Google Cloud и Vercel? Не создавайте три отдельных счета. Сопоставьте их все с одной логической категорией как Expenses:Cloud. Избегайте создания микро-счетов, которые вы на самом деле не будете анализировать. Цель увидеть паттерны, а не отследить каждого отдельного поставщика с его собственным счетом.


Неделя 2 — Автоматизируйте входы и чеки

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

Постройте путь импорта без драмы

Фреймворк импорта Beancount позволяет вам научить его как читать CSV или OFX файлы от вашего банка и автоматически генерировать транзакции. Инвестируйте время на настройку этого один раз, и вы сэкономите сотни часов в долгосрочной перспективе. Держите ваши правила импорта под контролем версий (как Git), чтобы ваша система была повторяемой и архивированной.

  • Начните с официального руководства Beancount Importing External Data.
  • Для более интерактивного рабочего процесса рассмотрите инструмент как beancount-import, который предоставляет веб-интерфейс для полуавтоматического сопоставления.
  • Многие пользователи полагаются на встроенные ingest или более новые beangulp фреймворки для построения своих пользовательских импортеров. Выберите один и придерживайтесь его для последовательности.

Прикрепляйте документы туда, где они принадлежат

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

У вас есть два отличных варианта:

  1. Папка документов + Директива: Храните все ваши чеки и выписки в выделенной папке. Затем свяжите файл с транзакцией, используя директиву document.
  2. Перетаскивание в Fava: Просто перетащите PDF или файл изображения на транзакцию в интерфейсе Fava. Fava автоматически сохраняет файл и вставляет правильную директиву document в ваш файл главной книги.
; В вашем основном файле главной книги скажите Fava где живут ваши документы
option "documents" "/home/acme/docs"

; Свяжите чек с конкретной проводкой транзакции
2025-08-07 * "Figma" "Monthly Subscription"
Assets:CreditCard:Business -12.00 USD
Expenses:SaaS 12.00 USD
document: "receipts/figma-2025-08-07.pdf"

Неделя 3 — Увидьте истину (Быстрые запросы, которые вы будете переиспользовать)

Ваша главная книга теперь чистая и наполненная данными. Пришло время задать ей важные вопросы. Запустите инструмент командной строки bean-query для мгновенных ответов.

1) Где мои деньги?

Получите быстрый снимок ваших ликвидных активов.

bean-query business.beancount 'BALANCES FROM year = 2025 AND (account ~ "Assets:Bank" OR account ~ "Liabilities:CreditCard")'

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

2) На что я трачу на накладные расходы против себестоимости?

Поймите куда действительно идут ваши деньги. Тратите ли вы больше на несущественные накладные расходы или на затраты, напрямую связанные с доставкой вашего продукта (Себестоимость проданных товаров)?

SELECT
account,
units(sum(position))
WHERE
account ~ "^Expenses:(Overhead|COGS)" AND year = 2025
GROUP BY
account
ORDER BY
account

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

3) Какие подписки выглядят "зомби"?

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

SELECT
payee,
COUNT(*) AS num_transactions,
SUM(number) AS total_spent
WHERE
account ~ "^Expenses:SaaS" AND date >= '2025-01-01'
GROUP BY
payee
ORDER BY
num_transactions DESC,
total_spent DESC

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


Неделя 4 — Приберите и заблокируйте систему

Финальная неделя о построении привычек и ограждений, которые держат ваши финансы чистыми навсегда.

Поставьте простые бюджеты на место

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

; Ограничьте расходы на SaaS до $100 в месяц
2025-01-01 custom "budget" Expenses:SaaS "monthly" 100.00 USD

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

Закрывайте месяц, каждый раз

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

  1. Сверяйте: Для каждого банка и счета кредитной карты добавьте утверждение balance, соответствующее финальному числу в вашей месячной выписке.
  2. Прикрепляйте: Прикрепите саму PDF выписку к записи balance, используя директиву document.
  3. Отчитывайтесь: Запустите ваши три сохраненных запроса (наличность, накладные расходы/себестоимость, подписки) и вставьте выходы в краткую заметку месячного обзора.

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


Сделайте налоговый сезон скучным (хорошим способом)

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

  • Чеки прикреплены к транзакциям, так что нет бешеного поиска. В Fava вы на один клик от исходного документа для любого расхода.
  • Налогово-релевантные элементы могут быть помечены (напр., #tax-deductible), позволяя вам получить чистый отчет с bean-query для вашего бухгалтера.
  • Годовые балансы заблокированы и верифицированы с утверждениями balance, давая вам и вашему подготовителю уверенность в числах.

30-дневный чек-лист (Распечатайте это)

  • День 1–3
    • Создайте минимальный план счетов.
    • Добавьте pad + balance для каждого банка/карты, используя последние выписки.
  • День 4–10
    • Настройте один импорт пайплайн и закоммитьте ваши правила в контроль версий.
    • Заполните 90 дней транзакций; запустите первый снимок BALANCES.
  • День 11–15
    • Стандартизируйте поставщиков к их соответствующим счетам (SaaS, Cloud, Доставка и т.д.).
    • Прикрепите PDF выписки для сверенных периодов; подтвердите, что они появляются в Fava.
  • День 16–20
    • Запустите запрос накладные расходы против себестоимости; исправьте любые неправильно категоризированные элементы.
    • Запустите запрос частоты подписок; отмените или объедините неиспользуемые сервисы.
  • День 21–25
    • Добавьте один или два бюджетных лимита для ключевых переменных расходов через custom "budget".
    • Сохраните ваши три самые важные команды bean-query в скрипт для легкого переиспользования.
  • День 26–30
    • Сверьте все счета с утверждениями balance конца месяца.
    • Напишите краткую заметку "месячного закрытия", резюмирующую ключевые числа и ссылающуюся на документы.

Общие фрагменты, которые вы будете переиспользовать

Чистая проводка расхода

2025-08-05 * "Figma" "Pro plan"
Expenses:SaaS 12.00 USD
Assets:Bank:Checking -12.00 USD

Утверждение баланса из выписки

2025-09-01 balance Assets:Bank:Checking  8423.17 USD

Бюджетное ограждение для аренды

2025-01-01 custom "budget" Expenses:Overhead:Rent "monthly" 2500.00 USD

Держите это простым, держите это скриптованным

Философия финансового детокса на основе Beancount проста:

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

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


Ссылки и дополнительное чтение

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

10 практических шагов к быстрому и надёжному закрытию месяца в Beancount

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

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

Вот чек‑лист для безболезненного закрытия:

2025-09-02-month-end-close

  1. Соберите выписки и импортируйте все необработанные транзакции.
  2. Нормализуйте получателей, описания и метаданные.
  3. Сверьте каждый наличный, банковский и кредитный счёт с помощью balance‑утверждений.
  4. Согласуйте переводы и перемещения между счетами.
  5. Обновите цены для инвестиций и проверьте их оценку.
  6. Присоедините или укажите документы (чеки, счета) в вашем реестре.
  7. Запустите запросы и дашборды для P&L и проверок отклонений.
  8. При необходимости проведите начисления и корректировки.
  9. Проверьте реестр с помощью автоматических проверок.
  10. Зафиксируйте, пометьте тегом и архивируйте месяц.

1. Установите базовые правила (и переиспользуйте их)

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

Совет: Рассматривайте файл параметров как «инфраструктуру». Его изменение может изменить способ расчёта цифр. Версионируйте его аккуратно в Git.


2. Импортируйте всё — и больше никогда не вводите данные вручную

Автоматизация импорта данных — это главный ускоритель закрытия книг. Используйте мощные инструменты импорта Beancount и импортёры, созданные сообществом, для загрузки банковских выписок, CSV/OFX‑файлов кредитных карт, брокерских данных и отчётов по зарплате.

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


3. Нормализуйте получателей и метаданные заранее

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

Плагин‑система Beancount позволяет добавить лёгкие трансформации и проверки при загрузке файлов. Это идеально для внедрения пользовательских проверок согласованности или использования встроенного плагина noduplicates для пометки повторяющихся транзакций до того, как они станут проблемой.


4. Сверяйте с помощью утверждений balance

Для каждого счёта, имеющего выписку (текущий, сберегательный, кредитные карты), используйте директиву balance Beancount, чтобы зафиксировать конечный баланс. Эта простая строка превращает сверку из ручного «взгляда в глаза» в точный автоматический тест.

; Утверждает, что баланс ровно 1234.56 в начале дня
2025-09-01 balance Assets:Bank:Checking 1234.56 USD

Поскольку балансы проверяются в начале дня, удобнее использовать первый день следующего месяца для выписки закрытия. Если рассчитанный Beancount баланс не совпадает с вашим утверждением, вы получите точную ошибку и дату для начала расследования. Сначала исправляйте источник правды (транзакции), а не «принуждайте» сверку.


5. Согласуйте межсчётные переводы

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

Директиву pad используйте только для установки исторических начальных балансов при первом создании счёта. Это инструмент настройки, а не «костыль» для исправления различий в конце месяца.


6. Проверьте позиции и цены инвестиций

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

2025-08-31 price VTI  290.14 USD
2025-08-31 price EUR 1.11 USD

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


7. Присоединяйте чеки и исходные документы

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

option "documents" "/path/to/Finance/Documents"

Если вы именуете файлы по дате (например, 2025-08-13.vendor.receipt.pdf), Beancount и Fava смогут автоматически находить и связывать их, позволяя открыть чек одним щелчком по любой транзакции.


8. Просмотрите месяц в Fava и BQL

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

Для более точных проверок применяйте Beancount Query Language (BQL). Этот запрос, к примеру, выдаёт ранжированный список всех расходов за август 2025 года:

SELECT
account,
ROUND(SUM(position), 2) AS total
WHERE
date >= 2025-08-01 AND date < 2025-09-01
AND account 'Expenses'
GROUP BY
account
ORDER BY
total DESC;

9. Проведите начисления и корректировки

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


10. Проверьте, пометьте тегом и архивируйте

Перед финализацией месяца выполните окончательную проверку целостности структуры:

bean-check your-ledger.beancount

Эта команда найдёт дисбалансы, ссылки на неоткрытые счета и другие типичные ошибки. Исправьте всё, что она выявит.

Когда всё в порядке, зафиксируйте изменения в системе контроля версий (например, Git) с чётким сообщением и тегом, например close-2025-08. Затем архивируйте банковские выписки и считайте месяц закрытым.


Простой скрипт закрытия, который вы можете адаптировать

Большую часть этих шагов можно автоматизировать простым shell‑скриптом. Это превращает закрытие в одну повторяемую команду.

#!/usr/bin/env bash
set -euo pipefail

# Пример: ./close.sh 2025-08
MONTH=${1:?Please provide a month in YYYY-MM format}
LEDGER= /finance/ledger.beancount

# 1. Импорт новых транзакций
echo "Importing transactions for $MONTH..."
make import MONTH="$MONTH"

# 2. Обновление рыночных цен на последний день месяца
PRICE_DATE=$(date -d "$MONTH-01 +1 month -1 day" +%F)
echo "Fetching prices for $PRICE_DATE..."
make prices DATE="$PRICE_DATE"

# 3. Проверка всего реестра
echo "Running bean-check..."
bean-check "$LEDGER"

# 4. Генерация ключевого отчёта (например, разбивка расходов)
echo "Generating expense report for $MONTH..."
bean-query "$LEDGER" -f txt "
SELECT account, SUM(position)
WHERE date >= '${MONTH}-01' AND date < '${MONTH}-01' + 1 month
AND account 'Expenses'
GROUP BY account ORDER BY SUM(position) DESC;
" > "reports/${MONTH}-expenses.txt"

# 5. Фиксация и тегирование закрытия в Git
echo "Committing and tagging the close..."
git -C /finance add .
git -C /finance commit -m "Close ${MONTH}"
git -C /finance tag "close-${MONTH}"

echo "Month ${MONTH} is closed and tagged."

Почему это работает

Процесс быстрый и надёжный, потому что построен на нескольких ключевых принципах:

  • Утверждения, а не визуальный осмотр: Директива balance превращает сверку в точную автоматическую проверку.
  • Детерминированные входы: Автоматические импортёры и нормализованные метаданные делают реестр воспроизводимым и согласованным.
  • Исследуемые данные: Fava и BQL предоставляют мощные инструменты для валидации результатов и мгновенного анализа отклонений.
  • Аудируемые изменения: Корректировки — это записи в простом тексте, их легко просмотреть и понять даже через годы.

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

Начисленные расходы в Beancount: Практическое руководство (с примерами записей, готовыми к копированию)

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

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

TL;DR ⚡

  • Начисленные расходы — это затраты, понесённые в текущем периоде, но ещё не оплаченные. Они фиксируются как обязательство до момента выхода наличных.
  • В Beancount это просто: дебетируется счёт Expenses: и кредитируется счёт Liabilities:Accrued:. Позже обязательство снимается при оплате.
  • Для отчёта можно увидеть, что вы должны на конкретную дату, запустив bean-query с параметрами CLOSE ON и CLEAR для получения чистого снимка баланса.

2025-08-24-accrued-expenses-in-beancount-a-practical-guide

Что такое начисленный расход?

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

Типичные примеры:

  • Заработная плата, начисленная сотрудникам к концу месяца, но выплачиваемая в следующем.
  • Коммунальные услуги (электричество, вода), использованные в декабре, но выставленные в счёт только в январе.
  • Процент по кредиту, накопившийся за месяц, но ещё не списанный со счёта.

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

Как Beancount воспринимает это (за 30 секунд)

Beancount — это система двойной записи в виде простого текста. Всё представлено датированными директивами или транзакциями в файле. Система построена на пяти базовых типах счетов: Assets, Liabilities, Equity, Income и Expenses.

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

Наконец, язык bean-query предоставляет мощный, похожий на SQL, способ генерации отчётов. Операторы OPEN ON, CLOSE ON и CLEAR позволяют создавать точные «по состоянию на» представления финансовой отчётности.

План счетов (рекомендация)

Чистая иерархическая структура плана счетов — ваш лучший помощник. Для начисленных расходов структура проста. Вам понадобится:

  • Счёт расходов: например, Expenses:Utilities, Expenses:Payroll:Wages
  • Соответствующий счёт обязательств: например, Liabilities:Accrued:Utilities, Liabilities:Accrued:Payroll
  • Счёт наличных: например, Assets:Bank:Checking

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

Основной шаблон (без плагинов, без магии)

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

Шаг 1: Начислить расход в конце месяца

В последний день периода фиксируем расход и создаём обязательство.

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Шаг 2: Снять начисление при оплате

Когда приходит счёт и вы его оплачиваете, повторно не трогаете счёт расходов. Вместо этого дебетируете счёт обязательств, чтобы очистить его.

2025-03-05 * "Pay Feb electricity - City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking

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

Альтернатива: Обратная запись в первый день следующего месяца

Если вам ближе классический стиль «авто‑отмены», можно разместить противоположную запись к начислению в первый день следующего месяца, а затем обычным способом записать реальный счёт поставщика.

Шаг 1: Начислить в конце месяца (как выше)

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Шаг 2: Отменить в первый день следующего месяца

2025-03-01 * "Reverse Feb electricity accrual" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities

Шаг 3: Записать оплату как обычно

2025-03-05 * "City Power - February bill"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking

Внимание к проверкам: Помните, что проверки balance оцениваются до транзакций того же дня. Если хотите проверить баланс Liabilities:Accrued:Utilities, разместите проверку на 2025-02-28 для подтверждения начисления или на 2025-03-01 после отмены, чтобы убедиться, что он равен нулю. Размещение её до отмены 1‑го марта вызовет ложный сбой.

Шесть типовых начислений (шаблоны для копирования) 📋

Ниже — готовые примеры для распространённых бизнес‑начислений.

1. Аренда, ещё не выставленная в счёт

2025-01-31 * "Accrue January rent" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent

2. Заработная плата, начисленная, но не выплаченная

2025-03-31 * "Accrue March wages" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll

3. Оплата отпуска (PTO), начисленная

2025-03-31 * "Accrue PTO earned in March" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll

4. Процент по кредиту, начисленный

2025-02-29 * "Accrue monthly loan interest" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest

5. Профессиональные услуги (аудит/юридические)

2025-12-31 * "Accrue year-end audit fees" #accrual
Expenses:Professional:Audit 4200.00 USD
Liabilities:Accrued:Professional

6. Коммунальные услуги, использованные, но не выставленные в счёт

2025-04-30 * "Accrue April utilities" #accrual
Expenses:Utilities 95.00 USD
Liabilities:Accrued:Utilities

Отчётность: «Что я должен на определённую дату?»

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

Получить все балансы начисленных обязательств на конец периода

Этот запрос выдаёт баланс каждого счёта начисленных обязательств на 31 марта 2025 г.

bean-query main.beancount '
SELECT account, UNITS(SUM(position)) AS balance
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued"
GROUP BY 1
ORDER BY 1;
'
  • OPEN ON задаёт начальные остатки в начале периода.
  • CLOSE ON отсекает транзакции до указанной даты (исключительно). Поэтому используем 2025-04-01, чтобы включить данные до 2025-03-31.
  • CLEAR обнуляет доходы и расходы, давая чистый вид баланса (Активы, Обязательства, Капитал).

Просмотр реестра всех записей начислений

Если нужен список всех транзакций по начисленным счетам:

bean-query main.beancount '
SELECT date, payee, narration, position
WHERE account "^Liabilities:Accrued"
ORDER BY date;
'

Получить суммарный итог по всем начислениям

Для быстрого резюме общей суммы задолженности:

bean-query main.beancount '
SELECT UNITS(SUM(position)) AS total_accruals
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued";
'

Управление и «подводные камни» в Beancount

  • Время проверок баланса: Как уже упоминалось, проверки выполняются в начале дня. Запись 2025-03-01 balance ... срабатывает до любых транзакций 1‑го марта. Планируйте соответственно.
  • Именование и иерархия: Чистое дерево вида Liabilities:Accrued:* — не только для красоты. Оно упрощает запросы и делает отчёты сразу понятными.
  • Pad с осторожностью: Директива pad может исправлять начальные остатки, но не используйте её для «исправления» регулярных начислений. Явные записи обеспечивают прозрачный аудит‑трейл.
  • Отчёты «по состоянию на»: Для снимков баланса всегда предпочтительно OPEN … CLOSE … CLEAR в bean-query. Это исключает влияние доходов и расходов на итоговые обязательства.

Предоплата vs. Начисление (быстрый контраст)

Легко перепутать. Это зеркальные ситуации:

  • Начисленный расход: Услуга получена сейчас, деньги выплачиваются позже → образуется обязательство.
  • Предоплаченный расход: Деньги выплачены сейчас, услуга получена позже → образуется актив.

Логика учёта в Beancount одинаковая; меняются лишь счета (Assets:Prepaid:* vs. Liabilities:Accrued:*).

Шаблон для вставки в начало файла

Ниже — директивы open, необходимые для примеров в этой статье. Добавьте их в начало вашего файла‑регистра.

; --- Accounts (open once) ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Expenses:Utilities
2025-01-01 open Expenses:Payroll:Wages
2025-01-01 open Expenses:Interest
2025-01-01 open Expenses:Professional:Audit
2025-01-01 open Liabilities:Accrued:Utilities
2025-01-01 open Liabilities:Accrued:Payroll
2025-01-01 open Liabilities:Accrued:Interest
2025-01-01 open Liabilities:Accrued:Professional

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

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

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

Выбор S-Corp: объяснение для пользователей Beancount

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

Что это такое, когда это выгодно и как правильно моделировать это в вашем журнале (с примерами).

⚠️ Это руководство предназначено только для пользователей из США и носит исключительно образовательный характер. Проконсультируйтесь с налоговым специалистом по вашей конкретной ситуации.

TL;DR (кратко)

  • S-corp - это налоговый статус, который вы выбираете в IRS (через форму 2553), чтобы прибыль бизнеса переходила в личные налоговые декларации владельцев. Ключевое требование заключается в том, что вы должны выплачивать владельцам-операторам разумную зарплату по форме W-2 до получения какой-либо прибыли в виде дивидендов или распределений.
  • Сроки имеют значение: для существующего бизнеса вы должны подать заявку не позднее 15-го дня 3-го месяца налогового года, с которого вы хотите начать использовать статус S-corp. Для выбора календарного 2025 года 15 марта 2025 года приходится на субботу, поэтому фактический срок - следующий рабочий день, понедельник, 17 марта 2025 года.
  • Зачем это делать? Основная привлекательность - потенциальная экономия на налоге на самозанятость. В то время как ваша зарплата по форме W-2 облагается налогами FICA, распределения - нет. Однако это преимущество связано с дополнительными расходами на заработную плату, соблюдение требований и, в некоторых штатах, дополнительными налогами на уровне организации.
  • В Beancount крайне важно отделять заработную плату от распределений. Вам нужно будет отслеживать обязательства по заработной плате, учитывать особенности учета медицинского страхования для акционеров, владеющих более 2% компании, и явно регистрировать распределения через счета капитала.

2025-08-08-s-corp-election

Что такое выбор S-corp?

По сути, выбор S-corp - это запрос, который вы подаете в IRS, чтобы изменить способ налогообложения вашего бизнеса. Подавая форму 2553, вы просите IRS облагать вашу корпорацию или LLC налогом в соответствии с подглавой S Налогового кодекса. Это делает ваш бизнес «сквозным» субъектом, что означает, что его доход, убытки, вычеты и кредиты передаются непосредственно в личные налоговые декларации акционеров. Это исключительно налоговая классификация, а не другой тип юридического лица.

Ключевые последствия для владельца-оператора

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

Это различие имеет решающее значение. Компенсация, которую вы получаете за свой труд, должна выплачиваться в виде заработной платы по форме W-2, которая облагается стандартными налогами на заработную плату (социальное обеспечение и медицинское обслуживание). Любая оставшаяся прибыль может быть выплачена в виде распределений, которые, как правило, не облагаются налогами на самозанятость. IRS настаивает на том, чтобы вы платили себе разумную зарплату за свою работу, прежде чем получать какие-либо распределения.

Стоит ли вам выбирать статус S-corp?

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

Точная точка безубыточности уникальна для вашей ситуации и зависит от нескольких факторов:

  • Ваша «разумная зарплата»: сколько бы бизнес заплатил за кого-то с вашими навыками и обязанностями в вашей отрасли? Эта цифра является основой для вашей заработной платы по форме W-2 и подлежит проверке IRS.
  • Налоги и сборы штата: в некоторых штатах действуют свои правила. Например, Калифорния взимает 1,5% налог на чистую прибыль S-corp, плюс минимальный ежегодный франчайзинговый налог в размере 800 долларов.
  • Дополнительные расходы: вам понадобится служба расчета заработной платы, и вы будете платить за страхование от безработицы. Ваши сборы за бухгалтерский учет и подготовку налоговой отчетности также, вероятно, увеличатся из-за возросшей сложности.
  • Вычет QBI (раздел 199A): выбор S-corp может повлиять на ваш вычет квалифицированного бизнес-дохода. Заработная плата по форме W-2, которую вы себе выплачиваете, может либо помочь вам получить право на полный вычет, либо, при более высоких уровнях дохода, стать ограничивающим фактором.

Право на участие и сроки

Не каждый бизнес может стать S-corp. Вот основные требования:

  • Это должна быть отечественная корпорация или LLC, имеющая право на участие.
  • У нее может быть не более 100 акционеров.
  • У нее может быть только один класс акций.
  • Акционерами должны быть физические лица, определенные трасты или наследственные фонды (т. е. не партнерства, корпорации или акционеры-нерезиденты).

Когда подавать форму 2553

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

  • Для нового бизнеса: вы должны подать заявку в течение 2 месяцев и 15 дней после первого дня вашего первого налогового года. Например, если налоговый год вашего бизнеса начинается 7 января, срок подачи заявки - 21 марта.
  • Для существующей C-corp (или LLC, облагаемой налогом как C-corp): вы можете подать заявку в любое время в течение предыдущего налогового года или до 15-го дня 3-го месяца года, в котором вы хотите, чтобы выбор вступил в силу. Если эта дата приходится на выходные или праздничные дни, срок переносится на следующий рабочий день, что предусмотрено разделом 7503 IRC.

Что делать, если вы пропустили срок? Не паникуйте. IRS предоставляет возможность для подачи заявки с опозданием в соответствии с документом о доходах 2013-30. Вы часто можете подать заявку на это в течение 3 лет и 75 дней с предполагаемой даты вступления в силу, при условии, что у вас есть уважительная причина для поздней подачи.

Разумная зарплата: то, что сбивает людей с толку

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

Что означает «разумный»? Нет единой суммы в долларах. IRS и суды рассматривают различные факторы, чтобы определить, является ли ваша зарплата соответствующей, включая ваши обязанности, время, которое вы тратите на работу, ваш уровень опыта и то, что сопоставимые предприятия заплатили бы за аналогичные услуги. Ожидайте, что IRS внимательно изучит, если вы платите себе очень низкую зарплату по форме W-2, получая при этом большие распределения. Это часто рассматривается как тревожный сигнал для попытки уклониться от уплаты налогов на заработную плату.

Медицинское страхование и дополнительные льготы для акционеров, владеющих >2% акций

Существует специальное правило относительно того, как S-corp обрабатывает медицинское страхование для акционеров, владеющих более 2% компании. Если S-corp оплачивает или возмещает эти страховые взносы на медицинское страхование, стоимость вычитается S-corp.

Однако стоимость этих премий также должна быть включена в заработную плату акционера-сотрудника по форме W-2. Хотя эта сумма подлежит удержанию федерального подоходного налога, она освобождена от налогов на социальное обеспечение и медицинское обслуживание (FICA), если она обработана правильно. Вы должны координировать свои действия с вашим поставщиком услуг по расчету заработной платы, чтобы гарантировать, что эти суммы правильно указаны в вашей форме W-2.

Подводные камни на уровне штата (примеры)

Федеральный статус S-corp не всегда напрямую переводится на уровень штата. Всегда проверяйте конкретные правила вашего штата.

  • Калифорния: S-corp облагаются налогом в размере 1,5% от их чистого дохода из источников в Калифорнии. Кроме того, большинство корпораций должны ежегодно платить минимальный франчайзинговый налог в размере 800 долларов США (хотя в первый год действуют некоторые исключения).
  • Нью-Йорк: недостаточно сделать федеральный выбор S-corp. Вы также должны подать отдельное заявление на уровне штата, форму CT-6, чтобы рассматриваться как S-корпорация Нью-Йорка. Невыполнение этого требования означает, что вы будете облагаться налогом как стандартная C-corp на уровне штата.

Как правильно моделировать S-corp в Beancount

Простой текстовый учет идеально подходит для управления возросшей сложностью S-corp. Вот как структурировать ваш журнал.

Рекомендуемый план счетов (начальный)

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

; Основной банк и доход
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Income:Sales USD
1970-01-01 open Income:Other USD

; Расходы на заработную плату и обязательства
1970-01-01 open Expenses:Payroll:Wages USD
1970-01-01 open Expenses:Payroll:EmployerTaxes USD
1970-01-01 open Expenses:Benefits:HealthInsurance USD
1970-01-01 open Liabilities:Payroll:Federal:FIT USD
1970-01-01 open Liabilities:Payroll:FICA USD
1970-01-01 open Liabilities:Payroll:Medicare USD
1970-01-01 open Liabilities:Payroll:State:Withholding USD

; Капитал
1970-01-01 open Equity:ContributedCapital USD
1970-01-01 open Equity:Distributions USD
1970-01-01 open Equity:RetainedEarnings USD

Типичный расчет заработной платы (упрощенный)

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

; Эта транзакция регистрирует годовую зарплату в размере 100 тысяч долларов, выплачиваемую ежемесячно.
2025-01-31 * "Gusto" "Январская заработная плата — акционер-сотрудник"
Expenses:Payroll:Wages 8,333.33 USD ; Валовая заработная плата
Expenses:Payroll:EmployerTaxes 637.50 USD ; Налоги FICA/Medicare работодателя
Liabilities:Payroll:Federal:FIT -1,200.00 USD ; Удержание с сотрудника
Liabilities:Payroll:FICA -516.67 USD ; Удержание с сотрудника
Liabilities:Payroll:Medicare -120.83 USD ; Удержание с сотрудника
Assets:Bank:Checking -7,133.33 USD ; Чистая зарплата, списанная с банковского счета

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

; Это представляет собой налоговый платеж, произведенный вашим поставщиком услуг по расчету заработной платы.
2025-02-15 * "EFTPS" "Федеральный депозит по налогу на заработную плату"
Liabilities:Payroll:Federal:FIT 1,200.00 USD
Liabilities:Payroll:FICA 516.67 USD
Liabilities:Payroll:Medicare 120.83 USD
Assets:Bank:Checking -1,837.50 USD ; Эта сумма соответствует налоговой части списания Gusto.

Медицинское страхование для акционера >2%

Запишите оплату премии как бизнес-расход. Вы можете использовать метаданные, чтобы напомнить себе, что это должно быть указано в форме W-2.

2025-02-01 * "BlueCross" "Медицинское страхование акционера (указать в W-2)"
Expenses:Benefits:HealthInsurance 600.00 USD ; w2: "true"
Assets:Bank:Checking -600.00 USD

Распределения владельцу (не заработная плата)

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

2025-03-31 * "Распределение владельцу" "Распределение за 1 квартал"
Equity:Distributions 20,000.00 USD
Assets:Bank:Checking -20,000.00 USD

Отслеживание базы акционеров (необязательно, но рекомендуется)

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

Замечание о вычете QBI (раздел 199A)

Владельцы сквозных предприятий, включая S-corp, могут иметь право на вычет до 20% от своего квалифицированного бизнес-дохода (QBI). Однако для налогоплательщиков с доходом выше определенного порога этот вычет может быть ограничен суммой заработной платы по форме W-2, которую выплачивает предприятие. Это создает сложное взаимодействие: выплата разумной зарплаты требуется для S-corp, и эта же зарплата может повлиять на ваш вычет QBI - иногда помогая ему, иногда ограничивая его. Это ключевая область для моделирования с вашим налоговым консультантом.

Что меняется в операционной деятельности после вашего выбора?

Переход на S-corp добавляет несколько административных уровней:

  • Ведение заработной платы: вы должны официально вести заработную плату, включая удержание налогов, выплату налогов работодателя, ежеквартальную отчетность и годовые формы W-2.
  • Подача формы 1120-S: это ежегодная налоговая декларация S-корпорации. Вы также выдадите Приложение K-1 каждому акционеру с подробным описанием его доли в финансовых результатах компании.
  • Правильное обращение с медицинским страхованием акционеров: убедитесь, что премии для владельцев >2% включены в их заработную плату по форме W-2.
  • Соблюдение правил штата: будьте в курсе любых требуемых выборов S-corp на уровне штата или налогов на уровне организации (как в Калифорнии и Нью-Йорке).

Распространенные ловушки, которых следует избегать

  • Поздний или недействительный выбор: дважды проверьте сроки и убедитесь, что все необходимые акционеры подписали форму 2553. Если вы пропустили срок, изучите возможность смягчения последствий в соответствии с Rev. Proc. 2013-30.
  • Неразумная зарплата: не поддавайтесь искушению платить себе искусственно низкую зарплату. Документируйте, почему ваша компенсация является разумной, исходя из вашей роли и рыночных данных.
  • Смешивание заработной платы и распределений: держите эти транзакции чистыми и раздельными в ваших книгах. Распределения - это не заработная плата.
  • Игнорирование требований штата: забывание о выборе штата или невыплата налога на уровне организации может привести к штрафам и проблемам с соблюдением требований.

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

  • Подтвердите, что вы имеете право на участие и что потенциальная налоговая экономия перевешивает новые расходы.
  • Отметьте в календаре срок подачи формы 2553 (и помните о правиле выходных/праздничных дней).
  • Настройте службу расчета заработной платы и определите хорошо документированную, разумную зарплату.
  • Планируйте получать распределения только после выплаты зарплаты и бизнес-расходов.
  • Изучите и соблюдайте конкретные требования вашего штата к подаче заявлений S-corp и налогам.
  • Обновите свой журнал Beancount необходимыми счетами для заработной платы, обязательств и капитала акционеров.

Beancount S-Corp Starter (нейтральный шаблон)

;
; Beancount S-Corp Starter (нейтральный шаблон)
; Создано: 2025-08-09
; ---
; Как использовать это:
; 1) Найдите "TODO" и заполните свой штат(ы), поставщика услуг по расчету заработной платы, EIN и названия банков.
; 2) Держите заработную плату и распределения владельцу отдельно.
; 3) Скоординируйтесь с вашим поставщиком услуг по расчету заработной платы, чтобы сообщить о медицинском страховании акционера >2% в форме W-2 (поле 1).
; 4) Удалите или адаптируйте примеры CA/NY, если вы находитесь в другом штате.
;
; Примечания:
; - Это шаблон бухгалтерского учета, а не налоговая консультация.
; - Предполагается, что операционная валюта - USD. Измените по мере необходимости.
;

option "title" "Журнал S-Corp"
option "operating_currency" "USD"
commodity USD

; === Счета (открыты с 2025-01-01; скорректируйте даты по мере необходимости) ==================
2025-01-01 open Assets:Bank:Checking USD ; TODO: Переименуйте в свой банк (например, Assets:Bank:Chase:Operating)
2025-01-01 open Assets:Bank:Savings USD
2025-01-01 open Assets:AccountsReceivable USD
2025-01-01 open Assets:PrepaidExpenses USD

2025-01-01 open Liabilities:CreditCard:Corporate USD
2025-01-01 open Liabilities:Payroll:Federal:FIT USD
2025-01-01 open Liabilities:Payroll:Federal:FICA USD
2025-01-01 open Liabilities:Payroll:Federal:Medicare USD
2025-01-01 open Liabilities:Payroll:Federal:FUTA USD
2025-01-01 open Liabilities:Payroll:State:Withholding USD ; TODO: Переименуйте штат (например, CA, NY)
2025-01-01 open Liabilities:Payroll:State:Unemployment USD
2025-01-01 open Liabilities:Payroll:Local USD

2025-01-01 open Equity:ContributedCapital USD
2025-01-01 open Equity:Distributions USD
2025-01-01 open Equity:RetainedEarnings USD
2025-01-01 open Equity:OpeningBalances USD

2025-01-01 open Income:Sales USD
2025-01-01 open Income:Other USD

2025-01-01 open Expenses:COGS USD
2025-01-01 open Expenses:Payroll:Wages USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:FICA USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:Medicare USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:FUTA USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:State USD
2025-01-01 open Expenses:Benefits:HealthInsurance USD
2025-01-01 open Expenses:Benefits:HSA USD
2025-01-01 open Expenses:Benefits:Retirement:Match USD
2025-01-01 open Expenses:Taxes:State:S-Corp USD ; например, 1,5% налог на уровне организации в CA
2025-01-01 open Expenses:Taxes:State:Franchise USD ; например, минимальный франчайзинговый налог в CA $800
2025-01-01 open Expenses:Professional:Payroll USD
2025-01-01 open Expenses:Professional:Accounting USD
2025-01-01 open Expenses:Professional:Legal USD
2025-01-01 open Expenses:BankFees USD
2025-01-01 open Expenses:Software USD
2025-01-01 open Expenses:Office USD
2025-01-01 open Expenses:Meals USD
2025-01-01 open Expenses:Travel USD
2025-01-01 open Expenses:Insurance:GeneralLiability USD

; === Пример: Капитализация владельца =================================================
2025-01-02 * "Владелец" "Первоначальный взнос капитала"
Assets:Bank:Checking 25,000.00 USD
Equity:ContributedCapital -25,000.00 USD

; === Пример: Платеж клиента =====================================================
2025-01-15 * "Stripe" "Январские поступления по подписке"
Assets:Bank:Checking 12,000.00 USD
Income:Sales -12,000.00 USD

; === Пример: Ежемесячная заработная плата (один акционер-сотрудник) ========================
; Цифры выбраны для идеального баланса. Адаптируйте цифры FIT/State к вашей реальности.
; Валовая заработная плата: 8,333.33 | FIT сотрудника: 1,200.00 | Удержание штата: 300.00
; FICA сотрудника (6.2%): 516.67 | Medicare сотрудника (1.45%): 120.83
; FICA работодателя: 516.67 | Medicare работодателя: 120.83
; Чистая зарплата: 6,195.83
2025-01-31 * "Gusto" "Январская заработная плата — акционер-сотрудник"
Expenses:Payroll:Wages 8,333.33 USD
Expenses:Payroll:EmployerTaxes:FICA 516.67 USD
Expenses:Payroll:EmployerTaxes:Medicare 120.83 USD
Liabilities:Payroll:Federal:FIT -1,200.00 USD
Liabilities:Payroll:Federal:FICA -1,033.34 USD ; сотрудник + работодатель
Liabilities:Payroll:Federal:Medicare -241.66 USD ; сотрудник + работодатель
Liabilities:Payroll:State:Withholding -300.00 USD
Assets:Bank:Checking -6,195.83 USD

; === Пример: Депозиты по налогу на заработную плату (EFTPS и штат) =================================
2025-02-15 * "EFTPS" "Федеральный депозит по заработной плате (FIT, FICA, Medicare)"
Liabilities:Payroll:Federal:FIT 1,200.00 USD
Liabilities:Payroll:Federal:FICA 1,033.34 USD
Liabilities:Payroll:Federal:Medicare 241.66 USD
Assets:Bank:Checking -2,475.00 USD

2025-02-16 * "STATE DOR" "Удержание заработной платы штата"
Liabilities:Payroll:State:Withholding 300.00 USD
Assets:Bank:Checking -300.00 USD

; === Пример: Медицинское страхование для акционера >2% =================================
; Скоординируйтесь с расчетом заработной платы, чтобы общая годовая премия была включена в поле 1 формы W-2.
; Сама премия вычитается здесь; НЕ удерживайте SS/Medicare с нее, если она обработана правильно.
2025-02-01 * "BlueCross" "Медицинское страхование акционера (включение в W-2 обрабатывается расчетом заработной платы)"
Expenses:Benefits:HealthInsurance 600.00 USD ; w2: "true"
Assets:Bank:Checking -600.00 USD

; === Пример: Распределение владельцу (не заработная плата) =======================================
2025-03-31 * "Распределение владельцу" "Распределение за 1 квартал"
Equity:Distributions 20,000.00 USD
Assets:Bank:Checking -20,000.00 USD

; === Примеры штатов (удалите/измените, если не применимо) =================================
; Минимальный франчайзинговый налог Калифорнии (не всегда в первый год; проверьте правила)
2025-04-15 * "California FTB" "Ежегодный франчайзинговый налог"
Expenses:Taxes:State:Franchise 800.00 USD
Assets:Bank:Checking -800.00 USD

; 1,5% налог на S-Corp в Калифорнии (пример оценочного платежа)
2025-06-15 * "California FTB" "Оценочный налог S-Corp"
Expenses:Taxes:State:S-Corp 1,500.00 USD
Assets:Bank:Checking -1,500.00 USD

; Отдельный выбор S в Нью-Йорке (CT-6) не имеет прямого влияния на журнал; замещающее примечание.
2025-01-05 note Equity:RetainedEarnings "Выбор S в NY (CT-6) подан — только бухгалтерская запись (без проводки)"

; === Отслеживание базы (необязательно — заметка вне книги) =====================================
2025-12-31 note Equity:RetainedEarnings "Перенос базы: +Капитал 25 000 +Доход 60 000 -Распределения 20 000 = Конечная база 65 000 (сверка с K-1)"

; === Подсказки по импорту (CSV из Gusto/ADP) =============================================
; - Для CSV-файлов реестра заработной платы Gusto сопоставьте столбцы:
; Валовая зарплата -> Expenses:Payroll:Wages
; FIT/FICA/Medicare сотрудника -> Liabilities:Payroll:Federal:FIT/FICA/Medicare (отрицательное)
; Удержание штата -> Liabilities:Payroll:State:Withholding (отрицательное)
; FICA/Medicare/FUTA/SUTA работодателя -> Expenses:Payroll:EmployerTaxes:* (положительное) И
; если ваш CSV-файл перечисляет налоги работодателя как суммы к уплате, отразите их как Liabilities:* (отрицательное),
; затем очистите их с помощью ваших платежей EFTPS/штата.
; Чистая зарплата -> Assets:Bank:Checking (отрицательное, соответствует дате выплаты)
; - Медицинское страхование, оплачиваемое компанией:
; Платеж поставщику -> Expenses:Benefits:HealthInsurance (положительное) / Bank (отрицательное);
; убедитесь, что расчет заработной платы включает годовую премию в поле 1 формы W-2 для акционера >2%.
;
; Советы:
; - Держите распределения вне счетов заработной платы.
; - Используйте теги, такие как #payroll #distribution, для фильтрации в Fava.
; - Рассмотрите возможность использования отдельных банковских субсчетов для резервирования налогов (федеральных/штатных).

Опыт взаимодействия и отзывы о простом текстовом учете с использованием больших языковых моделей

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

Простой текстовый учет (ПТУ) долгое время был секретным оружием технически подкованных финансовых энтузиастов. Используя простые текстовые файлы и инструменты, такие как Beancount или Ledger, вы получаете беспрецедентный контроль, прозрачность и владение своими финансовыми данными. Но будем честны — он всегда имел репутацию довольно сложного в использовании. Кривая обучения крутая, ввод данных утомителен, а одна misplaced запятая может отправить вас в мучительный поиск ошибок.

Но что, если бы вы могли получить всю мощь ПТУ без его недостатков? На помощь приходят большие языковые модели (БЯМ). ИИ начинает проникать во все уголки рабочего процесса ПТУ, обещая автоматизировать рутинные задачи и сделать эту мощную систему доступной каждому. Основываясь на глубоком анализе отзывов пользователей, давайте рассмотрим, как ИИ революционизирует простой текстовый учет и оправдывает ли он ожидания.


Старый способ: ручная обработка ПТУ

В течение многих лет опыт ПТУ определялся несколькими общими препятствиями:

  • Барьер сложности: новички часто чувствуют себя потерянными. Как признался один пользователь: "Меня годами пугала сложность... но казалось, что это полезно и в конечном итоге окупится." Между изучением двойной бухгалтерии и освоением инструментов командной строки начало работы оказывается трудным.
  • Цикл «редактирование-компиляция-отладка»: В отличие от программ с графическим интерфейсом, которые сразу же сообщают об ошибке, ошибки в ПТУ часто скрыты до тех пор, пока вы не запустите проверку. Этот медленный цикл обратной связи похож на отладку кода, превращая простой ввод данных в рутину.
  • Кошмар импорта: Получение данных в систему является серьезным узким местом. Часто это включает ручную загрузку CSV-файлов из нескольких банков, их очистку и запуск пользовательских скриптов — хрупкий и трудоемкий процесс. Один пользователь потратил "около 4 часов, чтобы импортировать данные за последние ~8 месяцев", даже с некоторой автоматизацией.

Встречайте помощника на базе ИИ: как БЯМ сокращают нагрузку

Именно здесь ИИ меняет правила игры, выступая в качестве мощного помощника для выполнения самых утомительных частей ПТУ.

Автоматизация рутинной работы: категоризация и импорт

Это наиболее очевидная область применения ИИ. Вместо того, чтобы писать сложные правила, чтобы понять, что такое "STARBUCKS #12345", вы можете просто спросить БЯМ.

Пользователи сообщают об успешном использовании моделей, таких как GPT-4, для получения идеальных категоризаций, например Expenses:Food:Coffee, на основе описаний транзакций. Такие инструменты, как Beanborg, даже интегрируют ChatGPT, чтобы интеллектуально предлагать категории, когда собственные правила терпят неудачу.

Более того, БЯМ становятся инструментами импорта данных «на лету». Вместо написания скрипта на Python для анализа запутанного CSV-файла банка теперь можно вставить данные в окно чата и попросить ИИ преобразовать их в формат Beancount. Это не всегда идеально на 100%, но превращает часы кодирования в несколько минут работы с подсказками.

Упрощение ПТУ: адаптация и обработка ошибок

Тот самый начальный барьер сложности? БЯМ помогают пользователям преодолеть его. Один новый пользователь описал использование GPT-4 как "репетитора, держащего за руку", который помог ему настроить свой первый файл учета. ИИ объяснил концепции, сгенерировал примеры записей и помог ему обрести уверенность, чтобы действовать самостоятельно.

ИИ также обеспечивает обратную связь в режиме реального времени, которой всегда не хватало ПТУ. Разработчики создают расширения для редакторов, которые используют БЯМ для проверки синтаксиса во время ввода, выделяя дисбаланс или ошибки знакомой красной волнистой линией. Представьте себе ИИ, который не только отмечает ошибку, но и объясняет, почему она возникла, и предлагает исправление.

Общение с вашими финансами

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

Пользователи экспериментируют с экспортом своих данных и использованием таких инструментов, как Claude, чтобы задавать вопросы типа: "Сколько я потратил на продукты в марте по сравнению с апрелем?" ИИ может анализировать данные, выявлять тенденции и даже предлагать идеи. В деловом мире такие компании, как Puzzle.io, предлагают ботов для Slack, которые позволяют руководителям запрашивать финансовые данные компании в режиме реального времени. Такой естественно-языковый интерфейс коренным образом меняет доступ к финансовым данным.


Подводные камни: пока не спешите отключать свой мозг

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

  • Конфиденциальность превыше всего: ваша финансовая история невероятно конфиденциальна. Как выразился один пользователь: "Я беспокоюсь, что передаю свою финансовую историю какому-то API." Отправка данных стороннему облачному сервису, такому как OpenAI, неприемлема для многих. Решение? Растет число пользователей, запускающих БЯМ с открытым исходным кодом локально на своих собственных машинах, гарантируя, что их данные никогда не покинут их контроль.

  • Доверяй, но проверяй: БЯМ могут быть уверенно неправы. Иногда они «галлюцинируют» названия счетов или допускают небольшие математические ошибки, которые нарушают баланс записи. Мнение сообщества однозначно: используйте ИИ в качестве помощника, а не автономного бухгалтера. Всегда проводите окончательную проверку своего учета (bean-check) и оставляйте за человеком право окончательного утверждения.


Будущее за дополнением, а не заменой

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

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

Как метко выразился один пользователь: "Пусть роботы занимаются рутинной бухгалтерией, чтобы люди могли сосредоточиться на понимании и принятии решений." С таким сбалансированным подходом когда-то сложный мир простого текстового учета выглядит светлее, чем когда-либо.

Технические преимущества Beancount по сравнению с Ledger, hledger и GnuCash

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

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

Опираясь на подробный сравнительный отчет, давайте проанализируем технические особенности Beancount по сравнению с его популярными аналогами с открытым исходным кодом: Ledger-CLI, hledger и GnuCash.

2025-07-22-beancounts-technical-edge-a-deep-dive-on-performance-python-api-and-data-integrity-vs-ledger-hledger-and-gnucash


Скорость и производительность: количественные тесты 🚀

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

  • Beancount: Практическое использование показывает, что он может загружать и обрабатывать журналы с сотнями тысяч транзакций примерно за 2 секунды. Использование памяти скромное; парсинг ~100 тыс. транзакций преобразует исходный текст в объекты в памяти, используя всего десятки мегабайт ОЗУ.
  • Стресс-тест на 1 млн транзакций: Тест с использованием синтетического журнала из 1 миллиона транзакций, 1000 счетов и 1 миллиона ценовых записей выявил существенные архитектурные различия:
    • hledger (Haskell): Успешно завершил полный парсинг и отчет за ~80,2 секунды, обрабатывая ~12 465 транзакций/сек, используя ~2,58 ГБ ОЗУ.
    • Ledger-CLI (C++): Процесс был завершен через 40 минут без завершения, вероятно, из-за известной регрессии, вызывающей чрезмерное использование памяти и процессора с очень сложными журналами.
    • Beancount: Хотя он не был включен в этот конкретный тест на 1 млн, его кривая производительности предполагает, что он справится с задачей эффективно. Более того, ожидается, что грядущий Beancount v3 с новым ядром на C++ и Python API обеспечит еще один порядок повышения пропускной способности.
  • GnuCash (C/Scheme): Поскольку GUI-приложение загружает весь свой набор данных в память, производительность заметно снижается с увеличением размера. Файл XML размером ~50 МБ (представляющий более 100 тыс. транзакций) открывался 77 секунд. Переход на серверную часть SQLite лишь незначительно улучшил это до ~55 секунд.

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


Архитектура данных: простой текст против непрозрачных баз данных 📄

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

  • Компактный и эффективный: Файл Beancount со 100 000 транзакций занимает всего ~8,8 МБ. Это компактнее, чем эквивалентный файл Ledger (~10 МБ), отчасти потому, что синтаксис Beancount позволяет выводить окончательную балансовую сумму в транзакции, уменьшая избыточность.
  • Структурно обеспеченный: Beancount требует явных директив YYYY-MM-DD\ open\ Account. Этот дисциплинированный подход предотвращает опечатки в названиях счетов, которые молча создают новые, неверные счета — распространенная ошибка в таких системах, как Ledger и hledger, которые создают счета на лету. Эта структура делает данные более надежными для программного манипулирования.
  • Готовность к контролю версий: Журнал в виде простого текста идеально подходит для контроля версий с помощью Git. Вы получаете полную, проверяемую историю каждого финансового изменения, которое вы делаете.
  • Сравнение с GnuCash: GnuCash по умолчанию использует сжатый с помощью gzip файл XML, где данные многословны и заключены в теги с GUID для каждой сущности. Хотя он предлагает серверные части SQLite, MySQL и PostgreSQL, это абстрагирует данные от простого, прямого управления текстом и управления версиями. Редактирование необработанного XML возможно, но гораздо более громоздко, чем редактирование файла Beancount.

Вывод: Формат данных Beancount — это не просто текст; это четко определенный язык, который максимизирует ясность, обеспечивает правильность и легко интегрируется с инструментами разработчика, такими как git и grep.


Убойная функция: настоящий Python API и архитектура плагинов 🐍

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

  • Прямой программный доступ: Вы можете читать, запрашивать и манипулировать данными своего журнала непосредственно в Python. Вот почему разработчики мигрируют. Как отметил один пользователь, разочарование от попыток написания скриптов для плохо документированных внутренних связей Ledger исчезает с Beancount.
  • Конвейер плагинов: Загрузчик Beancount позволяет вставлять пользовательские функции Python непосредственно в конвейер обработки. Это позволяет выполнять произвольные преобразования и проверки потока данных по мере его загрузки — например, написать плагин, чтобы обеспечить, чтобы каждый расход от определенного поставщика имел определенный тег.
  • Мощная инфраструктура импорта: Выйдите за рамки неуклюжих мастеров импорта CSV. С Beancount вы пишете скрипты Python для анализа финансовой отчетности из любого источника (OFX, QFX, CSV). Такие инструменты сообщества, как smart_importer, даже используют модели машинного обучения для автоматического прогнозирования и назначения учетных записей проводок, превращая часы ручной категоризации в процесс, занимающий несколько секунд и выполняемый одной командой.
  • Как сравниваются другие:
    • Ledger/hledger: Расширяемость в основном внешняя. Вы передаете данные в/из исполняемого файла. Хотя они могут выводить JSON/CSV, вы не можете внедрить логику в их основной цикл обработки без изменения исходного кода C++/Haskell.
    • GnuCash: Расширяемость обрабатывается через крутую кривую обучения с Guile (Scheme) для пользовательских отчетов или через привязки Python (с использованием SWIG и таких библиотек, как PieCash), которые взаимодействуют с движком GnuCash. Это мощно, но менее прямо и "питонично", чем подход Beancount к родной библиотеке.

Вывод: Beancount разработан для программиста. Его библиотечно-ориентированный дизайн и глубокая интеграция с Python делают его наиболее гибкой и автоматизируемой системой из четырех.


Философия: строгий компилятор для ваших финансов 🤓

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

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

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

Для кого предназначен Beancount?

На основе этого технического анализа Beancount является оптимальным выбором для:

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

Если вам нужна чистая производительность C++ для стандартных отчетов, Ledger — это претендент. Для исключительной масштабируемости в парадигме функционального программирования hledger впечатляет. Для многофункционального графического интерфейса с минимальной настройкой GnuCash превосходит.

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

Полное руководство по учету криптовалют с Beancount.io

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

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

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

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

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

Полное руководство по бухгалтерскому учету криптовалют

Кошмар учета криптовалют (И почему ситуация ухудшается)

Ваш криптопортфель разбросан повсюду

Давайте будем честны о вашей ситуации. У вас, вероятно, есть:

  • 3-5 различных бирж (Coinbase для простых покупок, Binance для альткоинов, Kraken для того самого токена...)
  • Несколько кошельков (MetaMask для DeFi, Ledger для долгосрочного хранения, тот старый кошелек, о котором вы забыли...)
  • DeFi-позиции на 10+ протоколах (Uniswap, Compound, Aave и любая новая доходная ферма, привлекшая ваше внимание)
  • Награды за стейкинг, поступающие от различных валидаторов
  • Случайные аирдропы, появляющиеся в вашем кошельке, как крипто-рождественские подарки

Каждая платформа говорит на своем языке. Coinbase предоставляет вам CSV-файл, который совершенно не похож на экспорт Binance. Uniswap вообще не имеет экспортов. И даже не начинайте говорить об отслеживании ваших DeFi-позиций в сетях второго уровня.

Типы транзакций, которые бросают вызов традиционному учету

Ваша криптовалютная деятельность включает типы транзакций, которые традиционные системы учета изначально не были предназначены обрабатывать:

  • Непостоянная потеря от предоставления ликвидности (попробуйте объяснить это QuickBooks)
  • Флеш-займы, которые позволяют заимствовать и погашать миллионы за одну транзакцию
  • Фарминг доходности, где вы зарабатываете 5 различных токенов за предоставление ликвидности
  • Межсетевые мосты, которые заставляют активы исчезать в одной сети и появляться в другой
  • Деривативы стейкинга, такие как stETH, которые накапливают стоимость иначе, чем базовый актив
  • Токены управления DAO, которые вы получили за использование протоколов

Минное поле налогового соответствия

Вот что не дает спать криптоинвесторам по ночам:

  • Каждая отдельная сделка облагается налогом (да, даже тот обмен ETH на USDC)
  • Отслеживание себестоимости становится невозможным при сотнях микротранзакций
  • Вознаграждения за стейкинг являются доходом в момент их получения (по справедливой рыночной стоимости)
  • Вознаграждения DeFi являются доходом, даже если вы еще не можете их продать
  • IRS требует форму 8949 с перечислением каждой отдельной транзакции
  • Штрафы суровы за ошибки

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

Встречайте Beancount.io: Решение для учета криптовалют, которое вы ждали

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

Почему Beancount.io лидирует в криптоучете

🔍 Полная прозрачность: Каждый расчет виден. Никаких черных ящиков, никаких алгоритмов "доверьтесь нам". Вы точно видите, как рассчитывается ваша себестоимость, как вычисляется прибыль и куда ушел каждый сатоши.

📊 Неограниченная гибкость: Создавайте любую структуру счетов, которая вам нужна. Отслеживайте DeFi-позиции, деривативы стейкинга, кроссчейн-активы или тот странный токен, который вы получили по результатам голосования DAO. Если вы можете это представить, вы можете это отслеживать.

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

🔗 Перспективность: Формат обычного текста означает, что ваши данные навсегда останутся вашими. Никакой привязки к поставщику, никаких проприетарных форматов, никаких писем "извините, мы закрываемся".

⚡ Мощь скриптов: Автоматизируйте импорт, генерируйте пользовательские отчеты и интегрируйтесь с любым инструментом. Поскольку ваш криптопортфель уникален, ваш учет также должен быть таким.

Настройка Вашего Крипто Командного Центра

Построение архитектуры счетов

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

Примечание: В примерах 1970-01-01 используется как дата открытия счета-заполнитель. Для фактического использования замените ее на реальные даты открытия ваших счетов, особенно если вы используете инструменты автоматического импорта, которые фильтруют транзакции по дате.

; Exchange Accounts
1970-01-01 open Assets:Crypto:Coinbase:USD
1970-01-01 open Assets:Crypto:Coinbase:BTC
1970-01-01 open Assets:Crypto:Coinbase:ETH
1970-01-01 open Assets:Crypto:Binance:USD
1970-01-01 open Assets:Crypto:Binance:BTC
1970-01-01 open Assets:Crypto:Binance:ETH
1970-01-01 open Assets:Crypto:Binance:ADA

; Wallet Accounts
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
1970-01-01 open Assets:Crypto:Wallet:MetaMask:UNI
1970-01-01 open Assets:Crypto:Wallet:Ledger:BTC
1970-01-01 open Assets:Crypto:Wallet:Ledger:ETH

; DeFi Protocol Accounts
1970-01-01 open Assets:DeFi:Compound:cUSDC
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:Staking:Ethereum:ETH
1970-01-01 open Assets:Crypto:Mining:BTC

; Income Accounts
1970-01-01 open Income:Crypto:Staking:ETH
1970-01-01 open Income:Crypto:Mining:BTC
1970-01-01 open Income:Crypto:Airdrops
1970-01-01 open Income:Crypto:DeFi:Yield
1970-01-01 open Income:CapitalGains:Crypto
1970-01-01 open Income:Crypto:Trading:Margin

; Expense Accounts
1970-01-01 open Expenses:Crypto:Fees:Trading
1970-01-01 open Expenses:Crypto:Fees:Network
1970-01-01 open Expenses:Crypto:Fees:Withdrawal

; Additional accounts for advanced scenarios
1970-01-01 open Assets:Crypto:Binance:BTC-Margin
1970-01-01 open Liabilities:Crypto:Binance:Borrowed
1970-01-01 open Liabilities:Crypto:Binance:BTC
1970-01-01 open Assets:Checking
1970-01-01 open Expenses:Crypto:Mining:Electricity

Определения активов

Определите свои криптовалюты как активы с соответствующими метаданными:

1970-01-01 commodity BTC
name: "Bitcoin"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity ETH
name: "Ethereum"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity ADA
name: "Cardano"
asset-class: "cryptocurrency"
price-source: "binance"

1970-01-01 commodity USDC
name: "USD Coin"
asset-class: "stablecoin"
price-source: "coinbase"

1970-01-01 commodity UNI
name: "Uniswap"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity UNI-V2-ETH-USDC
name: "Uniswap V2 ETH-USDC LP Token"
asset-class: "liquidity-pool"

Освоение криптотранзакций: от простых к сложным

Готовы увидеть Beancount.io в действии? Давайте рассмотрим реальные сценарии, которые стали бы проблемой для других бухгалтерских систем, но элегантно обрабатываются здесь.

1. Ваша Первая Покупка Биткоина (Начало Пути)

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

2024-01-15 * "Buy 0.5 BTC on Coinbase"
Assets:Crypto:Coinbase:BTC 0.5 BTC {30000.00 USD}
Assets:Crypto:Coinbase:USD -15025.00 USD
Expenses:Crypto:Fees:Trading 25.00 USD

2. Фиксация прибыли (или сокращение убытков) как профессионал

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

2024-03-20 * "Sell 0.3 BTC on Coinbase"
Assets:Crypto:Coinbase:BTC -0.3 BTC {30000.00 USD}
Assets:Crypto:Coinbase:USD 10470.00 USD
Expenses:Crypto:Fees:Trading 30.00 USD
Income:CapitalGains:Crypto 1440.00 USD ; 10470 - (0.3 × 30000) - 30 = 1440

3. Вознаграждения за стейкинг: Зарабатывайте, пока спите

Пассивный доход в лучшем виде. Но помните, IRS требует декларировать вознаграждения за стейкинг как налогооблагаемый доход при получении, исходя из справедливой рыночной стоимости на момент получения (согласно руководству IRS по цифровым активам, 2024). Хотя идет судебное разбирательство (Джарретт против Соединенных Штатов), текущая официальная позиция требует незамедлительного декларирования. Вот как их правильно отслеживать:

2024-02-01 * "ETH Staking Rewards"
Assets:Staking:Ethereum:ETH 0.05 ETH {2500.00 USD}
Income:Crypto:Staking:ETH 125.00 USD

4. Фарминг доходности DeFi: Где становится интересно 🌶️

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

; Первоначальное предоставление ликвидности
2024-01-10 * "Add liquidity to ETH-USDC pool"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -25000 USDC {1.00 USD}
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V2-ETH-USDC {500.00 USD}

; Получение вознаграждений
2024-02-10 * "Claim Uniswap LP rewards"
Assets:Crypto:Wallet:MetaMask:UNI 50 UNI {8.00 USD}
Income:Crypto:DeFi:Yield 400.00 USD

5. Межбиржевые переводы

Перевод Биткойна из Coinbase в кошелек Ledger:

2024-01-20 * "Transfer BTC from Coinbase to Ledger"
Assets:Crypto:Coinbase:BTC -1.0 BTC {30000.00 USD}
Assets:Crypto:Wallet:Ledger:BTC 0.9995 BTC {30000.00 USD}
Expenses:Crypto:Fees:Withdrawal 0.0005 BTC {30000.00 USD}

Продвинутые сценарии криптовалют

Маржинальная торговля

Учет позиций с кредитным плечом:

; Открытие длинной позиции с кредитным плечом (заимствование BTC)
2024-02-15 * "Open 2x leveraged BTC position"
Assets:Crypto:Binance:BTC-Margin 1.0 BTC {35000.00 USD}
Liabilities:Crypto:Binance:BTC -1.0 BTC {35000.00 USD}
Expenses:Crypto:Fees:Trading 50.00 USD
Assets:Crypto:Binance:USD -50.00 USD

; Закрытие позиции с прибылью
2024-02-20 * "Close leveraged BTC position"
Assets:Crypto:Binance:BTC-Margin -1.0 BTC {35000.00 USD}
Assets:Crypto:Binance:USD 37950.00 USD
Liabilities:Crypto:Binance:BTC 1.0 BTC {35000.00 USD}
Income:Crypto:Trading:Margin -2900.00 USD
Expenses:Crypto:Fees:Trading 50.00 USD

Аирдропы и Форки

Учет бесплатных распределений токенов:

2024-03-01 * "Received UNI airdrop"
Assets:Crypto:Wallet:MetaMask:UNI 400 UNI {8.00 USD}
Income:Crypto:Airdrops 3200.00 USD

Майнинговые операции

Для майнеров криптовалют:

2024-01-01 * "Вознаграждение за майнинг биткойнов"
Assets:Crypto:Mining:BTC 0.1 BTC {45000.00 USD}
Income:Crypto:Mining:BTC 4500.00 USD

; Расходы на майнинг
2024-01-31 * "Затраты на электроэнергию для майнинга"
Expenses:Crypto:Mining:Electricity 800.00 USD
Assets:Checking -800.00 USD

Налоговая отчетность и соблюдение

Отслеживание Себестоимости

Beancount.io автоматически отслеживает себестоимость, используя систему учета по партиям:

; Несколько покупок по разным ценам
2024-01-01 * "Buy BTC batch 1"
Assets:Crypto:Coinbase:BTC 1.0 BTC {40000.00 USD}
Assets:Crypto:Coinbase:USD -40000.00 USD

2024-02-01 * "Buy BTC batch 2"
Assets:Crypto:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD

; Продажа конкретных партий (ФИФО, ЛИФО или по индивидуальной оценке)
2024-03-01 * "Sell BTC using FIFO"
Assets:Crypto:Coinbase:BTC -0.5 BTC {40000.00 USD}
Assets:Crypto:Coinbase:USD 22470.00 USD
Expenses:Crypto:Fees:Trading 30.00 USD
Income:CapitalGains:Crypto 2440.00 USD ; 22470 - 20000 - 30 = 2440

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

Используйте систему запросов и плагины Beancount для генерации налоговых отчетов:

  • Форма 8949: Доходы и убытки от операций с капиталом (через bean-query или сторонние плагины)
  • Приложение D: Сводка доходов от операций с капиталом (требует дополнительного скриптинга)
  • Форма 1040: Доход от стейкинга, майнинга, аирдропов (через пользовательские отчеты)
  • Подробные журналы транзакций: Для целей аудита

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

Лучшие практики для криптоучета

1. Регулярная Сверка

  • Еженедельно импортировать данные об обменах
  • Ежемесячно проверять балансы кошельков
  • Сверять с блокчейн-эксплорерами

2. Правильное Документирование

  • Сохраняйте все подтверждения транзакций
  • Документируйте цель каждой транзакции
  • Ведите учет рыночных цен на момент транзакции

3. Разделение деловых и личных финансов

; Личные криптоинвестиции
Активы:Личные:Крипто:Coinbase:BTC

; Деловые криптооперации
Активы:Деловые:Крипто:Казначейство:BTC

4. Отслеживайте все источники дохода

  • Вознаграждения за стейкинг (облагаются налогом как доход)
  • Вознаграждения за майнинг (облагаются налогом как доход)
  • Эйрдропы (облагаются налогом по справедливой рыночной стоимости)
  • Доходность DeFi (облагается налогом как доход)

5. Управление комиссиями

Учитывайте все комиссии отдельно для корректного налогового вычета:

Expenses:Crypto:Fees:Trading     ; Комиссии за торговые операции на бирже
Expenses:Crypto:Fees:Network ; Сетевые комиссии блокчейна
Expenses:Crypto:Fees:Withdrawal ; Комиссии за вывод средств

Интеграция с Популярными Криптоинструментами

Интеграция с API Бирж

Beancount.io может интегрироваться с крупными биржами:

  • Coinbase Pro API: Автоматический импорт транзакций
  • Binance API: Обновление балансов в реальном времени
  • Kraken API: Синхронизация исторических данных

Анализ Блокчейна

Подключитесь к блокчейн-эксплорерам:

  • Etherscan: верификация транзакций Ethereum
  • Blockchain.info: отслеживание транзакций Биткойн
  • BscScan: мониторинг Binance Smart Chain

Отслеживание портфеля

Синхронизация с инструментами управления портфелем:

  • CoinTracker: Генерация налоговых отчетов
  • Koinly: Агрегация данных с нескольких бирж
  • Blockfolio: Мобильное отслеживание портфеля

Важные Заявления об Отказе от Ответственности

Налоговое и Юридическое Уведомление: Данное руководство предоставляет общую информацию о бухгалтерском учете криптовалют с использованием Beancount и не является профессиональной налоговой, юридической или финансовой консультацией. Налоговый режим криптовалютных транзакций варьируется в зависимости от юрисдикции и индивидуальных обстоятельств. Сложные сценарии, такие как кросс-чейн мосты, непостоянные потери и флэш-кредиты, могут иметь неясные налоговые последствия в соответствии с действующими нормативными актами. Для получения конкретных рекомендаций относительно того, являются ли транзакции налогооблагаемыми операциями по отчуждению, обратитесь к IRS FAQ Q-15 – Q-18 (2024) или ознакомьтесь с местными налоговыми нормами. Всегда консультируйтесь с квалифицированным налоговым специалистом или дипломированным бухгалтером (CPA), знакомым с налогообложением криптовалют в вашей юрисдикции, прежде чем принимать решения, связанные с налогами.

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

Заключение

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

  • Поддерживать полную прозрачность: Каждая транзакция видна и подлежит аудиту
  • Обеспечить соблюдение налогового законодательства: Корректный учет себестоимости и отчетность по доходам
  • Масштабировать с вашим портфелем: Обрабатывать простые сделки до сложных DeFi-стратегий
  • Бесшовная интеграция: Подключаться к биржам, кошелькам и налоговым инструментам
  • Обеспечить долговечность ваших записей: Формат обычного текста обеспечивает долгосрочную доступность

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

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

Готовы взять под контроль свои криптовалютные финансы? Зарегистрируйтесь на Beancount.io и ощутите мощь прозрачного, скриптуемого крипто-учета, построенного на надежной основе Beancount.

Руководство по соблюдению налогового законодательства для криптовалют: Освоение требований IRS с Beancount.io

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

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

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

Руководство по соблюдению налогового законодательства в отношении криптовалют

Понимание налоговых требований к криптовалютам

Налоговый режим IRS для криптовалют

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

  • Каждая операция потенциально облагается налогом: Торговля, продажа, трата или обмен криптовалюты
  • Необходимо отслеживать себестоимость: Для каждой единицы принадлежащей криптовалюты
  • Срок владения определяет налоговую ставку: Краткосрочные против долгосрочных приростов капитала
  • Требуется признание дохода: Для майнинга, стейкинга, аирдропов и вознаграждений DeFi
  • Обязательны подробные записи: Пооперационная документация для аудита

Ключевые налоговые формы для криптовалюты

Form 1040 - Декларация о доходах физического лица

  • Строка 1: Укажите доход от криптовалют (стейкинг, майнинг, эйрдропы)
  • Schedule 1: Дополнительные источники дохода
  • Вопрос о цифровых активах: Необходимо ответить "Да", если у вас были криптовалютные транзакции

Форма 8949 - Продажи и прочие выбытия капитальных активов

  • Часть I: Краткосрочные приросты/убытки капитала (владение ≤ 1 года)
  • Часть II: Долгосрочные приросты/убытки капитала (владение > 1 года)
  • Детальная отчетность по операциям: Дата приобретения, дата продажи, выручка, базисная стоимость

Schedule D - Прирост и убытки капитала

  • Сводка формы 8949: Суммарные приросты/убытки капитала
  • Чистый прирост/убыток капитала: Окончательный расчет налогового обязательства

Настройка налогово-совместимого учета криптовалют

Структура счетов для налоговой отчетности

Спроектируйте иерархию счетов в соответствии с налоговыми требованиями:

; Активы - Организованы по сроку владения и источнику
1970-01-01 open Assets:Crypto:ShortTerm:Coinbase:BTC
1970-01-01 open Assets:Crypto:LongTerm:Coinbase:BTC
1970-01-01 open Assets:Crypto:Trading:Binance:ETH
1970-01-01 open Assets:Crypto:Investment:Ledger:BTC

; Доходы - Разделены по налоговому режиму
1970-01-01 open Income:Crypto:Staking:Ordinary ; Облагается как обычный доход
1970-01-01 open Income:Crypto:Mining:Ordinary ; Облагается как обычный доход
1970-01-01 open Income:Crypto:Airdrops:Ordinary ; Облагается как обычный доход
1970-01-01 open Income:CapitalGains:ShortTerm ; Краткосрочные доходы от прироста капитала
1970-01-01 open Income:CapitalGains:LongTerm ; Долгосрочные доходы от прироста капитала

; Расходы - Категории, подлежащие налоговому вычету
1970-01-01 open Expenses:Crypto:Fees:Deductible ; Торговые комиссии
1970-01-01 open Expenses:Crypto:Mining:Equipment ; Оборудование для майнинга
1970-01-01 open Expenses:Crypto:Mining:Electricity ; Электроэнергия для майнинга
1970-01-01 open Expenses:CapitalLoss:ShortTerm ; Краткосрочные убытки от прироста капитала
1970-01-01 open Expenses:CapitalLoss:LongTerm ; Долгосрочные убытки от прироста капитала

Метаданные для соблюдения налогового законодательства

Используйте метаданные для отслеживания налогово-значимой информации:

2024-01-15 * "Buy BTC for long-term investment" ^investment-btc #long-term
purchase-date: "2024-01-15"
intended-holding: "long-term"
tax-lot-id: "BTC-001"
Assets:Crypto:LongTerm:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD
Expenses:Crypto:Fees:Deductible 50.00 USD
Assets:Crypto:Coinbase:USD -50.00 USD

Учет налогооблагаемых криптовалютных событий

1. Продажи криптовалют

Краткосрочные приросты капитала (≤ 1 год)

2024-06-15 * "Продажа BTC - Краткосрочный прирост капитала" ^btc-sale-001
date-acquired: "2024-01-15"
holding-period: "151 days"
form-8949-code: "A"
Assets:Crypto:ShortTerm:Coinbase:BTC -0.5 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD 24000.00 USD
Expenses:Crypto:Fees:Deductible 30.00 USD
Assets:Crypto:Coinbase:USD -30.00 USD
Income:CapitalGains:ShortTerm 1470.00 USD ; 24000 - 22500 - 30

Долгосрочные приросты капитала (> 1 года)

2025-02-01 * "Продажа BTC - Долгосрочный прирост капитала" ^btc-sale-002
date-acquired: "2024-01-15"
holding-period: "382 days"
form-8949-code: "D"
Assets:Crypto:LongTerm:Coinbase:BTC -0.5 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD 28000.00 USD
Expenses:Crypto:Fees:Deductible 35.00 USD
Assets:Crypto:Coinbase:USD -35.00 USD
Income:CapitalGains:LongTerm 5465.00 USD ; 28000 - 22500 - 35

2. Обмен криптовалюты на криптовалюту

Каждый криптовалютный обмен облагается налогом:

2024-03-20 * "Обмен BTC на ETH - Налогооблагаемый обмен"
; Реализация BTC (налогооблагаемое событие)
Assets:Crypto:Trading:Binance:BTC -1.0 BTC {46000.00 USD}
Income:CapitalGains:ShortTerm 2000.00 USD ; 48000 - 46000

; Приобретение ETH (новая себестоимость)
Assets:Crypto:Trading:Binance:ETH 20 ETH {2400.00 USD}

; Торговые комиссии
Expenses:Crypto:Fees:Deductible 40.00 USD
Assets:Crypto:Trading:Binance:USD -40.00 USD

3. Награды за стейкинг (Обычный доход)

2024-01-31 * "Награды за стейкинг ETH - Январь"
reward-type: "staking"
fair-market-value: "2500.00 USD за ETH"
taxable-income: "200.00 USD"
Assets:Staking:Ethereum:ETH 0.08 ETH {2500.00 USD}
Income:Crypto:Staking:Ordinary 200.00 USD

4. Доход от майнинга

2024-01-15 * "Вознаграждение за майнинг биткойнов"
mining-pool: "Slush Pool"
block-height: "825000"
fair-market-value: "45000.00 USD за BTC"
Assets:Crypto:Mining:BTC 0.01 BTC {45000.00 USD}
Income:Crypto:Mining:Ordinary 450.00 USD

; Расходы на майнинг (подлежащие вычету)
Expenses:Crypto:Mining:Electricity 120.00 USD
Assets:Checking -120.00 USD

5. Аирдропы и Хардфорки

2024-03-01 * "Аирдроп токенов UNI"
источник-аирдропа: "Протокол Uniswap"
справедливая-рыночная-стоимость: "8.00 USD за UNI"
налогооблагаемая-сумма: "3200.00 USD"
Assets:Crypto:Wallet:MetaMask:UNI 400 UNI {8.00 USD}
Income:Crypto:Airdrops:Ordinary 3200.00 USD

6. DeFi-деятельность

Вознаграждения за фарминг доходности

2024-02-28 * "Доход от протокола Compound"
protocol: "Compound"
reward-token: "COMP"
fair-market-value: "85.00 USD за COMP"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:Crypto:DeFi:Ordinary 1020.00 USD

Комиссии пула ликвидности

2024-02-15 * "Получены комиссии LP Uniswap"
protocol: "Uniswap V3"
pool: "ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC
Income:Crypto:DeFi:Ordinary 820.00 USD

Стратегии налоговой оптимизации

1. Сбор налоговых убытков

Систематически фиксируйте убытки для компенсации прибыли:

; Определите убыточные позиции
2024-12-15 * "Сбор налоговых убытков - Продажа ADA с убытком"
purchase-date: "2024-06-01"
purchase-price: "0.60 USD per ADA"
sale-price: "0.45 USD per ADA"
Assets:Crypto:Trading:Binance:ADA -1000 ADA {0.60 USD}
Assets:Crypto:Trading:Binance:USD 445.00 USD
Expenses:Crypto:Fees:Deductible 5.00 USD
Assets:Crypto:Trading:Binance:USD -5.00 USD
Expenses:CapitalLoss:ShortTerm 150.00 USD ; Реализованный убыток

2. Особенности "отмывочных" продаж

Хотя правила "отмывочных" продаж официально не применяются к криптовалютам, избегайте потенциальных проблем:

; Подождите 31 день перед повторной покупкой
2025-01-16 * "Повторная покупка ADA после периода "отмывочной" продажи"
wash-sale-safe: "прошло 31+ дней"
Assets:Crypto:Trading:Binance:ADA 1000 ADA {0.45 USD}
Assets:Crypto:Trading:Binance:USD -450.00 USD
Expenses:Crypto:Fees:Deductible 5.00 USD
Assets:Crypto:Trading:Binance:USD -5.00 USD

3. Метод специфической идентификации

Выберите, какие лоты продать для оптимизации налогообложения:

; Лот с высокой базой затрат для фиксации убытков
2024-11-30 * "Продажа лота ETH с высокой себестоимостью для фиксации налогового убытка"
lot-selection: "specific-identification"
cost-basis: "3500.00 USD per ETH"
sale-price: "2400.00 USD per ETH"
Assets:Crypto:Trading:Coinbase:ETH -5 ETH {3500.00 USD}
Assets:Crypto:Trading:Coinbase:USD 11950.00 USD
Expenses:Crypto:Fees:Deductible 50.00 USD
Assets:Crypto:Trading:Coinbase:USD -50.00 USD
Expenses:CapitalLoss:ShortTerm 5500.00 USD ; Значительный убыток

4. Долгосрочное и краткосрочное планирование

Стратегически планируйте время продаж для выгодного налогового режима:

; Удерживать для долгосрочного владения
2024-12-20 * "BTC приближается к статусу долгосрочного владения"
purchase-date: "2024-01-01"
days-held: "354"
long-term-date: "2025-01-02"
note: "Удерживать еще 11 дней для долгосрочного владения"

Автоматизированная налоговая отчетность

Генерация Формы 8949

Используйте запросы Beancount.io для генерации данных Формы 8949:

-- Краткосрочный прирост/убытки капитала
SELECT
date,
narration,
-position as quantity_sold,
cost(position) as cost_basis,
value(position) as proceeds,
value(position) + cost(position) as gain_loss
WHERE account ~ "Income:CapitalGains:ShortTerm"
OR account ~ "Expenses:CapitalLoss:ShortTerm"
ORDER BY date;

Сводка по Приложению D

-- Сводка по приросту капитала
SELECT
'Short-term' as type,
sum(position) as total_gain_loss
WHERE account ~ "Income:CapitalGains:ShortTerm"
OR account ~ "Expenses:CapitalLoss:ShortTerm"

UNION ALL

SELECT
'Long-term' as type,
sum(position) as total_gain_loss
WHERE account ~ "Income:CapitalGains:LongTerm"
OR account ~ "Expenses:CapitalLoss:LongTerm";

Отчетность по обычному доходу

-- Обычный доход от криптовалют
SELECT
account,
sum(position) as total_income
WHERE account ~ "Income:Crypto.*:Ordinary"
GROUP BY account
ORDER BY total_income DESC;

Ведение учета и Документация

Необходимая Документация

Ведите исчерпывающие записи для каждой транзакции:

2024-01-15 * "BTC Purchase - Complete Documentation" ^btc-001
exchange: "Coinbase Pro"
transaction-id: "abc123def456"
confirmation-hash: "0x789..."
ip-address: "192.168.1.100"
timestamp: "2024-01-15T14:30:00Z"
market-price-source: "CoinGecko"
Assets:Crypto:LongTerm:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD

Ведение аудиторского следа

Создавайте подробные аудиторские следы:

; Связывание связанных транзакций
2024-01-15 * "BTC Purchase" ^btc-purchase-001
2024-01-20 * "BTC Transfer to Wallet" ^btc-purchase-001
2024-06-15 * "BTC Sale" ^btc-purchase-001

Верификация цен

Задокументируйте источники цен для справедливой рыночной стоимости:

2024-01-15 price BTC 45000.00 USD
source: "CoinGecko"
timestamp: "2024-01-15T14:30:00Z"
verification: "Multiple exchange average"

Распространенные ошибки при соблюдении налогового законодательства

1. Неучтенные Транзакции

  • Проблема: Неучет всех налогооблагаемых событий
  • Решение: Комплексный учет транзакций в Beancount.io

2. Неверный базис стоимости

  • Проблема: Использование неверного метода расчета базиса стоимости
  • Решение: Отслеживание по лотам с индивидуальной идентификацией

3. Неучтенный доход

  • Проблема: Неучет дохода от стейкинга, майнинга или аирдропов
  • Решение: Отдельные счета доходов для всех источников

4. Недостаточная Документация

  • Проблема: Недостаточные записи для защиты при аудите
  • Решение: Подробные метаданные и связывание транзакций

5. Вопросы сроков

  • Проблема: Некорректные расчеты периода владения
  • Решение: Автоматическое отслеживание дат и оповещения

Интеграция с налоговым программным обеспечением

Экспорт в популярные налоговые программы

Генерируйте отчеты, совместимые с крупными налоговыми программами:


# Экспорт в формат TurboTax
def export_turbotax_format():
return {
'form_8949_short_term': query_short_term_gains(),
'form_8949_long_term': query_long_term_gains(),
'schedule_1_income': query_ordinary_income(),
'deductible_expenses': query_deductible_expenses()
}

Профессиональная подготовка налоговой отчетности

Предоставляйте CPA исчерпывающие отчеты:

-- Полный налоговый пакет для CPA
SELECT
'Capital Gains Summary' as report_type,
account,
sum(position) as amount
WHERE account ~ "Income:CapitalGains"
OR account ~ "Expenses:CapitalLoss"
GROUP BY account

UNION ALL

SELECT
'Ordinary Income Summary' as report_type,
account,
sum(position) as amount
WHERE account ~ "Income:Crypto.*:Ordinary"
GROUP BY account;

Годовое налоговое планирование

Декабрьские Налоговые Стратегии

Примените оптимизацию налогов в конце года:

; Чек-лист налогового планирования на декабрь
2024-12-01 * "Обзор налогового планирования на конец года"
unrealized-gains: "Рассчитайте нереализованные позиции"
loss-harvesting: "Определите возможности для фиксации убытков"
income-timing: "Рассмотрите перенос дохода на следующий год"
expense-timing: "Ускорьте вычитаемые расходы"

Квартальные расчетные налоги

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

2024-01-15 * "Авансовый налоговый платеж за 1 квартал"
Expenses:Taxes:Estimated:Federal 5000.00 USD
Expenses:Taxes:Estimated:State 1200.00 USD
Assets:Checking -6200.00 USD

Заключение

Соблюдение налоговых требований по криптовалютам не должно быть обременительным. С помощью комплексной системы учета Beancount.io на основе простого текста вы сможете:

  • Обеспечьте полное соответствие: Соответствуйте всем требованиям IRS по отчетности
  • Оптимизируйте налоговые обязательства: Внедряйте сложные налоговые стратегии
  • Ведение записей, готовых к аудиту: Комплексная документация и аудиторские следы
  • Автоматизируйте отчетность: Автоматически генерируйте налоговые формы и отчеты
  • Масштабируйтесь с учетом сложности: Обрабатывайте простые сделки и сложные стратегии DeFi

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

  • Прозрачные расчеты: Точно видите, как рассчитываются налоговые показатели
  • Гибкая отчетность: Генерируйте отчеты любого необходимого формата
  • Профессиональная интеграция: Беспрепятственно работайте с сертифицированными бухгалтерами (CPA) и налоговым программным обеспечением
  • Долговечные записи: Формат простого текста обеспечивает долгосрочную доступность

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

Готовы освоить соблюдение налоговых требований по криптовалютам? Начните работу с Beancount.io и возьмите под контроль свои налоговые обязательства по криптовалютам.

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

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

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

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

Учет DeFi просто

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

Сложность DeFi-транзакций

DeFi-протоколы создают бухгалтерские сложности, которых нет в традиционных финансах:

  • Мультивалютные транзакции: Единичные операции с участием нескольких криптовалют
  • Автоматическое реинвестирование: Вознаграждения автоматически реинвестируются
  • Непостоянные потери: Изменения стоимости из-за расхождения цен в пулах ликвидности
  • Оптимизация комиссий за газ: Сложные структуры комиссий в разных сетях
  • Управление протоколом: Права голоса и распределение токенов управления
  • Межпротокольные взаимодействия: Транзакции, охватывающие несколько DeFi-платформ

Налоговые последствия деятельности в DeFi

Налоговая служба США (IRS) рассматривает деятельность в DeFi как налогооблагаемые события:

  • Предоставление ликвидности: Может повлечь за собой налогооблагаемые события при внесении активов
  • Вознаграждения за доходное фермерство (Yield Farming): Облагаются налогом как обычный доход по справедливой рыночной стоимости
  • Непостоянные потери (Impermanent Loss): Потенциальные налоговые последствия при выводе средств из пулов
  • Токены управления (Governance Tokens): Аирдропы и вознаграждения облагаются налогом как доход
  • Вознаграждения за стейкинг (Staking Rewards): Облагаются налогом как доход при получении

Настройка DeFi-счетов в Beancount.io

Комплексная Структура Счетов

Создайте подробную иерархию счетов, которая охватывает все операции DeFi:

; Счета Кошельков
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
1970-01-01 open Assets:Crypto:Wallet:MetaMask:DAI
1970-01-01 open Assets:Crypto:Wallet:MetaMask:WBTC

; Пулы Ликвидности Uniswap V3
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:DAI-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:WBTC-ETH-LP

; Протокол Compound
1970-01-01 open Assets:DeFi:Compound:cUSDC
1970-01-01 open Assets:DeFi:Compound:cETH
1970-01-01 open Assets:DeFi:Compound:cDAI

; Протокол Aave
1970-01-01 open Assets:DeFi:Aave:aUSDC
1970-01-01 open Assets:DeFi:Aave:aETH
1970-01-01 open Assets:DeFi:Aave:DebtETH

; Протоколы Стейкинга
1970-01-01 open Assets:Staking:Ethereum:ETH
1970-01-01 open Assets:Staking:Lido:stETH
1970-01-01 open Assets:Staking:RocketPool:rETH

; Счета Доходов
1970-01-01 open Income:DeFi:Yield:Uniswap
1970-01-01 open Income:DeFi:Yield:Compound
1970-01-01 open Income:DeFi:Yield:Aave
1970-01-01 open Income:DeFi:Staking:Ethereum
1970-01-01 open Income:DeFi:Governance:Tokens
1970-01-01 open Income:DeFi:Airdrops

; Счета Расходов
1970-01-01 open Expenses:DeFi:Gas:Ethereum
1970-01-01 open Expenses:DeFi:Gas:Polygon
1970-01-01 open Expenses:DeFi:Gas:Arbitrum
1970-01-01 open Expenses:DeFi:ImpermanentLoss

Активы, специфичные для DeFi

Определите токены и LP-токены с соответствующими метаданными:

1970-01-01 commodity UNI-V3-ETH-USDC
name: "Uniswap V3 ETH-USDC LP Token"
asset-class: "liquidity-pool"
protocol: "uniswap-v3"

1970-01-01 commodity cUSDC
name: "Compound USDC"
asset-class: "lending-token"
protocol: "compound"

1970-01-01 commodity stETH
name: "Lido Staked Ethereum"
asset-class: "staking-derivative"
protocol: "lido"

Отслеживание распространенных операций DeFi

1. Предоставление ликвидности на Uniswap

Добавление ликвидности в пул

2024-01-15 * "Добавление ликвидности в пул ETH-USDC Uniswap V3"
Assets:Crypto:Wallet:MetaMask:ETH -5.0 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -12500 USDC
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V3-ETH-USDC {250.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

Получение комиссий LP

2024-02-15 * "Получение комиссий LP Uniswap"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC
Income:DeFi:Yield:Uniswap 820.00 USD
Expenses:DeFi:Gas:Ethereum 0.005 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.005 ETH {2600.00 USD}

Вывод ликвидности с непостоянными потерями

2024-03-15 * "Вывод ликвидности из пула ETH-USDC"
Assets:DeFi:Uniswap:ETH-USDC-LP -100 UNI-V3-ETH-USDC {250.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH 4.8 ETH {2800.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 12800 USDC
Expenses:DeFi:ImpermanentLoss 240.00 USD ; расчет НП
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2800.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2800.00 USD}

2. Кредитование по протоколу Compound

Предоставление активов в Compound

2024-01-20 * "Внесение USDC в Compound"
Assets:Crypto:Wallet:MetaMask:USDC -10000 USDC
Assets:DeFi:Compound:cUSDC 500 cUSDC {20.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Получение сложного процента

2024-02-20 * "Начисление сложного процента"
Assets:DeFi:Compound:cUSDC 5.2 cUSDC {20.50 USD}
Income:DeFi:Yield:Compound 106.60 USD

Получение наград COMP

2024-02-20 * "Получение управляющих токенов COMP"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:DeFi:Governance:Tokens 1020.00 USD
Expenses:DeFi:Gas:Ethereum 0.006 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.006 ETH {2600.00 USD}

3. Операции протокола Aave

Внесение и Заимствование

; Внесение ETH в качестве залога
2024-01-25 * "Deposit ETH to Aave"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:DeFi:Aave:aETH 10 aETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

; Заимствование USDC под залог ETH
2024-01-25 * "Borrow USDC from Aave"
Assets:Crypto:Wallet:MetaMask:USDC 15000 USDC
Liabilities:DeFi:Aave:DebtUSDC -15000 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Погашение займов с процентами

2024-03-25 * "Repay USDC loan to Aave"
Liabilities:DeFi:Aave:DebtUSDC 15000 USDC
Expenses:DeFi:Interest:Aave 450 USDC ; Начисленные проценты
Assets:Crypto:Wallet:MetaMask:USDC -15450 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2700.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2700.00 USD}

4. Стейкинг Эфириума

Прямой стейкинг Ethereum

2024-01-10 * "Размещение ETH на Ethereum 2.0"
Assets:Crypto:Wallet:MetaMask:ETH -32 ETH {2500.00 USD}
Assets:Staking:Ethereum:ETH 32 ETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

Вознаграждения за стейкинг

2024-02-10 * "Вознаграждения за стейкинг ETH"
Assets:Staking:Ethereum:ETH 0.15 ETH {2600.00 USD}
Income:DeFi:Staking:Ethereum 390.00 USD

Ликвидный стейкинг с Lido

2024-01-12 * "Стейкинг ETH с Lido"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Staking:Lido:stETH 10 stETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Продвинутые сценарии DeFi

Стратегии фарминга доходности

Мультипротокольный доходный фарминг

; Шаг 1: Внесение USDC в Compound
2024-01-30 * "Внесение USDC в Compound для доходного фарминга"
Assets:Crypto:Wallet:MetaMask:USDC -20000 USDC
Assets:DeFi:Compound:cUSDC 1000 cUSDC {20.00 USD}

; Шаг 2: Заимствование DAI под залог cUSDC
2024-01-30 * "Заимствование DAI из Compound"
Assets:Crypto:Wallet:MetaMask:DAI 15000 DAI
Liabilities:DeFi:Compound:DebtDAI -15000 DAI

; Шаг 3: Предоставление ликвидности DAI-USDC в Uniswap
2024-01-30 * "Добавление ликвидности DAI-USDC для фарминга"
Assets:Crypto:Wallet:MetaMask:DAI -15000 DAI
Assets:Crypto:Wallet:MetaMask:USDC -5000 USDC ; Дополнительный USDC
Assets:DeFi:Uniswap:DAI-USDC-LP 200 UNI-V3-DAI-USDC {100.00 USD}

Кроссчейн DeFi Операции

Мостование активов

2024-02-05 * "Перевод ETH в Polygon"
Assets:Crypto:Wallet:MetaMask:ETH -5 ETH {2600.00 USD}
Assets:Crypto:Wallet:Polygon:ETH 5 ETH {2600.00 USD}
Expenses:DeFi:Bridge:Fees 0.01 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2600.00 USD}

Флеш-кредиты и Арбитраж

2024-02-10 * "Возможность арбитража с флеш-кредитом"
; Флеш-кредит
Активы:Крипто:Временные:ФлешКредит 100000 USDC
Обязательства:DeFi:Aave:ФлешКредит -100000 USDC

; Арбитражная сделка
Активы:Крипто:Временные:ФлешКредит -100000 USDC
Активы:Крипто:Временные:Арбитраж 101500 USDC

; Погашение флеш-кредита
Обязательства:DeFi:Aave:ФлешКредит 100000 USDC
Активы:Крипто:Временные:Арбитраж -100090 USDC ; Включая комиссии

; Прибыль
Активы:Крипто:Кошелек:MetaMask:USDC 1410 USDC
Доход:DeFi:Арбитраж:Прибыль 1410.00 USD

Соображения по налоговой отчетности DeFi

Признание дохода

Все вознаграждения DeFi облагаются налогом как обычный доход:

; Отслеживайте все источники дохода отдельно
Income:DeFi:Yield:Uniswap ; Комиссии LP
Income:DeFi:Yield:Compound ; Полученные проценты
Income:DeFi:Staking:Ethereum ; Вознаграждения за стейкинг
Income:DeFi:Governance:Tokens ; Аирдропы токенов управления
Income:DeFi:Airdrops ; Аирдропы протоколов

Вычеты расходов

Отслеживайте вычитаемые расходы:

Expenses:DeFi:Gas:Ethereum          ; Комиссии за газ
Expenses:DeFi:Gas:Polygon ; Комиссии второго уровня (L2)
Expenses:DeFi:Interest:Aave ; Затраты на заимствования
Expenses:DeFi:ImpermanentLoss ; Непостоянные потери (IL) от LP-позиций

Отслеживание прироста капитала

Используйте партионный учет для точного расчета прироста капитала:

; Различная себестоимость для одного и того же токена
Assets:DeFi:Compound:cUSDC 100 cUSDC {20.00 USD} ; Партия 1
Assets:DeFi:Compound:cUSDC 100 cUSDC {21.00 USD} ; Партия 2

Лучшие практики бухгалтерского учета DeFi

1. Запись транзакций в режиме реального времени

  • Записывайте транзакции сразу после выполнения
  • Используйте хеши транзакций для проверки
  • Отслеживайте мемпул на предмет ожидающих транзакций

2. Отслеживание оптимизации платы за газ

; Отслеживание стратегий оптимизации платы за газ
Расходы:DeFi:Газ:Ethereum:Стандартная ; Стандартная плата за газ
Расходы:DeFi:Газ:Ethereum:Быстрая ; Быстрая плата за газ
Расходы:DeFi:Газ:Ethereum:Мгновенная ; Мгновенная плата за газ

3. Управление рисками протокола

; Отслеживание рисков, специфичных для протокола
Expenses:DeFi:Risk:SmartContract ; Сбои смарт-контрактов
Expenses:DeFi:Risk:Liquidation ; События ликвидации
Expenses:DeFi:Risk:Slippage ; Издержки проскальзывания

4. Автоматическая сверка

  • Настроить автоматические потоки цен
  • Использовать API протоколов для проверки баланса
  • Реализовать автоматический импорт транзакций

5. Стандарты Документации

  • Вести подробные примечания к транзакциям
  • Документировать обоснование стратегии
  • Вести записи взаимодействия с протоколом

Интеграция с инструментами DeFi

Отслеживание портфеля

  • DeBank: Обзор DeFi портфеля
  • Zapper: Многопротокольная панель управления
  • Zerion: DeFi кошелек и трекер

Налоговая отчетность

  • Koinly: Расчеты налогов DeFi
  • CoinTracker: Поддержка нескольких протоколов
  • TokenTax: Специализированная отчетность DeFi

Аналитические платформы

  • DeFi Pulse: Аналитика протоколов
  • DeFiLlama: Отслеживание TVL и доходности
  • APY.vision: Отслеживание непостоянных потерь

Заключение

Сложность учета DeFi не должна мешать вам участвовать в революции децентрализованных финансов. С мощной текстовой системой учета Beancount.io вы сможете:

  • Отслеживать сложные транзакции: Бесшовно обрабатывать многопротокольные взаимодействия
  • Обеспечивать налоговое соответствие: Корректное признание доходов и отслеживание расходов
  • Мониторить эффективность портфеля: Получать аналитику DeFi-позиций в реальном времени
  • Управлять рисками: Отслеживать непостоянные потери и протокольные риски
  • Масштабировать операции: От простого стейкинга до сложных стратегий доходного фермерства

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

Готовы освоить учет DeFi? Начните свой путь с Beancount.io и возьмите под контроль свой портфель децентрализованных финансов уже сегодня.