Skip to main content

49 posts tagged with "Beancount"

View all tags

Технічна перевага Beancount над Ledger, hledger та GnuCash

· 6 min read
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): Оскільки графічний додаток завантажує весь набір даних у пам'ять, продуктивність помітно знижується зі збільшенням розміру. 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 забезпечує найкращу технічну основу.

Скільки відкладати на податки для малого бізнесу

· 6 min read
Mengjia Kong
Mengjia Kong
IRS Enrolled Agent

Ведення малого бізнесу – це вже постійне жонглювання грошовими потоками, постачальниками та клієнтами – податкові сюрпризи не повинні бути ще однією кулькою в повітрі. Гарна новина: за допомогою простої схеми та кількох трюків Beancount ви можете перетворити "Сподіваюся, податковий рахунок не буде величезним" на передбачуваний щомісячний переказ.

1. Знайте, за що ви насправді платите

2025-07-20-скільки-відкладати-на-податки-для-малого-бізнесу

Перш ніж ви зможете відкласти гроші, вам потрібно знати, куди вони підуть. Для більшості малих підприємств США (особливо приватних підприємців та партнерств), загальне податкове зобов'язання є комбінацією кількох окремих зобов'язань.

  • Федеральний податок на прибуток: Це прогресивний податок, тобто ставка зростає зі збільшенням вашого доходу. На 2025 рік ставки сягають 37% для одиноких осіб з доходом понад 626350таподружніхпар,якіподаютьспільнудекларацію(MFJ),здоходомпонад626 350 та подружніх пар, які подають спільну декларацію (MFJ), з доходом понад 751 600.
  • Податок на самозайнятість (SE): Це версія податків FICA (соціальне забезпечення та медичне страхування) для підприємців, яку сплачують наймані працівники за формою W-2. Це фіксована ставка 15.3% на вашу першу частину чистого заробітку. Частина соціального забезпечення у розмірі 12.4% припиняється, коли ваш прибуток досягає річної бази заробітної плати, яка, за прогнозами, становитиме $176 100 у 2025 році. Решта 2.9% на медичне страхування продовжує нараховуватися на весь прибуток.
  • Податок на прибуток штату та місцевий: Це дуже різниться залежно від місця розташування, від 0% у таких штатах, як Вайомінг та Техас, до понад 13% у найвищій категорії Каліфорнії.
  • Штрафи за щоквартальну недоплату: IRS хоче отримувати свої гроші протягом року, а не все одразу. Щоб уникнути штрафів, ви, як правило, повинні сплатити авансом щонайменше 90% від вашого поточного річного податкового зобов'язання або 100% від вашого податкового рахунку за попередній рік (цей поріг зростає до 110% , якщо ваш скоригований валовий дохід, або AGI, перевищує $150 000).

Швидка евристика: Більшість американських підприємців-одинаків, які живуть у штаті із середнім рівнем оподаткування, зрештою сплачують 25% - 30% від чистого прибутку після сплати федеральних податків, податку на самозайнятість та податку штату.

2. Триетапна оцінка, яку ви можете оновлювати щомісяця

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

  1. Прогнозуйте річний прибуток: Подивіться на свої показники з початку року та зробіть обґрунтований прогноз на весь рік. Базова формула – ваш друг: Прогнозований дохід - Прогнозовані витрати, що віднімаються = Прогнозований прибуток.
  2. Застосуйте ефективну ставку податку: Почніть з розумної відсоткової ставки. Якщо у вас є податкова декларація за минулий рік, ви можете розрахувати свою ефективну ставку на її основі. Якщо ви новачок у цьому, евристика 30% – це безпечна відправна точка.
  3. Поділіть на 12 (або 52): Візьміть загальну розрахункову річну суму податку та поділіть її на кількість періодів оплати, які ви хочете використовувати. Ми рекомендуємо щомісяця. Перераховуйте цю суму на окремий банківський рахунок для податкового резерву щомісяця. Якщо ваш грошовий потік більш волатильний, щотижневий переказ може здатися більш керованим.

3. Впровадьте це в Beancount

Бухгалтерський облік у вигляді звичайного тексту робить цей процес прозорим та таким, що піддається аудиту. Ось як керувати своїми податковими заощадженнями в Beancount.

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

; Резервуємо податки за липень
2025-07-31 * "Переказ податкового резерву"
Assets:Bank:Checking -3000 USD
Assets:Bank:TaxReserve 3000 USD
Equity:Opening-Balances

Коли ви здійснюєте щоквартальний розрахунковий платіж уряду, ви реєструєте фактичне зобов'язання. Платіж надходить безпосередньо з вашого резервного рахунку.

; Реєструємо зобов'язання під час подання щоквартального платежу
2025-09-15 * "Щоквартальний розрахунковий податковий платіж за 3 квартал"
Assets:Bank:TaxReserve -9000 USD
Liabilities:Taxes:Federal 6000 USD
Liabilities:Taxes:State 3000 USD

Ця проста система дає вам три потужні переваги:

  • Миттєва видимість: Ваш баланс Assets:Bank:TaxReserve завжди показує, що вже "зарезервовано". Ви знаєте з першого погляду, що ці кошти недоступні для інших бізнес-витрат.
  • Точний прибуток: Оскільки резерв розглядається як переказ між рахунками активів, ваш звіт про прибутки та збитки не спотворюється. Ви реєструєте податкове зобов'язання лише тоді, коли фактично подаєте та сплачуєте його.
  • Аудиторський слід: Кожен платіж до IRS або казначейства вашого штату пов'язаний з чітко позначеним рухом з вашого резервного рахунку, створюючи чистий документальний слід.

4. Точне налаштування вашого відсотка

Початкова оцінка 25% - 30% – це чудовий початок, але ви повинні коригувати її залежно від вашої конкретної бізнес-моделі.

  • Консультанти / агенції з високою маржею: Якщо ви заробляєте значно більше річної бази заробітної плати соціального забезпечення ($176 100), ваша ефективна ставка податку зросте. Ставка 30% - 35%, ймовірно, буде більш точною.
  • Товарний бізнес зі значними відрахуваннями: Якщо у вас значні витрати на реалізовану продукцію (COGS), запаси або інші відрахування, ваша чиста прибутковість нижча. Ставки 20% - 25% може бути достатньо. Використовуйте робочі аркуші форми 1040-ES щокварталу для підтвердження.
  • Власники S-Corp: Ваша ситуація інша. "Розумна зарплата", яку ви собі виплачуєте, підлягає стандартному утриманню із заробітної плати (FICA та податки на прибуток). Ваші розподіли (прибуток, виплачений понад зарплату) все ще вимагають щоквартальних розрахункових платежів, але часто за нижчою граничною ставкою, оскільки вони не підлягають податку SE.
  • Продавці у кількох штатах: Якщо у вас є "нексус" (значна присутність бізнесу) у кількох штатах, ви можете бути винні податок на прибуток у кожному з них. Це може збільшити ваші зобов'язання. Для ясності створіть окремі рахунки зобов'язань у Beancount, такі як Liabilities:Taxes:State:CA та Liabilities:Taxes:State:NY.

5. Автоматизуйте, переглядайте, повторюйте

Система працює лише тоді, коли ви її використовуєте. Зробіть це без зусиль.

  • Автоматизуйте: Підключіть свій основний операційний рахунок до високодохідного ощадного рахунку з назвою "TaxReserve". Заплануйте автоматичний переказ одразу після закриття книг щомісяця.
  • Переглядайте: Переглядайте прогноз свого річного прибутку щокварталу. Якщо продажі за другий квартал перевищили очікування, негайно збільште суму щомісячного резерву. Не чекайте до січня, щоб виявити, що ви недостатньо заощадили.
  • Повторюйте: Зберігайте ключові документи впорядкованими в вашому каталозі Beancount. Збереження остаточної податкової декларації за минулий рік (document: "2024/Taxes/Form1040.pdf") дає вам контекст одним клацанням миші під час обговорення цифр з вашим CPA або планування на наступний рік.

Заключні думки

Податкові рахунки здаються випадковими лише тоді, коли процес відкладання коштів є випадковим. Включивши резерв на основі відсотків безпосередньо у ваш подвійний бухгалтерський облік, ви міняєте тривогу на алгебру, а Beancount робить математику (і аудиторський слід) тривіальними. Переглядайте свою ставку щокварталу, підтримуйте Assets:Bank:TaxReserve поповненим, і 15 квітня знову стане звичайним робочим днем.


Застереження: Ця стаття призначена лише для освітніх цілей і не є податковою консультацією. Завжди уточнюйте цифри у кваліфікованого спеціаліста для вашої юрисдикції та типу організації.

Бухгалтерський облік проти обліку: У чому різниця, і де місце Beancount?

· 3 min read
Mike Thrift
Mike Thrift
Marketing Manager

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

У цьому посібнику ми розглянемо ролі бухгалтерського обліку та обліку, а також те, як Beancount підтримує обидві функції (так, справді).

2025-06-27-accounting-vs-bookkeeping

📘 Бухгалтерський облік: Мистецтво щоденного відстеження

Бухгалтерський облік — це базовий рівень фінансового управління. Йдеться про фіксацію того, що насправді відбулося — без припущень, без прогнозів.

Бухгалтерський облік включає:

  • Запис доходів та витрат
  • Відстеження активів та зобов'язань
  • Позначення транзакцій для подальшого використання
  • Ведення головної книги

У Beancount це виглядає так:

2025-06-27 * "Stripe Payout"
Assets:Bank:Checking 1,200.00 USD
Income:Sales

Кожна транзакція — це будівельний блок. Ви ще не аналізуєте — ви просто записуєте правду, рядок за рядком.

Якщо ви тільки починаєте, Beancount заохочує хороші бухгалтерські звички завдяки своїй чіткій структурі та зрозумілому синтаксису. Вас змусять (у хорошому сенсі!) відстежувати кожен цент і пояснювати кожну транзакцію.

📊 Облік: Перетворення даних на інсайт

Облік ґрунтується на ваших бухгалтерських записах, щоб відповісти на глибші питання:

  • Чи є ми прибутковими?
  • Скільки у нас є грошових коштів?
  • Чи варто нам переплачувати за це програмне забезпечення, чи списувати його щомісяця?
  • Як ми можемо мінімізувати податки?

В обліку ви:

  • Звіряєте рахунки та коригуєте записи
  • Генеруєте звіти, такі як звіти про прибутки/збитки
  • Амортизуєте активи
  • Плануєте податки та майбутні витрати

За допомогою Beancount ви можете аналізувати свої записи, використовуючи такі інструменти, як beancount.io:

  • Переглядаєте баланси, звіти про прибутки та збитки, а також графіки руху грошових коштів
  • Візуалізуєте дохід за категоріями
  • Анотуєте рішення за допомогою метаданих (наприклад, tag:business-trip)

Хочете відстежувати річну підписку на Zoom?

2025-01-15 * "Zoom Annual Plan"
Expenses:Software 149.90 USD
Assets:Bank:Checking
tag:business-tools

Пізніше ви можете амортизувати її щомісяця або аналізувати під час бюджетних сесій.

👩‍💼 Бухгалтер проти Обліковця: Хто що робить?

  • Бухгалтер: Зосереджується на точності. Записує, класифікує та організовує.
  • Обліковець: Додає інтерпретацію. Консультує, планує та моделює результати.

Beancount дає вам можливість бути обома, або ж чітко передати один рівень професіоналу.

Наприклад:

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

🛠️ Програмне забезпечення для бухгалтерського обліку та обліку: Де місце Beancount?

Більшість основних інструментів (наприклад, QuickBooks, Xero) розмивають межу між бухгалтерським обліком та обліком. Beancount застосовує інший підхід:

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

Beancount ідеально підходить для тих, хто цінує прозорість, цілісність даних та автоматизацію за допомогою інструментів з відкритим вихідним кодом.

🧠 Чому ця відмінність важлива

Знання різниці між бухгалтерським обліком та обліком допомагає вам:

  • Залишатися відповідним та готовим до аудиту
  • Розуміти, куди інвестувати час (щоденне відстеження проти щомісячних інсайтів)
  • Чітко спілкуватися з фінансовими фахівцями
  • Масштабувати свої фінансові системи, не потопаючи у складності

🪄 Остання думка: Ваша книга, ваші правила

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

Пам'ятайте:

  • Бухгалтерський облік = що сталося
  • Облік = що це означає

З Beancount ви створюєте обидва рівні з чіткістю та впевненістю.

Дайте мені знати, якщо ви бажаєте отримати версію для друку або продовження у вигляді посібника.

Бухгалтерські проводки Beancount: Як створювати, визначення та приклади

· 4 min read
Mike Thrift
Mike Thrift
Marketing Manager

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

Цей посібник проведе вас через:

2025-06-27-journal-entries

  • Що таке бухгалтерська проводка
  • Чому бухгалтерські проводки важливі
  • Як їх писати в синтаксисі Beancount
  • Як їх ефективно використовувати
  • Приклади реальних транзакцій (платежі клієнтів, покупки, позики тощо)

🧾 Що таке бухгалтерська проводка в Beancount?

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

Приклад:

2024-06-01 * "Client payment for invoice #123"
Assets:Bank:Checking 600.00 USD
Income:Sales
  • Символ * вказує на проведену транзакцію.
  • Опис надає контекст для запису.
  • Assets:Bank:Checking дебетується.
  • Income:Sales кредитується (значення мається на увазі).

Кожен запис зберігається у файлі .beancount — це просто текстовий файл, який ви можете версіонувати, створювати резервні копії та навіть редагувати у Vim або VSCode.

📒 Чому бухгалтерські проводки важливі

Бухгалтерські проводки є атомарною одиницею вашої книги обліку.

Вони:

  • Надходять до вашої Головної книги та Залишків на рахунках
  • Формують усі звіти: Звіти про прибутки та збитки, Баланси, Звіти про рух грошових коштів
  • Дозволяють відстежувати кожен долар, рядок за рядком, до його джерела

За допомогою правильних інструментів ви побачите ці транзакції, відображені в інтерфейсі користувача — категоризовані, доступні для пошуку та фільтрації. Але все починається з цього простого текстового запису.

📚 Як працює подвійний запис у Beancount

Beancount забезпечує облік за подвійним записом. Кожна транзакція повинна бути збалансованою: загальні дебети = загальні кредити.

Швидке правило:

  • Дебетуйте активи та витрати (ви отримуєте готівку або несете витрати)
  • Кредитуйте доходи та зобов'язання (ви заробляєте гроші або берете на себе борг)

Приклад – Придбання офісного приладдя:

2024-06-02 * "Bought printer ink"
Expenses:OfficeSupplies 100.00 USD
Assets:Bank:Checking

🧠 Візуалізація записів

Після збереження, у лівій навігаційній панелі https://beancount.io/ledger/0/income_statement/ ви побачите ...

  • Перегляд журналу: Переглядайте транзакції з пошуком, тегами та фільтрацією
  • Випадаючий список фільтра рахунків: Переглядайте поточні залишки та записи за рахунками
  • Звіт про прибутки та збитки: Сума ваших рахунків Income:* та Expenses:*
  • Баланс: Ваші активи мінус зобов'язання

Fava допомагає перетворити ваші необроблені записи Beancount на дієві звіти — без налаштування бази даних.

💡 Приклади типових бухгалтерських проводок

✅ Ви отримуєте платіж від клієнта

2024-06-05 * "Payment for invoice #456"
Assets:Bank:Checking 1,200.00 USD
Income:Consulting

Необов'язково: Якщо ви використовуєте дебіторську заборгованість:

2024-05-20 * "Invoice #456 sent"
Assets:AccountsReceivable 1,200.00 USD
Income:Consulting

2024-06-05 * "Payment for invoice #456"
Assets:Bank:Checking 1,200.00 USD
Assets:AccountsReceivable -1,200.00 USD

🖨️ Ви купуєте офісне приладдя

2024-06-07 * "Staples run"
Expenses:OfficeSupplies 85.00 USD
Assets:Bank:Checking

🏦 Ви здійснюєте платіж за позикою

Припустимо, ви сплачуєте $1 000, з яких $200 — відсотки, а $800 — основна сума боргу:

2024-06-10 * "Loan repayment"
Liabilities:Loan -800.00 USD
Expenses:LoanInterest 200.00 USD
Assets:Bank:Checking -1,000.00 USD

🔒 Закриття рахунків на кінець року

Щоб «закрити книги», ви зазвичай переводите всі рахунки Income (Доходи) та Expenses (Витрати) до Equity (Власний капітал).

2024-12-31 close Income:*
2024-12-31 close Expenses:*

Або вручну:

2024-12-31 * "Close books"
Equity:RetainedEarnings 45,000.00 USD
Income:Consulting -45,000.00 USD

🛠️ Коригувальні записи

Якщо ви ведете облік за методом нарахування, вам потрібно буде додати коригувальні записи — для передоплачених витрат, нарахованих доходів тощо.

Приклад: Щомісячна підписка на програмне забезпечення за $100, оплачена щорічно

2024-01-01 * "Annual software payment"
Assets:Prepaid 1,200.00 USD
Assets:Bank:Checking -1,200.00 USD

2024-01-31 * "Monthly amortization"
Expenses:Software 100.00 USD
Assets:Prepaid -100.00 USD

Автоматизуйте за допомогою скриптів або доступних інструментів Beancount.

🧰 Beancount: Легкий, перевіряємий, потужний

Beancount — це не просто інструмент для обліку, це ідея: прозора, текстова фінансова істина. Це сучасна система ведення обліку, яка є:

  • Легко контролюється версіями (Git!)
  • Повністю портативна (без пропрієтарної бази даних)
  • Чудово підходить для розробників, фрілансерів та малого бізнесу

Готові почати?

Почніть свій файл Beancount з:

option "title" "My Business Ledger"
option "operating_currency" "USD"

2024-01-01 open Assets:Bank:Checking USD
2024-01-01 open Income:Sales USD
2024-01-01 open Expenses:OfficeSupplies USD
2024-01-01 open Equity:OpeningBalances USD

2024-01-01 * "Initial balance"
Assets:Bank:Checking 10,000.00 USD
Equity:OpeningBalances

Потім завантажте свій файл за допомогою бажаного інструменту візуалізації, щоб побачити магію.

Хочете легше почати? Спробуйте шаблони, імпортери або інструменти спільноти, такі як bean-extract.

З Beancount ваші книги нарешті ваші власні — прості, скриптовані та стійкі до аудиту.

Дайте мені знати, якщо ви бажаєте завантажити версію у форматі PDF або варіанти прикладів, специфічні для малого бізнесу.

Beancount для власників малого бізнесу

· 5 min read
Mike Thrift
Mike Thrift
Marketing Manager

Основи бухгалтерського обліку, які ви дійсно можете зрозуміти — і контролювати

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

2025-06-25-beancount-for-small-businesses

Цей посібник — ваш повний вступ до приведення фінансів вашого малого бізнесу в порядок за допомогою Beancount — з реальними прикладами та покроковими інструкціями.

🧾 Що таке Beancount?

Beancount — це система обліку у текстовому форматі з відкритим вихідним кодом, побудована на основі бухгалтерського обліку за подвійним записом. Ви записуєте свої транзакції у файли .beancount та використовуєте такі інструменти, як bean-doctor, bean-report або Fava, для аналізу та візуалізації ваших бухгалтерських книг.

Ось базова транзакція:

2025-06-01 * "Client Payment: Invoice #123"
Assets:Bank:Business:Checking 1,200.00 USD
Income:Consulting -1,200.00 USD

Він читабельний, скриптований та підтримує контроль версій — ідеально підходить для власників бізнесу, які прагнуть прозорості та контролю.

📌 Чому бухгалтерський облік важливий (і чому Beancount)

  • Він потрібен для податків
  • Він потрібен для ясності
  • Він потрібен для фінансування
  • Він потрібен, щоб виявляти помилки на ранніх етапах

І з Beancount ви можете робити все це за допомогою лише текстового редактора та кількох інструментів.

🪜 8 кроків, щоб почати вести власний бухгалтерський облік за допомогою Beancount

1. Розділіть бізнес- та особисті фінанси

Відкрийте окремий бізнес-рахунок та кредитну картку. Відобразіть це в Beancount:

2025-06-01 open Assets:Bank:Business:Checking USD
2025-06-01 open Liabilities:CreditCard:Business USD

Це дозволяє підтримувати чистоту ваших бухгалтерських книг та захищає вас юридично (особливо якщо ви є ТОВ або корпорацією).

2. Використовуйте бухгалтерський облік за подвійним записом

Кожна фінансова подія впливає на два рахунки. Beancount забезпечує цей баланс за задумом:

2025-06-05 * "Web hosting payment"
Expenses:Hosting 15.00 USD
Assets:Bank:Business:Checking -15.00 USD

Це гарантує математичну цілісність у вашому обліковому журналі.

3. Оберіть касовий метод або метод нарахування

  • Касовий метод: Записуйте доходи/витрати лише тоді, коли гроші отримані/витрачені.
  • Метод нарахування: Відстежуйте зобов'язання (кредиторська/дебіторська заборгованість).

Приклад касового методу:

2025-06-10 * "Client payment received"
Assets:Bank:Business:Checking 800.00 USD
Income:Sales -800.00 USD

Приклад методу нарахування (виставлено рахунок, потім отримано платіж):

2025-06-01 * "Invoice #2001 issued"
Assets:AccountsReceivable 800.00 USD
Income:Sales -800.00 USD

2025-06-15 * "Payment received for Invoice #2001"
Assets:Bank:Business:Checking 800.00 USD
Assets:AccountsReceivable -800.00 USD

4. Налаштуйте свій план рахунків

Чітко визначте свої категорії. Мінімалістичний приклад:

2025-01-01 open Income:Sales USD
2025-01-01 open Expenses:Software USD
2025-01-01 open Expenses:Meals USD
2025-01-01 open Equity:Owner USD

Адаптуйте їх до свого бізнесу. Зберігайте послідовність та описовість.

5. Категоризуйте транзакції (за допомогою метаданих)

Використовуйте метадані для відстеження контексту. Це допомагає з відрахуваннями, аудитами та ясністю.

2025-06-18 * "Team lunch after Q2 milestone"
Expenses:Meals 90.00 USD
Assets:Bank:Business:Checking -90.00 USD
; business_purpose: Q2 celebration
; attendees: Alice, Bob, Tian

Додайте теги або посилання на квитанції:

  ; receipt: ./receipts/2025-06-18-lunch.jpg

6. Зберігайте підтверджуючі документи

Використовуйте Dropbox, Google Drive або папку receipts/. Потім посилайтеся на них у Beancount так:

2025-06-02 * "Domain Renewal - GoDaddy"
Expenses:Hosting 20.00 USD
Assets:Bank:Business:Checking -20.00 USD
; receipt: ./receipts/domain-godaddy.pdf

Аудитори та податкові фахівці будуть вам вдячні.

7. Організуйте для відрахувань

Чітко позначайте витрати, що підлягають вирахуванню:

2025-06-03 * "Adobe Creative Cloud Subscription"
Expenses:Software 60.00 USD
Assets:Bank:Business:Checking -60.00 USD
; deductible: true
; usage: 100% business

Використовуйте власні метадані або теги, такі як #deductible, для відстеження потенційних списань.

8. Зробіть це звичкою

Створіть робочий процес. Приклад:

# Weekly bookkeeping routine
git pull origin main
bean-extract transactions.csv >> ledger.beancount
bean-doctor ledger.beancount
bean-check ledger.beancount
fava ledger.beancount

Або просто зобов'яжіться проводити "Beancount п'ятницю" та звіряти все щотижня.

💼 Зробити самостійно чи найняти допомогу?

Ви можете зробити все самостійно за допомогою Beancount. Але навіть досвідченим користувачам слід:

  • Проконсультуватися з сертифікованим бухгалтером під час налаштування
  • Найняти бухгалтера під час податкового періоду, якщо потрібно
  • Використовувати Fava для щомісячних звітів

Ви отримуєте всю потужність облікової системи без прив'язки до постачальника або абонентської плати.

🛠️ Рекомендовані інструменти для користувачів Beancount

  • Fava – красива веб-панель для файлів Beancount
  • bean-doctor – перевірка стану вашого облікового журналу
  • bean-query – запускайте SQL-подібні звіти
  • beancount-import / beanie – автоматичний імпорт банківських операцій
  • Система контролю версій – використовуйте Git для відстеження змін у ваших бухгалтерських книгах

✅ Фінальний приклад: Повний потік транзакцій

2025-06-20 * "Consulting payment from Acme Inc."
Assets:Bank:Business:Checking 3,000.00 USD
Income:Consulting -3,000.00 USD
; invoice: 2025-06-acme
; project: "Backend API redesign"

2025-06-21 * "Notion Pro Plan"
Expenses:Software 10.00 USD
Assets:Bank:Business:Checking -10.00 USD
; purpose: project documentation
; receipt: ./receipts/notion-june.pdf

🎯 Підсумок

Beancount ідеально підходить для власників малого бізнесу, які хочуть:

  • Зберігати низькі витрати
  • Повністю контролювати свої фінанси
  • Уникати надмірності застарілого програмного забезпечення
  • Використовувати прозорість та простоту текстового формату

Бажаєте завантажити стартовий шаблон .bean для вашого бізнесу? Повідомте мені тип вашого бізнесу, і я створю його спеціально для вас.

Зелена Головна Книга: Відстеження ESG за допомогою Beancount

· 6 min read
Mike Thrift
Mike Thrift
Marketing Manager

У сучасному світі показники екологічного, соціального та корпоративного управління (ESG) – це вже не просто модні слова; вони є основними індикаторами здоров'я компанії та її майбутньої життєздатності. Але як інтегрувати ці важливі дані про сталий розвиток з традиційним фінансовим обліком? На допомогу приходить Beancount, відкритий, текстовий реєстр подвійного запису, який пропонує напрочуд потужне та гнучке рішення для подолання цього розриву.

Уявіть собі, як ви перетворюєте свою фрагментовану звітність зі сталого розвитку на спрощену, автоматизовану систему, яка відстежує все – від викидів вуглецю до різноманітності постачальників, – і все це в межах вашого існуючого фінансового робочого процесу. Beancount робить це можливим, розглядаючи дані ESG як "повноправних учасників поряд з фінансовими транзакціями".

2025-06-22-esg-tracking

Моделювання даних ESG: Підхід Beancount

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

  • Спеціалізовані рахунки та товари (комодіті): Уявіть свій екологічний слід як ще одну валюту. Ви можете створювати рахунки, такі як Metrics:Emissions:CO2e, для відстеження викидів вуглецю. Ці викиди можуть навіть розглядатися як товар (комодіті) (наприклад, одиниця еквівалента CO2, тCO2е), що дозволяє вам записувати конкретні кількості у ваших транзакціях. Наприклад, купівля авіаквитка може кредитувати рахунок Emissions:CO2e на +0.3 тCO2е поряд з грошовою вартістю.
  • Спеціальні теги метаданих: Метадані Beancount у форматі "ключ-значення" ідеально підходять для додавання контексту. Ви можете позначити транзакцію тегом CO2e: 0.3 т або Область: 3, щоб вказати її вуглецевий вплив або сферу дії Протоколу ПГ. Це безпосередньо пов'язує фінансові витрати з їхніми екологічними наслідками, надаючи багатшу та повнішу картину.
  • Структуровані теги для категорій: Дотримання стандартів, таких як Протокол з парникових газів (ПГ), є вкрай важливим. Ви можете використовувати послідовні теги або угоди про найменування рахунків, такі як Metrics:Emissions:Область1, Metrics:Emissions:Область2 та Metrics:Emissions:Область3, щоб легко класифікувати та звітувати про прямі, пов'язані з енергією та викиди ланцюга створення вартості.

Цей адаптивний підхід означає, що в міру розвитку стандартів ESG ви можете коригувати структуру своєї бухгалтерської книги без повної перебудови.


Beancount проти спеціалізованих ESG-інструментів: Стратегічний вибір

Хоча спеціалізовані ESG-платформи, такі як Persefoni або SAP Green Ledger, пропонують високоавтоматизовані, цільові рішення, Beancount є привабливою альтернативою, особливо для тих, хто прагне прозорості та контролю.

ФункціяBeancount (звичайний текст)Спеціалізовані SaaS (наприклад, Persefoni, Plan A)Інтеграція з корпоративними ERP (наприклад, SAP Green Ledger)
Моделювання данихВизначені користувачем рахунки та метадані; гнучко, але вимагає ручного структурування.Попередньо визначені схеми; керований ввід для діяльності та автоматичне перетворення на викиди.Викиди відображаються безпосередньо на транзакції ERP та основні дані.
Коефіцієнти викидівНадані користувачем або інтегровані через власні скрипти; вимагає ручних оновлень.Вбудовані, регулярно оновлювані бібліотеки коефіцієнтів викидів; автоматичні розрахунки.Інтегровані з корпоративними даними та стандартними коефіцієнтами для точності аудиторського рівня.
Інтеграція данихВідкрита архітектура через власні скрипти Python/API; вимагає розробки для автоматизованого імпорту.Багато попередньо створених конекторів до зовнішніх джерел даних (комунальні послуги, ERP, системи подорожей).Нативна інтеграція з основними бізнес-процесами та потоками даних всередині ERP.
Звітність та аудитВласні запити та звіти Fava; високо налаштовувані, але вимагають розробки користувачем. Контроль версій (Git) для прозорого аудиторського сліду.Багатофункціональні інформаційні панелі, попередньо створені звіти для стандартів (GHG, TCFD, CDP). Журнали аудиту в платформі та блокування періодів.Інтегрована звітність в ERP; розроблена для аудитованих даних з "обґрунтованою впевненістю".
Вартість та доступністьБезкоштовний та з відкритим вихідним кодом; вимагає знань Beancount/скриптингу.Комерційний SaaS з абонентською платою; менші технічні витрати.Корпоративне програмне забезпечення з потенційно високими витратами на ліцензування та впровадження; вимагає специфічних знань ERP.

Beancount — це потужний інструмент для самостійного використання: він надає неперевершену гнучкість і прозорість, що робить його ідеальним для приватних осіб або технічно підкованих невеликих організацій. Ви повністю володієте своїми даними, уникаючи прив'язки до постачальника.

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

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


Практичне застосування: ESG у дії з Beancount

Універсальність Beancount робить його придатним для кількох ключових випадків використання ESG:

  • Відстеження викидів Сфери 3: Найскладніші для відстеження викиди (з вашого ланцюжка створення вартості) можуть бути інтегровані шляхом зв'язування даних про викиди постачальників з транзакціями купівлі. Beancount забезпечує чіткий аудиторський слід для цих складних показників, дозволяючи краще аналізувати та точно визначати джерела даних.
  • Аудити сталого розвитку та забезпечення достовірності: Як і фінансові дані, показники ESG повинні бути перевіряються. Beancount дозволяє пов'язувати кожен запис ESG з вихідними документами (наприклад, рахунками за комунальні послуги, заявами про перевірку третьою стороною), забезпечуючи ретельний аудиторський слід для прозорості та забезпечення достовірності.
  • Звітність про відповідність вимогам ЄС CSRD/ESRS: Для компаній, які стикаються з суворими регуляціями, такими як CSRD, Beancount може слугувати центральним сховищем для кількісних розкриттів. Хоча він не буде автоматично форматувати звіти в XBRL, він надає детальні, перевіряються дані, необхідні для формування показників, готових до відповідності.
  • Аналіз вуглецевого сліду та управлінський облік: Розглядайте вуглець як ще один вимір управлінського обліку. Розподіляючи викиди за центрами прибутку або кодами продуктів, ви можете розраховувати такі показники, як "викиди на долар доходу" та ідентифікувати вуглецеві гарячі точки, що сприятиме прийняттю більш обґрунтованих рішень щодо сталого розвитку.

Найкращі практики для вашої ESG-бухгалтерської книги Beancount

Щоб максимізувати ефективність Beancount для ESG, розгляньте ці найкращі практики:

  1. Розробіть чіткий план рахунків для ESG: Продумано структуруйте свої ESG-рахунки (наприклад, Metrics:Emissions:Scope1:Fuel), так само, як ваші фінансові рахунки.
  2. Послідовно використовуйте метадані: Застосовуйте теги (наприклад, Scope: 3, FactorSource: EPA2024) для послідовного контексту та простішого пошуку.
  3. Збалансуйте деталізацію з керованістю: Зосередьтеся на суттєвих показниках, щоб не перевантажувати свою бухгалтерську книгу зайвими деталями.
  4. Автоматизуйте з обережністю: Використовуйте скрипти Python для імпорту та валідації даних, але забезпечте надійну перевірку помилок та чітку документацію ваших процесів автоматизації.
  5. Використовуйте контроль версій: Застосовуйте Git для відстеження кожної зміни у вашій бухгалтерській книзі, забезпечуючи прозору та перевіряєму історію ваших ESG-даних.
  6. Пов'язуйте з документами та доказами: Пов'язуйте вихідні файли (наприклад, PDF-файли рахунків за комунальні послуги) із записами в бухгалтерській книзі для легкої перевірки під час аудитів.
  7. Використовуйте Fava для аналітичних даних: Налаштуйте Fava для відображення власних ESG-діаграм та звітів, роблячи ваші дані про сталість дієвими та доступними для нетехнічних зацікавлених сторін.
  8. Залишайтеся в курсі стандартів: Звітність ESG є динамічною; будьте готові адаптувати свою структуру Beancount, коли з'являються нові регуляції та фреймворки.

Майбутнє зелене, і у форматі простого тексту

Хоча Beancount наразі не має вбудованого ESG-інтелекту або готових звітів, його відкритий вихідний код надає величезні можливості для вдосконалення. Плагіни, розроблені спільнотою, для вуглецевого обліку, стандартизовані шаблони ESG-бухгалтерських книг та краща інтеграція з API коефіцієнтів викидів могли б значно розширити його можливості.

Оскільки корпоративний світ все більше приймає "зелені бухгалтерські книги", Beancount готовий стати гнучким, прозорим та аудитованим рішенням. Інтегруючи ESG-дані з такою ж ретельністю, як і фінансові дані, Beancount надає організаціям можливість не лише відповідати вимогам відповідності, але й впроваджувати значущі ініціативи сталого розвитку.

Чи готові ви перенести свої ESG-дані у революцію простого тексту?

Повний посібник з обліку криптовалют за допомогою Beancount.io

· 11 min read
Mike Thrift
Mike Thrift
Marketing Manager

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

Ось сувора реальність: кожна криптотранзакція потенційно оподатковується, і податкова служба (IRS) спостерігає. Незалежно від того, чи є ви звичайним власником біткойнів, чи досвідченим користувачем DeFi, який керує позиціями в десятках протоколів, ведення точних фінансових записів не є необов'язковим — це важливо для дотримання вимог та фінансової прозорості.

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

Рішення? Система обліку в текстовому форматі Beancount.io, побудована на потужній мові Beancount з відкритим вихідним кодом. Важлива примітка: Beancount — це мова бухгалтерського обліку з подвійним записом з відкритим вихідним кодом, створена Мартіном Бле (Martin Blais), тоді як 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 * "Купівля 0.5 BTC на 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 * "Переказ BTC з Coinbase на 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 * "Отримано ейрдроп UNI"
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

; Продаж конкретних партій (FIFO, LIFO або конкретна ідентифікація)
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. Розділяйте бізнес та особисті фінанси

; Personal crypto investments
Assets:Personal:Crypto:Coinbase:BTC

; Business crypto operations
Assets:Business:Crypto:Treasury:BTC

4. Облік усіх джерел доходу

  • Винагороди за стейкінг (оподатковується як дохід)
  • Винагороди за майнінг (оподатковується як дохід)
  • Еірдропи (оподатковується за справедливою ринковою вартістю)
  • Дохід від DeFi (оподатковується як дохід)

5. Облік комісій

Обліковуйте всі комісії окремо для належного податкового вирахування:

Витрати:Крипто:Комісії:Торгівля     ; Комісії за біржову торгівлю
Витрати:Крипто:Комісії:Мережа ; Комісії блокчейн-мережі
Витрати:Крипто:Комісії:Виведення ; Комісії за виведення

Інтеграція з Популярними Криптоінструментами

Інтеграція з API бірж

Beancount.io може інтегруватися з основними біржами:

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

Аналіз блокчейну

Підключіться до оглядачів блокчейнів:

  • Etherscan: перевірка транзакцій Ethereum
  • Blockchain.info: відстеження транзакцій Bitcoin
  • 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

· 9 min read
Mike Thrift
Mike Thrift
Marketing Manager

Оподаткування криптовалют перетворилося з нішевого питання на критично важливу вимогу дотримання для мільйонів інвесторів. Оскільки IRS посилює контроль та вимагає детальної звітності, точне ведення обліку є не просто доброю практикою — це вкрай важливо для уникнення штрафів та оптимізації ваших податкових зобов'язань.

Цей вичерпний посібник показує, як досягти повного дотримання податкових вимог щодо криптовалют, використовуючи потужну систему обліку Beancount.io на основі простого тексту, забезпечуючи відповідність усім вимогам IRS та максимізуючи податкову ефективність.

Посібник з дотримання податкових вимог щодо криптовалют

Розуміння податкових вимог щодо криптовалют

Порядок оподаткування криптовалюти IRS

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

  • Кожна транзакція потенційно оподатковується: Торгівля, продаж, витрачання або обмін криптовалюти
  • Собівартість повинна відстежуватися: Для кожної одиниці належної криптовалюти
  • Термін володіння визначає податкову ставку: Короткострокові проти довгострокових приростів капіталу
  • Визнання доходу вимагається: Для майнінгу, стейкінгу, аірдропів та винагород DeFi
  • Детальні записи є обов'язковими: Документація на рівні транзакцій для аудиту

Основні податкові форми для криптовалюти

Form 1040 - Податкова декларація про доходи фізичної особи

  • Рядок 1: Зазначте дохід від криптовалют (стейкінг, майнінг, ейрдропи)
  • Schedule 1: Додаткові джерела доходу
  • Питання про цифрові активи: Необхідно відповісти «Так», якщо ви здійснювали операції з криптовалютами

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

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

Розклад 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 * "Trade BTC for ETH - Taxable exchange"
; Вибуття 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 Staking Rewards - January"
reward-type: "staking"
fair-market-value: "2500.00 USD per 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 * "Bitcoin Mining Reward"
mining-pool: "Slush Pool"
block-height: "825000"
fair-market-value: "45000.00 USD per BTC"
Assets:Crypto:Mining:BTC 0.01 BTC {45000.00 USD}
Income:Crypto:Mining:Ordinary 450.00 USD

; Mining expenses (deductible)
Expenses:Crypto:Mining:Electricity 120.00 USD
Assets:Checking -120.00 USD

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

2024-03-01 * "Аірдроп токенів UNI"
airdrop-source: "Uniswap Protocol"
fair-market-value: "8.00 USD per UNI"
taxable-amount: "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 per COMP"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:Crypto:DeFi:Ordinary 1020.00 USD

Комісії пулу ліквідності

2024-02-15 * "Отримані комісії Uniswap LP"
protocol: "Uniswap V3"
pool: "ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC
Доходи:Крипто:DeFi:Звичайні 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. Міркування щодо Wash Sale

Хоча правила Wash Sale офіційно не застосовуються до криптоактивів, уникайте потенційних проблем:

; Зачекайте 31 день перед повторною купівлею
2025-01-16 * "Повторна купівля ADA після періоду Wash Sale"
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 * "Sell high-cost ETH lot for tax loss"
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 approaching long-term status"
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
'Короткостроковий' as type,
sum(position) as total_gain_loss
WHERE account ~ "Income:CapitalGains:ShortTerm"
OR account ~ "Expenses:CapitalLoss:ShortTerm"

UNION ALL

SELECT
'Довгостроковий' 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 - Повна Документація" ^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: "Середнє значення з кількох бірж"

Поширені помилки податкового дотримання

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) вичерпні звіти:

-- Complete tax package for 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 * "Q1 Estimated Tax Payment"
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: Відстеження прибуткового фермерства, пулів ліквідності та винагород за стейкінг за допомогою обліку у вигляді простого тексту

· 7 min read
Mike Thrift
Mike Thrift
Marketing Manager

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

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

Простий облік DeFi

Розуміння бухгалтерських викликів DeFi

Складність DeFi-транзакцій

DeFi-протоколи створюють облікові виклики, яких немає у традиційних фінансах:

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

Податкові наслідки DeFi-діяльності

Податкова служба США розглядає DeFi-діяльність як оподатковувані події:

  • Надання ліквідності: Може спричинити оподатковувані події при депонуванні активів
  • Винагороди за єлд-фармінг: Оподатковуються як звичайний дохід за справедливою ринковою вартістю
  • Непостійна втрата: Потенційні податкові наслідки при виведенні з пулів
  • Токени управління: Ейрдропи та винагороди оподатковуються як дохід
  • Винагороди за стейкінг: Оподатковуються як дохід при отриманні

Налаштування 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 * "Додати ліквідність до пулу Uniswap V3 ETH-USDC"
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

Депонування та Запозичення

; Deposit ETH as collateral
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}

; Borrow USDC against ETH collateral
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 * "Погашення позики USDC для 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

Прямий стейкінг 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"
Активи:Крипто:Гаманець:MetaMask:ETH -10 ETH {2500.00 USD}
Активи:Стейкінг:Lido:stETH 10 stETH {2500.00 USD}
Витрати:DeFi:Газ:Ethereum 0.008 ETH {2500.00 USD}
Активи:Крипто:Гаманець: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 * "Bridge ETH to 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 * "Можливість арбітражу за допомогою флеш-кредиту"
; Флеш-кредит
Assets:Crypto:Temp:FlashLoan 100000 USDC
Liabilities:DeFi:Aave:FlashLoan -100000 USDC

; Арбітражна угода
Assets:Crypto:Temp:FlashLoan -100000 USDC
Assets:Crypto:Temp:Arbitrage 101500 USDC

; Погашення флеш-кредиту
Liabilities:DeFi:Aave:FlashLoan 100000 USDC
Assets:Crypto:Temp:Arbitrage -100090 USDC ; Включаючи комісії

; Прибуток
Assets:Crypto:Wallet:MetaMask:USDC 1410 USDC
Income:DeFi:Arbitrage:Profit 1410.00 USD

Міркування щодо податкової звітності DeFi

Визнання Доходу

Усі винагороди DeFi оподатковуються як звичайний дохід:

; Track all income sources separately
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 ; Комісії рівня 2
Expenses:DeFi:Interest:Aave ; Витрати на запозичення
Expenses:DeFi:ImpermanentLoss ; Непостійна втрата від позицій LP

Відстеження приросту капіталу

Використовуйте облік за партіями для точного розрахунку приросту капіталу:

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

Найкращі практики для обліку децентралізованих фінансів

1. Запис транзакцій у реальному часі

  • Записуйте транзакції одразу після виконання
  • Використовуйте хеші транзакцій для верифікації
  • Моніторте мемпул на предмет очікуваних транзакцій

2. Відстеження оптимізації плати за газ

; Відстежувати стратегії оптимізації плати за газ
Expenses:DeFi:Gas:Ethereum:Standard ; Стандартна ціна газу
Expenses:DeFi:Gas:Ethereum:Fast ; Швидка ціна газу
Expenses:DeFi:Gas:Ethereum:Instant ; Миттєва ціна газу

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 і візьміть під контроль свій портфель децентралізованих фінансів сьогодні.

Beancount v3: Що нового?

· 3 min read
Mike Thrift
Mike Thrift
Marketing Manager

Beancount версії 3, випущений в середині 2024 року, знаменує собою значну архітектурну еволюцію для популярного інструменту обліку у текстовому форматі. Хоча він зберігає зворотну сумісність для файлів облікових книг користувачів, базова структура та супутні інструменти зазнали суттєвих змін. Ось огляд того, що нового в Beancount v3.

Більш модульна та оптимізована архітектура

2025-06-06-що-нового-в-beancount-v3

Найбільш значною зміною в Beancount v3 є перехід до більш модульної екосистеми. Кілька ключових функціональних можливостей, які раніше були об'єднані з ядром, були виділені в окремі, незалежні проєкти. Це робить ядро Beancount більш компактним і дозволяє зосередитися на розробці окремих компонентів.

Ключові компоненти, які тепер є окремими пакетами, включають:

  • beanquery: Потужний інструмент запитів, схожий на SQL, для ваших файлів облікових книг тепер знаходиться в окремому пакеті.
  • beangulp: Це нове місце для фреймворку імпорту даних, що замінює колишній модуль beancount.ingest.
  • beanprice: Спеціалізований інструмент для отримання цін на товари та акції.

Ця сепарація означає, що користувачам потрібно буде встановлювати ці пакети на додаток до самого beancount, щоб зберегти повну функціональність, до якої вони звикли у версії 2.

Зміни в інструментах командного рядка та робочих процесах

Відображаючи нову модульну архітектуру, є деякі помітні зміни в інструментах командного рядка:

  • bean-report видалено: Цей інструмент було видалено. Користувачам тепер рекомендується використовувати bean-query (з пакета beanquery) для своїх потреб у звітності.
  • Новий робочий процес імпортера: Команди bean-extract та bean-identify були видалені з ядра. Новий підхід з beangulp базується на скриптах. Користувачі тепер створюватимуть власні скрипти Python для обробки імпорту даних із зовнішніх джерел, таких як банківські виписки.

Покращення синтаксису та функцій

Хоча основні принципи обліку залишаються незмінними, Beancount v3 вносить деяку бажану гнучкість у свій синтаксис:

  • Більш гнучкі коди валют: Попередні обмеження на довжину та символи для назв валют були послаблені. Тепер підтримуються односимвольні позначення валют.
  • Розширені прапорці транзакцій: Користувачі тепер можуть використовувати будь-яку велику літеру від A до Z як прапорець для транзакцій, що дозволяє більш детально категоризувати їх.

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

Переписування на C++ та продуктивність

Однією з довгострокових цілей для Beancount було переписування його критично важливих для продуктивності компонентів на C++. Хоча ця робота триває, початковий випуск Beancount v3 не включає ядро на базі C++. Це означає, що наразі продуктивність v3 порівнянна з v2. Код C++ залишається в окремій гілці розробки для майбутньої інтеграції.

Міграція з v2 на v3

Для більшості користувачів міграція з Beancount v2 на v3 є відносно простою:

  1. Файли облікових книг: Жодних змін для ваших файлів .beancount не потрібно.
  2. Встановлення: Вам потрібно буде встановити нові, окремі пакети, такі як beanquery та beangulp, використовуючи pip.
  3. Скрипти імпортера: Якщо у вас є власні імпортери, вам потрібно буде оновити їх для використання нового API beangulp. Це в основному передбачає зміну базового класу, від якого успадковуються ваші імпортери, та коригування деяких сигнатур методів.
  4. Fava: Популярний веб-інтерфейс для Beancount, Fava, був оновлений для сумісності з v3. Переконайтеся, що у вас встановлена остання версія Fava для безперебійної роботи.

По суті, Beancount v3 є фундаментальним випуском, який оптимізує архітектуру проєкту, роблячи її більш модульною та легшою для підтримки та розширення в довгостроковій перспективі. Хоча він вимагає деяких коригувань у робочих процесах користувачів, особливо щодо імпорту даних, він закладає основу для майбутнього розвитку цього потужного інструменту обліку.