Перейти к основному содержимому

89 записей с тегом "Accounting"

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

Запись налогов в Beancount (практический подход)

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

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

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

2025-08-25-recording-taxes-in-beancount


Основные принципы

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

  • Разделяйте «что это» и «когда движется наличность». 🗓️
    Это самое важное понятие. Налоговый расход относится к году, в котором вы заработали доход (например, 2024), даже если вы оплачиваете его в IRS в апреле 2025 года. Если не отделять момент возникновения расхода от момента выплаты, ваши годовые отчёты будут путаными и вводящими в заблуждение.

  • Делайте иерархию счетов простой и скучной. 📁
    Назовите счета чётко, исходя из типа налога (например, IncomeTax, SocialSecurity). Это делает запросы невероятно простыми. Не захламляйте имена счетов названиями поставщиков или номерами форм, вроде «W‑2» или «1099»; используйте метаданные и теги для этих деталей.

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

  • Пишите для своего будущего «я». 🧠
    Цель — ясность. Добавляйте детали, такие как налоговый год, к имени счета только если это действительно упрощает запросы. Избегайте создания нового набора счетов каждый год (Expenses:Taxes:2024:Federal, Expenses:Taxes:2025:Federal и т.д.), если только у вас нет убедительной причины. Плоская структура обычно легче в управлении.


Минимальный скелет счетов

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

; --- US Federal Income & Payroll Taxes ---
; Для удержаний из вашей зарплаты
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Withheld USD
; Для оценочных платежей или счетов, которые вы платите напрямую
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Payments USD
; Для возвратов налогов, которые вы получаете
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Refunds USD

; Ваши взносы в FICA
2024-01-01 open Expenses:Taxes:Federal:SocialSecurity USD
2024-01-01 open Expenses:Taxes:Federal:Medicare USD

; --- Другие распространённые налоги ---
; Для налогов с продаж/использования, которые вы платите при покупках
2024-01-01 open Expenses:Taxes:Sales USD

; --- Счета для корректировок в конце года (опционально, но рекомендуется!) ---
; Временный счёт‑задолженность для налогов, которые вы должны, но ещё не оплатили
2024-01-01 open Liabilities:AccruedTaxes:Federal:Income USD
; Временный счёт‑актив для возврата, который вам полагается, но ещё не получен
2024-01-01 open Assets:Tax:Receivable USD

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


Пример 1: Зарплатный чек

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

2025-07-15 * "Employer Inc." "Salary for first half of July"
Income:Work:Salary -6,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Withheld 1,200.00 USD
Expenses:Taxes:Federal:SocialSecurity 372.00 USD
Expenses:Taxes:Federal:Medicare 87.00 USD
Assets:Cash:Checking 4,341.00 USD

Эта одна транзакция рассказывает всю историю:

  • Вы заработали $6 000 валового дохода.
  • $1 200 из них отправлены в IRS как федеральный подоходный налог.
  • 372ушливSocialSecurity,372 ушли в Social Security, 87 — в Medicare.
  • Оставшиеся $4 341 — это ваша чистая зарплата.

Совет: Вы можете добавить метаданные из вашего расчётного листа (например, pay_period_end: "2025-07-15") к транзакции для удобного аудита.


Пример 2: Подача декларации (проблема перехода года)

Ситуация, которая ставит людей в тупик: апрель 2025 г., вы подаёте декларацию за 2024 год и обнаруживаете, что после всех удержаний вам ещё нужно доплатить $3 000.

Как это записать? Нужно, чтобы расход учитывался в 2024 году, а платёж наличными произошёл в 2025 году. Ниже два отличных способа.

Вариант A: Ручное двухшаговое начисление

Чистый Beancount, без плагинов. Ясный двухшаговый процесс.

Шаг 1: Признать расход в конце налогового года.
Последний день 2024 г. — создаём запись «true‑up». Деньги ещё не движутся; мы лишь признаём расход и «паркуем» его во временном счёте‑задолженности.

2024-12-31 * "Federal income tax true-up for 2024"
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
Liabilities:AccruedTaxes:Federal:Income -3,000.00 USD

Теперь ваш отчёт о доходах за 2024 год правильно показывает этот расход.

Шаг 2: Записать денежный платёж, когда он произойдёт.
В апреле 2025 г., когда вы действительно отправляете деньги в IRS, очищаем задолженность.

2025-04-15 * "IRS" "Payment for 2024 tax return"
Liabilities:AccruedTaxes:Federal:Income 3,000.00 USD
Assets:Cash:Checking -3,000.00 USD

Ваши отчёты за 2024 год корректны, а денежный поток за 2025 год тоже. Идеально! Тот же шаблон работает в обратную сторону для возврата — просто используйте Assets:Tax:Receivable вместо счета‑задолженности.

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

Если хотите объединить платёж в одну транзакцию, существует отличный плагин сообщества beancount_reds_plugins.effective_date. Он позволяет задать «эффективную дату» для отдельной строки.

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

plugin "beancount_reds_plugins.effective_date"

Затем можно написать одну запись; плагин автоматически разобьёт её на две части.

; Одна запись; плагин делает остальное
2025-04-15 * "IRS" "Payment for 2024 tax return"
Assets:Cash:Checking -3,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
effective_date: 2024-12-31

Здесь денежная часть записана 15 апреля 2025 г., а расход ретроспективно применяется к 31 декабря 2024 г. Результат тот же, что и в варианте A, но рабочий процесс иной.


Что насчёт налога с продаж?

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

2025-07-19 * "Local Grocery Store"
Expenses:Groceries 12.32 USD
Expenses:Taxes:Sales 1.28 USD
Assets:Cash:Checking -13.60 USD

Так вы легко отслеживаете, сколько тратите на налог с продаж в течение года. Если вы ведёте бизнес с НДС, понадобится более формальная система со счётами‑пассивами и‑активами, но принцип тот же.


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

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

1. Каков мой общий федеральный подоходный налог за 2024 год?

SELECT cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01;

2. Как эта сумма разбивается между удержаниями, платежами и возвратами?

SELECT account, cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01
GROUP BY account
ORDER BY account;

3. Есть ли у меня непогашенные налоговые долги или получаемые суммы? (Полезно проверить свою работу!)

SELECT account, units(sum(position))
WHERE account "Liabilities:AccruedTaxes" OR account "Assets:Tax"
GROUP BY account
ORDER BY account;

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


Быстрый FAQ

  • Нужны ли мне счета по каждому году, типа Expenses:Taxes:2024?
    Скорее всего, нет. Метод начисления (или плагин) сохраняет плоскую структуру счётов чистой и читаемой. Создавайте годовые счета только если они действительно упрощают ваши запросы.

  • Может ли Beancount рассчитывать мои налоги автоматически?
    Не напрямую, но он может подготовить данные. Некоторые продвинутые пользователи пишут скрипты, которые передают результаты BQL в налоговое программное обеспечение — удобно для оценки обязательств в течение года.

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


Чек‑лист для быстрого старта

Готовы начать?

  1. Добавьте скелет счетов в ваш файл Beancount (и адаптируйте названия под вашу страну).
  2. Записывайте зарплаты, начиная с валового дохода и распределяя налоговые постинги.
  3. В конце года начисляйте любые корректировки с помощью счета‑задолженности/актива (или используйте плагин effective_date).
  4. Отслеживайте возвраты как получаемые суммы и закрывайте их, когда деньги поступят.
  5. Запускайте приведённые выше BQL‑запросы, чтобы проверить итоги перед подачей декларации.

Делайте всё скучным, делайте всё последовательным, и ваш налоговый сезон наконец‑то станет просто ещё одной частью вашей финансовой истории — а не загадкой, которую нужно решить.

Начисленные расходы в 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

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

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

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

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

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

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


2025-08-23-accumulated-depreciation

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

plugin "fava.plugins.amortize_over"

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

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

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

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


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

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


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

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


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

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

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

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

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

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

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

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

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


FAQ (быстро)

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

Заключение

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

Сборы продавцов Amazon (2025): Что это такое и как их учитывать в Beancount

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

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

TL;DR ⚡

2025-08-21-amazon-seller-fees-2025

  • Вы столкнётесь с рядом повторяющихся сборов Amazon: план продаж, реферальный сбор, закрывающий сбор (медиа), выполнение и хранение FBA, размещение inbound, сбор за низкий уровень запасов, обработка возвратов, административный сбор за возврат, а также сбор за большой объём листинга для очень больших каталогов.
  • Ведите отдельный счёт Assets:Amazon:Clearing. Записывайте туда продажи и сборы; когда Amazon выплачивает деньги, переводите чистую сумму на ваш банковский счёт. Это упрощает сверку.
  • Отслеживайте каждый SKU как отдельный товар (например, SKU:WATER-BOTTLE), чтобы Beancount мог автоматически рассчитывать себестоимость проданных товаров (COGS) по партиям.
  • Быстро сверяйте данные, импортируя отчёты о расчётах или отчёты за диапазон дат и сопоставляя «типы транзакций» Amazon напрямую с вашими расходными счетами в Beancount.

Карта сборов Amazon (рынок США)

Ниже — разбивка самых распространённых сборов, которые вы увидите в 2025 году.

Сбор за план продаж

Это базовый абонентский платёж за доступ к маркетплейсу.

  • Индивидуальный план: Нет ежемесячной платы. Вместо этого вы платите $0.99 за каждый проданный товар.
  • Профессиональный план: Фиксированная плата $39.99 в месяц, которая отменяет плату за каждый товар. Это стандартный выбор для любого серьёзного продавца. Все остальные сборы начисляются поверх этой суммы.

Реферальный сбор

Это комиссия Amazon за каждую продажу.

Он представляет собой процент от общей цены продажи товара (включая доставку и любую подарочную упаковку). Ставка полностью зависит от категории продукта. Большинство категорий находятся в диапазоне 8–15 %, но некоторые используют ступенчатые ставки (например, 15 % на первые $500 и 8 % на оставшуюся часть). В некоторых категориях есть минимальный реферальный сбор, часто $0.30. Всегда проверяйте актуальную таблицу ставок для вашей категории.

Закрывающий сбор (медиа‑категории)

Если вы продаёте медиа‑товары, такие как книги, музыка, видео или DVD, Amazon взимает дополнительный фиксированный $1.80 за каждый товар.

Сборы за выполнение FBA

Это сборы за подбор, упаковку и доставку единицы товара при использовании Fulfillment by Amazon (FBA). Стоимость зависит от размера и веса товара. Amazon периодически обновляет эти тарифы. Для 2025 года непиковые тарифы вернулись к уровням 2024 года 15 января 2025 года. Всегда обращайтесь к текущей тарифной таблице FBA, чтобы узнать точный размер вашего продукта и соответствующий сбор.

Ежемесячное хранение и надбавка за старый инвентарь (FBA)

Amazon взимает плату за место, которое ваш инвентарь занимает в их центрах выполнения.

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

Сбор за сервис размещения inbound (FBA)

Это сбор за единицу, связанный с тем, как вы отправляете инвентарь в Amazon. Он покрывает расходы Amazon на распределение ваших товаров по их сети выполнения. Некоторые программы, такие как «New Selection», могут временно освобождать новые товары от этого сбора до определённых лимитов.

Сбор за низкий уровень запасов (FBA)

Этот сбор применяется к товарам стандартного размера с постоянно низким уровнем запасов относительно спроса клиентов. Amazon измеряет это метрикой «исторические дни поставки». Если уровень запасов популярного товара падает ниже порога (обычно 28 дней), сбор активируется.

Сбор за обработку возвратов (FBA)

Для товаров в категориях с выше среднего уровнем возвратов (например, одежда и обувь) Amazon может взимать сбор за обработку возврата за каждый возврат клиента. Некоторые единицы «New Selection» освобождаются от этого сбора до определённого лимита.

Административный сбор за возврат

Когда вы возвращаете клиенту деньги за заказ, Amazon возвращает вам уплаченный реферальный сбор. Однако часть его удерживается как сбор за обработку. Это минимум из $5.00 или 20 % от реферального сбора за данный товар.

Сбор за большой объём листинга (огромные каталоги)

Этот сбор затрагивает только продавцов с массивными каталогами. Если у вас более 1,5 млн активных SKU, Amazon взимает ежемесячный сбор $0.001 за каждый подходящий SKU сверх этого порога.

Примечание: Тарифы и политики могут различаться в зависимости от страны, региона и категории. Всегда проверяйте локальные справочные страницы Seller Central перед тем, как фиксировать операции.


Как эти сборы отображаются в ваших отчётах 🧾

Все данные доступны в Seller Central. Два самых полезных отчёта для бухгалтерии:

  1. Отчёты за диапазон дат (Payments → Date Range Reports): Предоставляют сводку вашего дохода, расходов, налогов и чистых переводов за определённый период. Идеальны для импорта в главный журнал и сверки.
  2. Файлы расчётов (например, Flat File V2): Эти файлы разбивают каждую отдельную транзакцию, показывая тип сбора, номер заказа, сумму и дату. Это детальные данные, которые вы будете использовать для точного сопоставления.

Beancount‑ориентированный способ записи активности Amazon

Вот как превратить сложный мир Amazon в чистые, простые записи Beancount.

1. Создайте минимальный план счетов

Сначала определите необходимые счета. Эта простая структура покрывает всё.

; --- ASSETS ---
Assets:Amazon:Clearing ; Ваш «кошелёк» Amazon
Assets:Bank:Checking ; Счёт, куда приходят выплаты
Assets:Inventory:SKU:<code> ; Подсчёт по каждому SKU

; --- INCOME & COGS ---
Income:Sales:Amazon
Expenses:COGS:Inventory

; --- EXPENSES ---
Expenses:Marketplace:Amazon:Referral
Expenses:Marketplace:Amazon:FBAFulfillment
Expenses:Marketplace:Amazon:Storage:Monthly
Expenses:Marketplace:Amazon:Storage:Aged
Expenses:Marketplace:Amazon:InboundPlacement
Expenses:Marketplace:Amazon:LowInventoryLevel
Expenses:Marketplace:Amazon:ReturnsProcessing
Expenses:Marketplace:Amazon:Other ; Для прочих сборов

Beancount‑способность отслеживать партии инвентаря и базу стоимости — это суперсила. Вы «покупаете» инвентарь в Assets:Inventory:SKU:... с указанием стоимости {...}. При продаже Beancount автоматически рассчитывает себестоимость проданных товаров.

2. Записывайте каждую продажу и её сборы

Запишем продажу FBA на $30 для SKU:WATER-BOTTLE. Реферальный сбор $4.50, сбор за выполнение FBA $4.24, сбор за низкий уровень запасов $0.15. Вы изначально закупили эту единицу за $5.00.

2025-02-10 * "Amazon Order 113-2233445-6677889" "WATER-BOTTLE"
Assets:Amazon:Clearing 21.11 USD
Income:Sales:Amazon -30.00 USD
Expenses:Marketplace:Amazon:Referral 4.50 USD
Expenses:Marketplace:Amazon:FBAFulfillment 4.24 USD
Expenses:Marketplace:Amazon:LowInventoryLevel 0.15 USD
Assets:Inventory:SKU:WATER-BOTTLE -1 SKU:WATER-BOTTLE {5.00 USD}
Expenses:COGS:Inventory 5.00 USD

Почему баланс: $30 продажи зачисляются в Income. Сборы ($4.50 + $4.24 + $0.15) и COGS ($5.00) списываются в расходы. Чистый денежный поток от продажи, $21.11, дебетируется в Assets:Amazon:Clearing. Инвентарь уменьшается на одну единицу, а соответствующая стоимость списывается как расход.

3. Запишите выплату

Когда Amazon переводит вам средства, операция проста: переводим деньги из «кошелька» Amazon на реальный банковский счёт.

2025-02-15 * "Amazon Payments" "Settlement disbursement"
Assets:Bank:Checking 2,500.00 USD
Assets:Amazon:Clearing -2,500.00 USD

После каждой выплаты баланс Assets:Amazon:Clearing должен стремиться к нулю. Используйте итоги отчётов за диапазон дат, чтобы находить расхождения.

4. Хранение, надбавка за старый инвентарь и сервис размещения inbound

Эти сборы часто появляются отдельными строками в файлах расчётов. Записывайте их как прямые списания из вашего clearing‑счёта.

2025-03-15 * "Amazon FBA Storage Fees" "Monthly + aged inventory"
Expenses:Marketplace:Amazon:Storage:Monthly 125.40 USD
Expenses:Marketplace:Amazon:Storage:Aged 35.20 USD
Assets:Amazon:Clearing -160.60 USD

2025-03-20 * "FBA Inbound Placement Service" "Shipment split optimization"
Expenses:Marketplace:Amazon:InboundPlacement 62.00 USD
Assets:Amazon:Clearing -62.00 USD

5. Возвраты и возвраты средств

Когда клиент возвращает товар, вы отменяете продажу и COGS, а также учитываете любые несгораемые сборы. Для этой продажи $30 предположим, что Amazon удерживает $0.30 административного сбора за возврат.

2025-03-02 * "Refund 113-2233445-6677889" "Refunded WATER-BOTTLE"
Assets:Amazon:Clearing -29.70 USD ; Чистый дебет
Income:Sales:Amazon 30.00 USD ; Отмена продажи
Expenses:Marketplace:Amazon:Other 0.30 USD ; Сбор за возврат
Assets:Inventory:SKU:WATER-BOTTLE 1 SKU:WATER-BOTTLE {5.00 USD}
Expenses:COGS:Inventory -5.00 USD ; Отмена COGS

Здесь вы дебетируете Income, чтобы отменить доход, и кредитуете Expenses:COGS, чтобы отменить себестоимость. Товар возвращается в инвентарь. Чистый эффект на Assets:Amazon:Clearing — сумма, возвращённая клиенту.


Быстрый импорт и сверка

Ключ к эффективности — сопоставление. Экспортируйте Date Range Report или Flat File V2 из Seller Central. Затем создайте простое сопоставление столбца transaction-type Amazon с вашими расходными счетами:

  • OrderIncome:Sales:Amazon
  • CommissionExpenses:Marketplace:Amazon:Referral
  • FBA-fulfillment-feeExpenses:Marketplace:Amazon:FBAFulfillment
  • StorageFeeExpenses:Marketplace:Amazon:Storage:Monthly
  • AgedInventorySurchargeExpenses:Marketplace:Amazon:Storage:Aged
  • InboundPlacementFeeExpenses:Marketplace:Amazon:InboundPlacement
  • LowInventoryLevelFeeExpenses:Marketplace:Amazon:LowInventoryLevel

Для желающих автоматизировать процесс, экосистема импорта Beancount (например, beancount-import) отлична. Вы задаёте правила один раз, и файлы расчётов автоматически загружаются в ваш журнал.


Практические рекомендации, экономящие деньги (и клавиши) 💰

  • Избегайте сбора за низкий уровень запасов: Следите за историческими днями поставки. Держите достаточный буфер, но не переусердствуйте, чтобы не вызвать надбавку за старый инвентарь.
  • Воспользуйтесь преимуществами New Selection: При запуске новых товаров подключайте их к программе New Selection, чтобы получить временное освобождение от сборов за обработку возвратов и размещение inbound.
  • Проверяйте реферальные ставки перед ценообразованием: Небольшое изменение цены может перевести ваш товар в более высокий тарифный диапазон, существенно снизив чистую маржу. Уточняйте ставки и минимумы для вашей категории.
  • Сверяйте ежемесячно: Загружайте отчёт за диапазон дат каждый месяц. Эта простая привычка помогает быстро обнаружить изменения в сборах Amazon и поддерживать журнал в надёжном состоянии.

Шаблон Beancount, готовый к использованию

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

  • Умный план счетов для Amazon.
  • Инвентарь, настроенный как товары для автоматического расчёта COGS по партиям.
  • Примеры записей для продаж, сборов, хранения, возвратов и выплат.

➡️ Скачать шаблон
(Откройте файл в редакторе, замените примерные SKU и суммы, и начните импортировать строки расчётов.)


Ссылки и дополнительная литература


Автоматизация и интеграция

Если вы хотите соединить Beancount с другими инструментами (например, Google Sheets, Power BI или собственными скриптами), рассмотрите возможность экспорта данных из Beancount в CSV и последующей обработки. Beancount поддерживает пользовательские скрипты на Python, что позволяет создавать кастомные отчёты, визуализации и даже автоматические уведомления о предстоящих сборах.


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

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

Что такое кредиторская задолженность? Руководство по Beancount для отслеживания счетов поставщиков в простом тексте

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

Кредиторская задолженность (AP) — это деньги, которые ваш бизнес должен своим поставщикам за товары или услуги, которые вы уже получили, но ещё не оплатили. В бухгалтерском учёте AP классифицируется как текущее обязательство в балансе — сумма, обычно подлежащая выплате в течение следующего года, часто в течение 30–60 дней.

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

2025-08-20-what-is-accounts-payable


Краткое содержание

Прежде чем углубляться в детали, рассмотрим основные положения:

  • Accounts Payable (AP) — это ваши краткосрочные долги перед поставщиками. Вы найдёте его в разделе Liabilities вашего баланса.
  • Accrual vs. Cash: AP существует только при ведении книг на начисленной основе. Beancount полностью поддерживает начисленные процессы, а его веб‑интерфейс Fava корректно отображает ваши обязательства.
  • AP vs. AR: Просто: Payables — это то, что вы должны, а Receivables (AR) — это то, что другие должны вам.

Где находится AP в Beancount (и в Fava)

Чтобы начать отслеживание AP, сначала необходимо объявить счёт для него в вашем журнале. Стандартный вариант:

Liabilities:AccountsPayable

При желании можно создать субсчета для основных поставщиков (например, Liabilities:AccountsPayable:ForestPaintSupply).

В Fava этот счёт появится в Балансе под Liabilities. Кликнув по нему, вы сможете увидеть список всех открытых и оплаченных позиций, получив чёткое представление о своих обязательствах. Пример работы можно увидеть в публичном примере журнала Fava — public example ledger, где присутствует счёт Liabilities:AccountsPayable.


Структурные элементы Beancount, которые вам понадобятся

Надёжный процесс AP в Beancount опирается на несколько ключевых возможностей:

  1. Accounts: Основные счёта — Liabilities:AccountsPayable, денежный счёт, например Assets:Bank:Checking, и различные расходные счёта (например, Expenses:Supplies).
  2. Metadata: К любой транзакции можно добавить пары «ключ‑значение». Для AP обычно используют invoice:, due:, terms: и document:. Fava распознаёт ключ document: и автоматически создаёт кликабельную ссылку на прикреплённый файл, если настроена папка документов.
  3. Tags & Links: Используйте #tags (например, #ap) для удобной фильтрации и ^links (например, ^INV-10455) для программного связывания счёта и последующей оплаты. Это создаёт ясный, проверяемый след.
  4. Queries (BQL): Язык запросов Beancount, похожий на SQL (BQL), позволяет генерировать мощные отчёты, например список всех открытых обязательств, отсортированных по дате оплаты, прямо из командной строки с bean-query или на странице «Query» в Fava.

Основной рабочий процесс AP в Beancount

Управление AP в журнале включает два‑три ключевых шага: запись счёта, его оплата и, при необходимости, частичные выплаты или скидки.

1) Запись счёта поставщика (создаёт обязательство)

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

; Optionally set your documents folder in your main Beancount file:
option "documents" "documents"

2025-08-05 * "Forest Paint Supply" "Paint order INV-10455" ^INV-10455 #ap
invoice: "INV-10455"
due: "2025-09-04"
terms: "2/10, n/30"
document: "invoices/2025-08-05-forest-paint-INV-10455.pdf"
Expenses:Supplies:Paint 500.00 USD
Liabilities:AccountsPayable -500.00 USD

Эта запись делает две важные вещи:

  1. Немедленно признаёт расход — $500 в правильный период (август).
  2. Создаёт соответствующее обязательство — $500, показывая, что вы должны деньги Forest Paint Supply.

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

2) Оплата счёта (снимает обязательство)

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

a) Обычная оплата (без скидки):

2025-09-01 * "Forest Paint Supply" "Payment INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USD

Эта запись уменьшает ваш баланс AP на $500 и баланс текущего счёта на ту же сумму. Обязательство считается погашенным.

b) Скидка за досрочную оплату (например, «2/10, n/30»):

При условиях «2/10, n/30» вы можете получить 2 % скидку, если оплатите в течение 10 дней. Для нашего счёта 500это500 это 10 скидки. Есть два допустимых способа записи — выберите один и придерживайтесь его последовательно.

; Option 1: Record the discount as other income (a contra‑expense effect)
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Income:Discounts:Payables -10.00 USD

; Option 2: Reduce the original expense directly
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Expenses:Supplies:Paint -10.00 USD

В обоих случаях вы полностью погашаете обязательство 500,уменьшаетебанковскийсчётнафактическиуплаченные500, уменьшаете банковский счёт на фактически уплаченные 490 и учитываете выгоду $10.

3) Частичные выплаты

Функция ссылок в Beancount упрощает отслеживание частичных оплат.

; Invoice for $1,200
2025-08-10 * "Acme Parts" "INV-9001" ^INV-9001
invoice: "INV-9001"
due: "2025-09-09"
Expenses:Parts 1200.00 USD
Liabilities:AccountsPayable -1200.00 USD

; First payment of $400
2025-08-20 * "Acme Parts" "Payment INV-9001 (1/3)" ^INV-9001
Liabilities:AccountsPayable 400.00 USD
Assets:Bank:Checking -400.00 USD

; Final payment of $800
2025-09-05 * "Acme Parts" "Payment INV-9001 (final)" ^INV-9001
Liabilities:AccountsPayable 800.00 USD
Assets:Bank:Checking -800.00 USD

Благодаря общей ссылке ^INV-9001 во всех трёх транзакциях вы легко можете отфильтровать журнал и увидеть полную историю конкретного счёта и его оплат.


Полезные запросы (BQL)

Запускайте их во вкладке «Query» в Fava или из командной строки с bean-query.

Подсказка: Функция any_meta() отлично подходит для извлечения полей метаданных, таких как invoice: и document:, в результаты запросов.

Открытая AP по поставщикам (вид баланса):

SELECT payee, COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee
ORDER BY payee;

Открытая AP по счёту + дате оплаты:

SELECT payee,
any_meta('invoice') AS invoice,
any_meta('due') AS due,
COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee, invoice, due
ORDER BY due, payee;

Счета с прикреплёнными PDF:

SELECT date, payee, any_meta('invoice') AS invoice, any_meta('document') AS file
WHERE account "^Liabilities:AccountsPayable"
ORDER BY date DESC;

Где увидеть AP в Fava

  • Balance Sheet: Перейдите в Balance SheetLiabilitiesAccountsPayable, чтобы увидеть общий баланс и детализировать транзакции.
  • Journal: Отфильтруйте журнал по account:Liabilities:AccountsPayable или по конкретной ссылке, например ^INV-xxxx, чтобы проследить весь жизненный цикл счёта.
  • Documents Sidebar: При использовании метаданных document: и директивы option "documents" в боковой панели появится список связанных документов.

Оценка просроченной задолженности, оборота и влияния на денежный поток

  • График просрочки (Aging Schedule): Отчёт группирует открытые счета по времени их нахождения в открытом состоянии (1–30 дн., 31–60 дн., 60+ дн.). В Beancount проще всего выполнить запрос «Open AP by Invoice + Due Date», экспортировать результаты в CSV и распределить их по группам в таблице или небольшом скрипте Python.
  • Коэффициент оборота AP: Быстрая проверка того, как быстро вы оплачиваете поставщиков. Формула — Общие закупки у поставщиков ÷ Средняя AP. Показатель Days Payable Outstanding (DPO) приближённо равен 365 ÷ Коэффициент оборота.
  • Если нельзя оплатить вовремя: AP — это краткосрочный долг. Если поставщик соглашается на более длительный график, долг следует переклассифицировать из AP в долг по нотам (Notes Payable).
2025-10-01 * "Helix Industries" "Convert overdue AP to 12-month note" ^INV-1110
Liabilities:AccountsPayable 2000.00 USD
Liabilities:NotesPayable -2000.00 USD

Лучшие практики работы с AP в Beancount

  • Документы: Храните все счета в отдельной папке и указывайте её через option "documents".
  • Метаданные: Заполняйте invoice:, due: и terms: для каждой записи — это упрощает последующий анализ.
  • Теги и ссылки: Обязательно используйте #ap и уникальные ^‑ссылки, чтобы быстро находить и связывать связанные транзакции.
  • Регулярные проверки: Периодически просматривайте открытые обязательства в Fava, чтобы избежать неожиданной просрочки.

Пример записи «Счёт поставщика»

2023-04-15 * "Acme Corp" "Invoice #12345" ^INV-12345 #ap
invoice: "12345"
due: "2023-05-15"
terms: "Net 30"
document: "invoices/2023-04-15-acme-12345.pdf"
Expenses:OfficeSupplies 250.00 USD
Liabilities:AccountsPayable -250.00 USD

Пример частичной оплаты

2023-04-20 * "Acme Corp" "Partial payment for INV-12345" ^INV-12345
Liabilities:AccountsPayable 150.00 USD
Assets:Bank:Checking -150.00 USD

Пример полной оплаты

2023-04-30 * "Acme Corp" "Full payment for INV-12345" ^INV-12345
Liabilities:AccountsPayable 250.00 USD
Assets:Bank:Checking -250.00 USD

Пример записи со скидкой за досрочную оплату

2023-04-25 * "Acme Corp" "Early payment discount for INV-12345" ^INV-12345
Liabilities:AccountsPayable 250.00 USD
Assets:Bank:Checking -245.00 USD
Income:Discounts:Payables -5.00 USD

Пример переклассификации просроченной AP в долг по нотам

2023-05-01 * "Acme Corp" "Convert overdue AP to note" ^INV-12345
Liabilities:AccountsPayable 250.00 USD
Liabilities:NotesPayable -250.00 USD

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

option "documents" "documents"

2023-04-15 * "Acme Corp" "Invoice #12345" ^INV-12345 #ap
invoice: "12345"
due: "2023-05-15"
document: "invoices/2023-04-15-acme-12345.pdf"
Expenses:OfficeSupplies 250.00 USD
Liabilities:AccountsPayable -250.00 USD

Пример запроса открытой AP по поставщикам

SELECT payee, COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee
ORDER BY payee;

Пример запроса открытой AP по счёту и дате оплаты

SELECT payee,
any_meta('invoice') AS invoice,
any_meta('due') AS due,
COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee, invoice, due
ORDER BY due, payee;

Пример запроса всех PDF‑документов, связанных с AP

SELECT date, payee, any_meta('invoice') AS invoice, any_meta('document') AS file
WHERE account "^Liabilities:AccountsPayable"
ORDER BY date DESC;

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


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


© 2024 Beancount Community

Аутсорсинг бухгалтерии: Как делегировать финансовые задачи (для пользователей Beancount)

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

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

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

2025-08-19-accounting-outsourcing-how-to-hand-off-your-financial-tasks


Для кого это предназначено

Это руководство предназначено вам, если вы подходите к одному из следующих профилей:

  • Соло‑основатели, инди‑хакеры и консультанты, использующие Beancount и желающие освободить время от механических частей бухгалтерии, чтобы сосредоточиться на продукте или клиентах.
  • Инженеры, разбирающиеся в финансах, которым нужны жёсткие контрольные точки, версия истории и полная аудитируемость, но которые не хотят тратить выходные на импорт банковских выписок и сверку счетов.
  • Организации, мигрирующие от универсальных сервисов, которые теперь ставят во главу угла хранение данных и воспроизводимость. Недавние внезапные закрытия платформ, таких как Bench, подчеркнули важный урок: планы выхода и открытые форматы — не опция. (TechCrunch, KSV Advisory Report)

Beancount вкратце

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

  • Beancount – в основе двойная запись бухгалтерского учёта в виде простого текста. Вы пишете читаемые файлы реестра, коммитите их в Git‑репозиторий и используете компилятор для валидации и генерации финансовых отчётов. (GitHub)
  • Fava – изящный веб‑интерфейс для Beancount. Fava читает ваш файл реестра и предоставляет интерактивные балансы, отчёты о доходах, тренды, фильтры и мощный SQL‑подобный язык запросов. (Fava Demo)
  • beangulp – современный фреймворк для автоматизации импорта данных. Эволюция оригинального импортёра Beancount, beangulp позволяет писать надёжные импортёры, которые парсят CSV, OFX, QFX и даже PDF‑выписки, превращая сырые банковские данные в структурированные записи Beancount. (GitHub)

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


Что аутсорсить, а что оставлять себе

Ключ к эффективному делегированию — чёткое разделение труда. Ниже показано, как отделить тактическое выполнение от стратегической ответственности.

Отличные кандидаты для аутсорсинга

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

  • Сбор выписок и импорт: скачивание ежемесячных выписок, нормализация разных форматов (CSV, OFX, PDF) и запуск ваших beangulp‑импортёров. Включает поддержание правил импортёров, поскольку финансовые организации постоянно меняют форматы выписок.
  • Помощь в категоризации: построение эвристик и декларативных правил для классификации транзакций. При желании они могут использовать smart_importer для предсказания проводок на основе истории, но окончательный просмотр всегда остаётся за человеком.
  • Сверка и проверка целостности: тщательная работа по размещению balance‑утверждений, соответствующих вашим выпискам, расследованию расхождений и обеспечению отсутствия ошибок в реестре.
  • Прикрепление документов и чистота: получение счетов и чеков, привязка их к транзакциям с метаданными и аккуратное архивирование исходных документов в воспроизводимую структуру каталогов.
  • Закрытие месяца и отчётность: подготовка стандартного набора отчётов (P&L, Balance Sheet, Cash Flow) и предоставление представлений Fava или экспортов для управленческих обновлений.
  • Операции по дебиторской/кредиторской задолженности и подготовка к выплате зарплат: подготовка счетов к оплате, генерация инвойсов, погоня за поступлениями и подготовка файлов зарплаты для вашего окончательного обзора и утверждения.
  • Подготовка налогового пакета: в конце года — чистый пробный баланс, вспомогательные графики и все необходимые файлы для вашего CPA или налогового консультанта.

Остаётся в компании (вы сохраняете намерения и риски)

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

  • Проектирование плана счетов: структура и наименования аккаунтов отражают ваше видение бизнеса. Это ваша финансовая карта.
  • Ключевые бухгалтерские политики: решения о структуре компании, признании доходов, политиках капитализации — их долгосрочные финансовые и юридические последствия.
  • Окончательные утверждения: вы должны принимать окончательное решение о всех движениях денежных средств, включая платежи, выплаты зарплат и значительные журнальные записи.
  • Стратегическое финансовое планирование: прогнозирование, бюджетирование и определение того, что считается «хорошим» для вашего бизнеса, являются фундаментальными обязанностями владельца.

Рабочий процесс аутсорсинга, построенный на Beancount

Ниже описана структура совместной работы на базе Git.

1) Структура репозитория (пример)

Ваш репозиторий — единственный источник правды. Хорошо организованная структура делает процесс прозрачным и поддерживаемым.

/ledger
main.beancount # Главный файл реестра, включает остальные
accounts/ # Определение плана счетов
includes/ # Ежемесячные или ежегодные файлы транзакций
prices/ # Директивы цены для товаров/акций
metadata/ # Пользовательские метаданные
plugins/ # Пользовательские плагины Beancount
documents/ # Выписки, чеки, счета
/importers # Импортёры beangulp + правила
config.yaml
bank_x.py
card_y.py
/scripts
import.sh # Скрипт‑оркестратор импортёров
close_month.py # Скрипт закрытия месяца и проверки
/reports
monthly/
year_end/
/ops
runbook.md # Как запускать систему
checklist.md # Процедурные чек‑листы (например, закрытие месяца)
controls.md # Документация финансовых контролей

2) Еженедельный цикл

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

  1. Импорт — поставщик получает выписки и запускает beangulp‑импортёры, формируя новые транзакции.
  2. Категоризация — применяются правила, при необходимости – предложения smart_importer. Затем человеческий обзор исправляет неоднозначности.
  3. Сверка — добавляются balance‑утверждения, проверяется соответствие выпискам, расследуются различия. Использование директив pad должно быть редким и требовать объяснения.
  4. Документирование — к транзакциям привязываются соответствующие документы (чек, счет).
  5. Коммит и Pull Request — изменения фиксируются с описательными сообщениями, открывается PR для вашего обзора, позволяя увидеть точный diff изменений в книге.

3) Закрытие месяца (минимальный набор)

Закрытие — ключевая контрольная точка для обеспечения точности и получения надёжных отчётов.

  • Обновление директив price для валют и ценных бумаг.
  • Проверка открытых позиций: дебиторская/кредиторская задолженность, начисления, предоплаты, займы.
  • Убедитесь, что все balance‑утверждения проходят, нет других ошибок.
  • Тегирование коммита закрытием периода (например, 2025-08-close) и экспорт стандартных отчётов.
  • Публикация снимка Fava или предоставление защищённого URL за период.

4) Годовой пакет

Итог работы за год — аккуратно упакованный, аудируемый набор материалов для налогового консультанта: окончательный пробный баланс, вспомогательные графики по ключевым счетам (например, основные средства) и воспроизводимый скрипт, генерирующий все артефакты непосредственно из Git‑репозитория.


Безопасность и доступ (неделимые требования)

Профессиональный процесс ставит безопасность и владение данными на первое место.

  • Хранение данных в первую очередь — вы владеете приватным Git‑репозиторием. Поставщик работает из форка и отправляет Pull Request‑ы. Он никогда не должен хранить единственную копию вашего реестра.
  • Доступ к банкам — по возможности предоставляйте только права чтения. Если используете агрегатор, создайте отдельные учётные данные и задайте процесс их отзыва.
  • Секреты и шифрование — используйте GPG или age для шифрования чувствительных документов «на‑диске». Требуйте MFA во всех сервисах. Принцип наименьших привилегий.
  • Доступ к Fava — самостоятельно хостите Fava или запускайте локально (fava ledger.beancount) и делитесь доступом через защищённый туннель/VPN. Не размещайте его открыто в интернете.
  • План выхода — настоятельно требуйте «pull‑the‑cord»‑плейбук: передача всех скриптов, конфигураций и документации, гарантированный доступ к данным. Как показывают недавние события, поставщики могут исчезнуть в одночасье; ваши финансовые записи не должны застрять у них.

Как выглядят «хорошие» результаты (каждый месяц)

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

1. Чистый Pull Request, содержащий:

  • Все импортированные и проверенные транзакции за период.
  • diff новых/изменённых правил импортёров.
  • Коммиты, резюмирующие ключевые допущения или ручные корректировки.
  • 100 % зелёный статус всех balance‑утверждений, журнал подтверждающий, что каждый аккаунт сверён.
  • Ссылки в файле Beancount на все прикреплённые документы + отчёт о недостающих документах.
  • Обновлённые директивы price для инвестиций или валют.

2. Пакет управления, содержащий:

  • Стандартные отчёты: отчёт о прибылях и убытках, баланс, отчёт о движении денежных средств.
  • Ключевые метрики, такие как денежный запас (runway) и отклонения бюджета от факта.
  • Прямые ссылки на преднастроенные представления Fava для более глубокого интерактивного анализа.

Типы поставщиков (и когда они подходят)

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

  • Бухгалтер, знакомый с Beancount — идеален для базового рабочего процесса: регулярный импорт, категоризация, сверка и подготовка месячных отчётов.
  • Бутик‑бухгалтерская фирма — подойдёт, если нужны дополнительные услуги: управление дебиторской/кредиторской задолженностью, координация зарплат, консолидация нескольких юридических лиц или налоговая поддержка.
  • Фракционный контролёр/CFO — правильный выбор, когда нужен стратегический надзор: проектирование бухгалтерских политик, построение финансовых прогнозов, подготовка отчётности для совета и разработка внутренних контролей.

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


Вопросы для интервью поставщика Beancount‑аутсорсинга

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

  1. Какие импортёры beangulp вы лично создавали или поддерживали? Можете показать анонимные примеры?
  2. Будете ли вы поставлять воспроизводимые скрипты и runbook, или только конечные файлы?
  3. Как вы обеспечиваете целостность данных в процессе? (Ищите ответы про balance‑утверждения, чек‑листы проверки, возможно CI/CD‑линтинг).
  4. Используете ли вы smart_importer? Если да, как выглядит ваш процесс ревью и переопределения его предсказаний?
  5. Как вы предлагаете структурировать Git‑рабочий процесс (ветвление, шаблоны PR, конвенции сообщений коммитов)?
  6. Каков ваш план выхода? Что включает процесс передачи данных, чтобы не было блокировки?
  7. Как вы безопасно предоставляете доступ к Fava для совместных сессий с клиентом?

Простой пример ТЗ (Statement of Work), который можно скопировать

Используйте это как стартовую точку для договора.

Scope of Work
- Еженедельный импорт транзакций через beangulp; поддержка правил для всех подключенных финансовых институтов.
- Человеческая проверка категоризации транзакций. Использование smart_importer допускается, но записи не коммитятся без обзора.
- Еженедельная сверка с выписками, реализованная через `balance`‑утверждения. Примечания о различиях > $X будут предоставлены.
- Сбор документов для всех значимых транзакций; отчёт о недостающих документах ежемесячно.
- Процесс закрытия месяца, включающий обновление цен, чек‑лист начислений и предоставление ссылок на представления Fava.
- Подготовка годового пакета: пробный баланс, вспомогательные графики для CPA.

Deliverables
- Ежемесячный Pull Request с тегом "<YYYY-MM>-close", все проверки проходят.
- Обновления в папке `/ops`, включая `diff` для `runbook.md` и `controls.md`.
- Финальные отчёты в `/reports/monthly` с changelog‑сводкой.

Access & Security
- Вся работа выполняется в приватном Git‑репозитории, принадлежащем клиенту. Поставщику предоставляется отдельный пользователь, все изменения отправляются через Pull Request.
- Учётные данные предоставляются с правами только на чтение, где это возможно. Требуется MFA для всех общих сервисов.
- Чувствительные документы хранятся с использованием шифрования, предоставленного клиентом, и удаляются из систем поставщика после завершения контракта.

SLA & Cadence
- Еженедельный PR с сверёнными транзакциями подаётся каждый <день недели>.
- PR закрытия месяца подаётся до <N>-го рабочего дня следующего месяца.
- Стандартное время ответа на запросы — <X> рабочих часов; критические инциденты — <Y> часов.

Exit Clause
- По окончании контракта поставщик передаёт полный репозиторий, все скрипты, документацию и карту использованных учётных данных в течение <Z> рабочих дней. Включён 2‑часовой звонок передачи.

Советы, экономящие часы (и будущие боли)

  • Назначайте имена аккаунтам для сверки — структурируйте их так, чтобы включать институт и последние 4 цифры номера (например, Assets:Bank:Chase:Checking:1234). Упрощает отладку.
  • Устанавливайте balance‑утверждения на границах выписок — рассматривайте каждую банковскую выписку как проверяемый чек‑поинт. Это позволяет быстро локализовать ошибку.
  • Автоматизируйте обновление цен — используйте встроенные инструменты Beancount для получения рыночных цен и записи их директивой price. Критично для точных отчётов по инвестициям и валютам.
  • Шифруйте и храните документы в репозитории — используйте GPG/age и держите их рядом с соответствующими транзакциями, чтобы воспроизводить любые проверки позже.
  • Тестируйте импортёры в изоляции — перед запуском в продакшн проверяйте их на небольших наборов данных, чтобы убедиться в отсутствии регрессий.

Заключение

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

Бухгалтерские решения: 7 лучших способов вести бухгалтерию

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

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

Вот объективный гид по семи самым распространённым вариантам бухгалтерии — что они умеют, где у них слабости и когда современное решение вроде Beancount.io идеально подходит.

2025-08-16-accounting-solutions-the-top-7-ways-to-get-your-accounting-done


1) Excel

Это часто первая остановка на пути к бухгалтерии благодаря своей простоте и универсальной доступности.

  • Подходит для: Основателей‑строителей и DIY‑фондов, которым нужен полный контроль и которые уже умеют работать с таблицами.
  • Плюсы: Барьер входа практически нулевой, а тысячи бесплатных шаблонов доступны онлайн. Гибкость позволяет создавать кастомные финансовые модели и отслеживать уникальные рабочие процессы, которые не покрывают готовые программы.
  • Минусы: Самый большой недостаток — огромный объём ручной работы. Каждая операция должна вводиться и согласовываться вручную, что отнимает массу времени. Ещё хуже — легко допустить скрытую ошибку формулы или опечатку без каких‑либо защитных механизмов. Совместная работа и поддержание чистой аудиторской трассы неудобны без строгой дисциплины.
  • Лучше всего, если… вам нужен быстрый старт без лишних функций для очень простого бизнеса, и вы предельно внимательны к деталям.

2) Google Sheets

Облачный «кузен» Excel, Google Sheets предлагает те же базовые возможности с коллаборативным уклоном.

  • Подходит для: Команд, которым нужны простые общие таблицы для учёта доходов и расходов.
  • Плюсы: Встроенные облачные резервные копии и предельно простое совместное использование — основные преимущества. Работать можно с любого устройства через браузер, что удобно для мобильных команд.
  • Минусы: Страдает от тех же фундаментальных недостатков, что и Excel: тяжёлая ручная работа и высокий риск пользовательских ошибок. Также могут возникнуть проблемы совместимости с некоторыми шаблонами и дополнениями, ориентированными на экосистему Microsoft.
  • Лучше всего, если… ваша команда уже использует Google Workspace и вы готовы мириться с ограничениями ручной системы.

3) QuickBooks Online

Десятилетиями QuickBooks был выбором по умолчанию для малого бизнеса, ищущего специализированное бухгалтерское ПО.

  • Подходит для: Малых компаний, которым нужен «классический» опыт SMB‑программ с широкой экосистемой интеграций.
  • Плюсы: Фирменная функция — банковские ленты, автоматически импортирующие операции из банков и карт, резко сокращая ручной ввод данных. Платформа сразу предоставляет широкий набор финансовых отчётов и поддерживается огромным сообществом бухгалтеров и разработчиков.
  • Минусы: Несмотря на автоматический импорт, система всё равно требует еженедельного внимания для категоризации расходов и согласования счетов. Интерфейс может иметь крутую кривую обучения, а стоимость растёт с добавлением функций. Главное — создаётся vendor lock‑in, что усложняет экспорт финансовой истории при желании перейти к другому решению.
  • Примечание: Как отмечает QuickBooks, автоматические банковские ленты — ключевая функция, но вы всё равно отвечаете за проверку и категоризацию, необходимые для точных книг.

4) Xero

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

  • Подходит для: Владельцев бизнеса, которым нужен более современный UI, но те же базовые возможности, что и у QuickBooks Online.
  • Плюсы: Xero также имеет надёжные банковские ленты и мощные инструменты согласования, упрощающие сопоставление операций. Чистый дизайн часто хвалят пользователи, а большое количество бухгалтеров уже знакомы с платформой.
  • Минусы: На более дешёвых тарифах могут отсутствовать некоторые функции (например, ограничения на количество счетов‑фактур), что заставляет переходить на более дорогие планы, а дополнения увеличивают общую стоимость. Как и QBO, Xero требует вашего участия в финальной категоризации и проверке.
  • Примечание: По словам Xero, их автоматические банковские ленты подключаются к тысячам финансовых учреждений по всему миру, обеспечивая базовые рабочие процессы согласования.

5) Бухгалтеры (CPA)

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

  • Подходит для: Налоговой стратегии, сложных финансовых ситуаций, аудитов и разовых консультаций.
  • Плюсы: Хороший CPA даёт экспертные рекомендации по критическим решениям, таким как структура компании, оптимизация налогов и сложные бухгалтерские операции. Их надзор значительно снижает риск в вопросах с высоким финансовым воздействием.
  • Минусы: Наём CPA‑фирмы для ежедневного учёта слишком дорог для большинства малых предприятий. Чтобы они были эффективны, вам всё равно нужно предоставлять своевременные и упорядоченные финансовые записи.
  • В чём разница с бухгалтерами? Кратко: бухгалтеры записывают и упорядочивают исторические операции, а бухгалтеры‑CPA интерпретируют, отчитываются и консультируют на основе этих данных. (Investopedia, Intuit)

6) Традиционные бухгалтеры

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

  • Подходит для: Владельцев бизнеса, которым нужен человек, занимающийся рутиной учёта каждую неделю.
  • Плюсы: Человеческий надзор значительно уменьшает типичные ошибки категоризации, которые может пропустить только программное обеспечение. В конце каждого месяца они предоставляют чистый набор финансовой отчётности для вашего обзора.
  • Минусы: Этот вариант дороже, чем DIY‑программное обеспечение; месячные гонорары часто начинаются от нескольких сотен долларов. Сроки подготовки отчётов зависят от доступности и процесса вашего бухгалтера.
  • Реальность: Для многих малых компаний сочетание отличного бухгалтера для еженедельных задач и периодической поддержки CPA для налогов и стратегии — надёжная и эффективная комбинация. (Pioneer Accounting Group)

7) Beancount.io (Plain-Text Accounting, Supercharged)

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

  • Подходит для: Разработчиков, финансовых специалистов и внимательных основателей, которым нужна точность, прозрачность и автоматизация без «чёрных ящиков».
  • Что это: Beancount.io — платформа, построенная на открытой методологии Beancount. Весь ваш финансовый журнал хранится в виде читаемого человеком plain‑text, который платформа преобразует в анализ в реальном времени, хостит дашборды Fava и поддерживает AI‑ассистированные рабочие процессы.
  • Почему команды выбирают его:
    • Скриптуемость и аудит: Версионирование книг с помощью Git. Каждое изменение можно просмотреть в diff, как в коде.
    • Хостинг UI Fava: Мгновенно генерируются отчёты о прибылях и убытках, балансы и интерактивные графики прямо из вашего текстового журнала. Нет необходимости вручную собирать отчёты.
    • AI‑ассистент: Ускоряет категоризацию транзакций и обнаружение аномалий, оставляя окончательное одобрение за человеком.
    • Настоящая портативность: Ваши данные — простой текстовый файл. Вы можете экспортировать его в любой момент. Никакого vendor lock‑in.
  • Компромиссы: Есть кривая обучения, если вы никогда не работали с двойной записью в plain‑text формате. Подходит тем, кто ценит абсолютную точность и контроль выше «кнопочного» удобства.

Предпочитаете полностью открытый исходный код и самостоятельный хостинг?

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


Быстрое сравнение (на первый взгляд)

РешениеВременные затратыУровень автоматизацииЧеловеческая помощьКонтроль над данными
ExcelВысокиеНизкиеНетСредний
Google SheetsВысокиеНизкиеНетСредний
QuickBooks OnlineСредниеСредне‑высокиеПо желаниюНизкий
XeroСредниеСредне‑высокиеПо желаниюНизкий
Бухгалтеры (CPA)НизкиеВысокие (консультации)Средний
Традиционные бухгалтерыНизкиеВысокие (еженедельно)Средний
Beancount.ioНизко‑средниеВысокиеПо желаниюВысокий

Как выбрать

  • Хотите максимальный контроль, аудитируемость и рабочие процессы уровня разработчика? Выбирайте Beancount.io. Вы получаете хостинг дашбордов Fava, AI‑ассистент и свободу переносимости plain‑text.
  • Нужен кто‑то, кто «просто сделает»? Нанимайте бухгалтера и держите CPA на готове для налогов и стратегических вопросов.
  • Удобно в традиционных экосистемах SMB‑программ? QuickBooks или Xero — подходящие варианты, но планируйте время каждую неделю для проверки и согласования операций.
  • Тестируете воду при ограниченном бюджете? Таблицы могут подойти на короткое время. Рассматривайте их как ступеньку к реальной системе, а не как конечную цель.

Почему plain‑text бухгалтерия набирает популярность

Инструменты plain‑text бухгалтерии (PTA) вроде Beancount становятся популярными, потому что они подчёркивают воспроизводимость, контроль версий и прозрачность. Эти ценности близки инженерам, дата‑сайентистам и финансовым специалистам. Если вы считаете, что книги вашей компании должны быть так же ясны и проверяемы, как ваш код, вы в правильном месте. (plaintextaccounting.org)

Готовы увидеть ваш журнал в действии?

Создайте бесплатное рабочее пространство Beancount.io, импортируйте небольшую выборку транзакций за прошлый месяц и откройте хостинг‑дашборд Fava. Вы сразу увидите отчёт о прибылях и убытках и баланс — затем сможете уточнить категории с помощью AI‑ассистента.

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

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

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

Что такое отчет о движении денежных средств?

2025-08-14-guide-to-cash-flow-statements

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

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

Зачем вашему бизнесу нужен отчет о движении денежных средств

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

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

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

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

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

Поддерживает решения о росте: Следует ли вам нанимать нового сотрудника? Арендовать новое оборудование? Ваш отчет о движении денежных средств помогает ответить на эти вопросы.

Три раздела отчета о движении денежных средств

Каждый отчет о движении денежных средств организован в три основные категории, каждая из которых рассказывает свою историю о вашем бизнесе:

1. Операционная деятельность

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

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

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

2. Инвестиционная деятельность

Этот раздел отслеживает денежные потоки, связанные с долгосрочными активами и инвестициями:

  • Покупка или продажа недвижимости, оборудования и оснастки
  • Приобретение или выбытие других предприятий
  • Покупка или продажа инвестиционных ценных бумаг
  • Ссуды, предоставленные другим организациям (и полученные выплаты)

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

3. Финансовая деятельность

Этот раздел показывает, как ваш бизнес привлекает капитал и возвращает его:

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

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

Как составить отчет о движении денежных средств

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

Косвенный метод (рекомендуется для малого бизнеса)

Шаг 1: Начните с чистой прибыли Начните с чистой прибыли из вашего отчета о прибылях и убытках за период.

Шаг 2: Корректировка на неденежные статьи Добавьте обратно расходы, которые не связаны с выплатами денежных средств:

  • Амортизация
  • Убытки от продажи активов (или вычтите прибыль)

Шаг 3: Корректировка на изменения в оборотном капитале

  • Добавьте уменьшение (или вычтите увеличение) дебиторской задолженности
  • Вычтите увеличение (или добавьте уменьшение) запасов
  • Добавьте увеличение (или вычтите уменьшение) кредиторской задолженности

Например, если дебиторская задолженность увеличилась на 2 000 долларов США, вычтите эту сумму из чистой прибыли, потому что вы зафиксировали выручку, но еще не получили денежные средства.

Шаг 4: Добавьте инвестиционную деятельность Перечислите все денежные потоки от покупки или продажи долгосрочных активов и инвестиций.

Шаг 5: Добавьте финансовую деятельность Запишите все денежные потоки от операций с заемным капиталом, акционерным капиталом и дивидендами.

Шаг 6: Рассчитайте чистое изменение денежных средств Сложите чистые денежные средства из всех трех разделов. Это должно равняться изменению вашего остатка денежных средств между началом и концом периода.

Прямой метод

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

Поступления денежных средств:

  • Поступления от клиентов
  • Полученные проценты
  • Другие операционные поступления денежных средств

Выплаты денежных средств:

  • Выплаты поставщикам
  • Выплаты сотрудникам
  • Выплаченные проценты
  • Уплаченные налоги на прибыль
  • Другие операционные выплаты денежных средств

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

Реальный пример: небольшая пекарня

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

Операционная деятельность:

  • Чистая прибыль: 4 000 долларов США
  • Добавить: Амортизация: 500 долларов США
  • Увеличение дебиторской задолженности: -1 000 долларов США (клиенты покупали в кредит)
  • Уменьшение запасов: 800 долларов США (использованы запасы)
  • Увеличение кредиторской задолженности: 600 долларов США (задержаны некоторые выплаты поставщикам)
  • Чистые денежные средства от операций: 4 900 долларов США

Инвестиционная деятельность:

  • Покупка новой печи: -3 000 долларов США
  • Чистые денежные средства от инвестиций: -3 000 долларов США

Финансовая деятельность:

  • Выплата основной суммы долга по кредиту на пекарню: -500 долларов США
  • Чистые денежные средства от финансирования: -500 долларов США

Чистое увеличение денежных средств: 1 400 долларов США

Если вы начали месяц с 5 000 долларов США в банке, вы закончите его с 6 400 долларами США.

Лучшие практики использования вашего отчета о движении денежных средств

1. Регулярно просматривайте его

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

2. Создавайте прогнозы движения денежных средств

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

3. Следите за ключевыми показателями

Обратите особое внимание на:

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

4. Сравнивайте периоды

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

5. Согласовывайте с другими отчетами

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

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

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

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

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

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

Смешивать основную сумму и проценты: Выплата процентов — это операционная деятельность; выплаты основной суммы долга по кредитам — это финансовая деятельность. Держите их отдельно.

Загрузите свой бесплатный шаблон отчета о движении денежных средств

Чтобы помочь вам начать отслеживать движение денежных средств вашего бизнеса, мы создали бесплатный, простой в использовании шаблон Excel, который включает в себя:

  • Предварительно отформатированные разделы для операционной, инвестиционной и финансовой деятельности
  • Автоматические расчеты
  • Ежемесячные и годовые представления
  • Настраиваемые строки для вашего конкретного бизнеса
  • Профессиональное форматирование для презентаций кредиторам или инвесторам

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

Принятие мер: ваши следующие шаги

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

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

  2. Установите график просмотра: Зарезервируйте время в своем календаре для просмотра движения денежных средств, по крайней мере, ежемесячно.

  3. Создайте подушку денежных средств: Стремитесь поддерживать 3-6 месяцев операционных расходов в денежных резервах.

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

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

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

Итог

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

Помните: выручка — это тщеславие, прибыль — это благоразумие, но денежные средства — это король. Начните отслеживать свои сегодня.


У вас есть вопросы о создании или интерпретации вашего отчета о движении денежных средств? Оставьте комментарий ниже, и мы поможем вам найти ответы.

Бухгалтерский цикл, стиль Beancount

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

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

Мы посмотрим, как подход Beancount, ориентированный на текст, устраняет утомительные шаги, что следует автоматизировать и какие отчёты дают самое ясное представление о вашем финансовом здоровье. 🧑‍💻

2025-08-13-the-accounting-cycle-beancount-style


TL;DR: Рабочий процесс Beancount

  • Capture & Journal: Записывайте каждую операцию как чистую двойную запись в вашем текстовом файле .beancount.
  • Validate & Reconcile: Используйте утверждения balance для подтверждения соответствия вашего реестра банковским выпискам и запускайте bean-check для обнаружения ошибок.
  • Review: Сгенерируйте необработанный пробный баланс для быстрой проверки.
  • Adjust: Проводите записи для начислений, отложений, амортизации и других статей периода.
  • Re-review: Проверьте скорректированный пробный баланс, чтобы убедиться, что всё правильно.
  • Publish & Close: Сгенерируйте отчёт о прибылях и убытках, баланс и отчёт о движении денежных средств. Закрытие книг в Beancount необязательно, так как отчёты учитывают даты.

Эту схему можно визуализировать так:


Шаг 1: Захват и запись транзакций

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

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

2025-08-10 * "Walmart" "Purchase of office supplies"
Expenses:Office:Supplies 45.67 USD
Assets:Bank:Checking -45.67 USD
  • Pro‑Tip: Используйте теги вроде #project-phoenix или #client-acme, чтобы добавить измерения к вашим данным. Это делает запросы и отчёты невероятно гибкими позже.

Гигиена сверки ✅

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

2025-08-31 balance Assets:Bank:Checking  12345.67 USD

Если сумма всех транзакций, влияющих на Assets:Bank:Checking к этой дате, не равна 12345.67 USD, Beancount выдаст ошибку. Эта простая директива превращает ваш реестр в самопроверяющийся документ.

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


Шаг 2: «Постинг в реестр» (Бесплатно !)

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

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


Шаг 3: Подготовка необработанного пробного баланса

Прежде чем вносить корректировки, нужен быстрый чек «всё сходится?». Пробный баланс — простой отчёт, в котором перечислены все счета и их итоговые остатки. Сумма всех дебетовых остатков должна равняться сумме всех кредитовых.

Сгенерировать его можно простой командой:

bean-query main.beancount \
"SELECT account, sum(position) GROUP BY 1 ORDER BY 1"

Или, для более визуального подхода, откройте ваш реестр в Fava (веб‑интерфейс Beancount) и перейдите к отчёту «Trial Balance». Ищите аномалии — активный счёт с кредитовым остатком или расходный счёт с неожиданным значением.


Шаг 4: Проводка корректировочных записей

Корректировочные записи критичны для точной отчётности по начисленному принципу. Они гарантируют, что доходы признаются в момент их получения, а расходы — в момент их возникновения, независимо от движения наличных.

Распространённые корректировки:

  • Начисления: Запись дохода, который уже заработан, но ещё не выставлен в счёт, или расхода, который уже понесён, но ещё не оплачен.
  • Отложения: Обработка предоплат. Если клиент заплатил вам за год услуг заранее, вы фиксируете это как обязательство (Liabilities:UnearnedRevenue) и признаёте 1/12 части как доход каждый месяц.
  • Неденежные статьи: Запись таких вещей, как амортизация активов.
  • Коррекции: Исправление ошибок или учёт пропущенных пунктов из банковских выписок, например небольших процентов.

Пример: Начисление дохода

Вы завершили проект 31 августа, но счёт отправите в сентябре. Чтобы признать доход в правильном периоде (август), делаем корректирующую запись:

2025-08-31 * "Accrue revenue for client project #1042"
Assets:AccountsReceivable 3000.00 USD
Income:Consulting -3000.00 USD

Пример: Учёт амортизации

У вашей компании есть график амортизации активов. В конце периода вы фиксируете расход:

2025-12-31 * "Annual depreciation on computer equipment"
Expenses:Depreciation 4800.00 USD
Assets:Fixed:AccumulatedDepreciation -4800.00 USD

Шаг 5: Запуск скорректированного пробного баланса и проверка

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

Это также отличное время для запуска встроенной проверки Beancount:

bean-check main.beancount

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


Шаг 6: Публикация финансовой отчётности 📊

Вот награда. Используя цифры из скорректированного пробного баланса, вы можете генерировать ключевые финансовые отчёты. Самый простой способ — Fava, который предоставляет интерактивные отчёты с возможностью детализации «из коробки».

  • Отчёт о прибылях и убытках (P&L): Показывает ваши доходы и расходы за период, в результате чего получаете чистую прибыль или убыток.
  • Баланс: Снимок того, что вы владеете (Активы) и что должны (Обязательства), а также вашего собственного капитала (Equity) на конкретную дату.
  • Отчёт о движении денежных средств: Сводит начальный и конечный денежный остаток, показывая, откуда пришли деньги и куда они ушли.

Для кастомных отчётов используйте язык запросов Beancount (BQL). Пример запроса месячного отчёта о доходах:

-- P&L for August 2025
SELECT account, sum(position)
WHERE account '^(Income|Expenses)'
AND date >= 2025-08-01 AND date <= 2025-08-31
GROUP BY account ORDER BY account;

Шаг 7: Закрытие книг (по желанию)

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

В Beancount этот шаг обычно не нужен. Отчёты Fava учитывают даты; если вы запросите P&L за 2025 г., он использует только данные 2025 г. Балансы не «перетекают». Большинство пользователей просто оставляют балансы как есть.

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


Практический чек‑лист месячного закрытия

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

  • Capture: Импортируйте все банковские и кредитные транзакции. Вручную введите любые наличные расходы или отдельные операции.
  • Reconcile: Добавьте утверждения balance для всех банковских счетов, кредитных карт и кредитов, сопоставив их с выписками.
  • Review: Просмотрите необработанный пробный баланс в Fava. Исследуйте любые странные или неожиданные остатки. Проверьте наличие просроченных неоплаченных счетов (Assets:AccountsReceivable) или долгов (Liabilities:AccountsPayable).
  • Adjust: Запишите начисления доходов/расходов, отложенный доход и любые необходимые исправления.
  • Validate: Запустите bean-check. Проверьте окончательный скорректированный пробный баланс.
  • Publish: Сгенерируйте P&L и Баланс. Отправьте их заинтересованным сторонам или сохраните для архивов.
  • Wrap-up: При необходимости выполните запись закрытия. Архивируйте копию файлов .beancount за период.

Почему Beancount выделяется в бухгалтерском цикле

  • Прозрачность и проверяемость: Ваш реестр — это текстовый файл. Вы можете использовать git для контроля версий финансовой истории, просматривать изменения через diff и сотрудничать с бухгалтером в ясном, однозначном формате.
  • Полный контроль: Вы определяете план счетов. Вы не привязаны к структуре поставщика программного обеспечения. Ваши данные принадлежат вам навсегда, в открытом формате.
  • Непревзойдённая мощь: Комбинация SQL‑подобных запросов (BQL) и богатого веб‑интерфейса (Fava) даёт вам возможность резать, нарезать и глубоко понимать ваши финансовые данные.

Готовые фрагменты для начала

Простой план счетов:

option "title" "My Personal Ledger"
option "operating_currency" "USD"

;; --- Accounts ---
1970-01-01 open Assets:Bank:Checking
1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:CreditCard
1970-01-01 open Liabilities:UnearnedRevenue
1970-01-01 open Equity:Owner:Capital
1970-01-01 open Equity:Retained-Earnings
1970-01-01 open Income:Consulting
1970-01-01 open Expenses:Office:Supplies
1970-01-01 open Expenses:Software
1970-01-01 open Expenses:Depreciation

Полезный запрос BQL:

-- Find all customers with an outstanding balance
SELECT payee, sum(position)
WHERE account = 'Assets:AccountsReceivable'
GROUP BY payee
HAVING sum(position) > 0
ORDER BY sum(position) DESC;

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

Понимание дебиторской задолженности (руководство по Beancount)

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

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

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

2025-08-12-understanding-accounts-receivable


TL;DR

Дебиторская задолженность (ДЗ) — это деньги, которые клиенты вам должны за уже поставленные товары или оказанные услуги. Это текущий актив в вашем балансе, центральный элемент начислительного учёта и ключевой драйвер денежного потока бизнеса. Вы можете чисто отслеживать ДЗ в Beancount, используя субсчета клиентов, связывая счета с платежами через ^links и выполняя несколько простых запросов. Чтобы измерить скорость сбора, можно рассчитать оборот ДЗ и дни продаж в работе (DSO). Для управления риском можно использовать резерв под сомнительные долги.


Что такое дебиторская задолженность?

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

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

Дебиторская задолженность vs. Кредиторская задолженность (кратко)

  • ДЗ = деньги, должные вам (это актив).
  • КЗ = деньги, которые вы должны другим (это обязательство).

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

Концептуально жизненный цикл дебиторской задолженности выглядит так:

  1. Выставление счета (кредитная продажа): При отправке счета вы увеличиваете свои активы (конкретно ДЗ) и признаёте полученный Income.
  2. Получение наличных: Когда клиент платит, вы увеличиваете один актив (счёт Assets:Bank) и уменьшаете другой (Assets:AR). Чистый эффект для всех активов = 0, но позиция наличных улучшается.
  3. Скидки или кредит‑ноты: При предоставлении скидки за раннюю оплату или выпуске кредит‑ноты вы уменьшаете баланс ДЗ клиента и компенсируете это расходом на скидку или уменьшением выручки (контр‑выручка).
  4. Списания безнадёжных долгов: К сожалению, не все счета оплачиваются. Для учёта этого можно создать резерв под сомнительные долги (контр‑актив, уменьшающий стоимость ДЗ) и соответствующий расход по безнадёжным долгам. Позже можно списать конкретный непогашенный счёт против этого резерва.

Моделирование ДЗ в Beancount

Beancount — это система бухгалтерского учёта в виде простого текста, основанная на двойной записи, идеально подходящая для отслеживания ДЗ. Его использование tags (начинаются с #), links (начинаются с ^) и SQL‑подобного языка запросов (bean-query) делает весь процесс ДЗ прозрачным, проверяемым и скриптуемым.

Предлагаемая структура счетов

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

Assets:AR
Assets:AR:Clients:<Name>
Assets:AR:Allowance ; контр‑активный счёт

Income:Sales
Income:Contra:SalesDiscounts ; альтернатива счёту расходов

Expenses:SalesDiscounts
Expenses:BadDebt

1. Запись кредитной продажи (выставление счета)

Когда вы отправляете счёт клиенту, фиксируете его в журнале.

2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar #client:acme
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD
  • ^INV-2025-045 — уникальная ссылка, которая свяжет этот счёт с будущими платежами.
  • document: — метаданные, позволяющие Fava (веб‑интерфейсу Beancount) отобразить кликабельную ссылку непосредственно на PDF‑счёт.

2. Запись полной оплаты

Когда Acme Co. полностью оплачивает счёт, вы закрываете их дебиторскую задолженность.

2025-07-25 * "Acme Co." "Payment for INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

Использование той же ссылки ^INV-2025-045 создаёт чёткую аудиторскую цепочку между счётом и оплатой.

3. Частичные оплаты

Если клиент вносит частичную оплату, процесс тот же. Ссылка сохраняет связь.

2025-07-20 * "Acme Co." "Partial payment INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 400.00 USD
Assets:AR:Clients:Acme-Co -400.00 USD

Запрос по ^INV-2025-045 покажет оригинальный счёт 1200иэтучастичнуюоплату1200 и эту частичную оплату 400, оставив баланс $800.

4. Скидка за раннюю оплату

Допустим, вы предлагаете 2 % скидку на счёт $1000 при ранней оплате.

2025-07-10 * "Acme Co." "2% early-payment discount on INV-2025-046" ^INV-2025-046 #ar
Assets:Bank:Checking 980.00 USD
Expenses:SalesDiscounts 20.00 USD
Assets:AR:Clients:Acme-Co -1000.00 USD

Здесь вы закрываете полную дебиторскую задолженность 1000,фиксируетеполученные1000, фиксируете полученные 980 и списываете $20 скидки как расход. Примечание: многие журналы рассматривают скидки как контр‑выручку, а не как расход. Выбор метода зависит от политики компании, главное — консистентность.

5. Учёт налога с продаж

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

2025-07-01 * "Acme Co." "INV-2025-047 · Hardware + tax" ^INV-2025-047 #ar
invoice: "2025-047"
due: "2025-07-31"
Assets:AR:Clients:Acme-Co 1100.00 USD
Income:Sales -1000.00 USD
Liabilities:Tax:Sales -100.00 USD

Вы выставляете счёт 1100,признаётевыручку1100, признаёте выручку 1000 и обязуетесь уплатить $100 налогов.

6. Списание безнадёжных долгов (метод резерва)

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

Шаг 1: Оценка и создание резерва (например, в конце года)
Исходя из исторических данных, вы оцениваете процент ДЗ, который может стать безнадёжным.

2025-12-31 * "Allowance for doubtful accounts (2% of AR)"
Expenses:BadDebt 300.00 USD
Assets:AR:Allowance -300.00 USD

Создаётся контр‑актив Assets:AR:Allowance, уменьшающий балансовую стоимость всех дебиторских задолженностей.

Шаг 2: Списание конкретного безнадёжного счёта
Когда становится ясно, что счёт не будет оплачен, вы списываете его против резерва.

2026-03-05 * "Write-off INV-2025-049 for Insolvent Client" ^INV-2025-049 #ar
Assets:AR:Allowance 1200.00 USD
Assets:AR:Clients:Insolvent-Client -1200.00 USD

Обратите внимание, что эта операция не влияет на расходы — расход уже был признан при создании резерва.


Минимальная отчётность и запросы

Быстрые «снимки» ДЗ можно получить через Fava или bean-query.

Открытая дебиторская задолженность по клиентам

SELECT account, SUM(position)
WHERE account '^Assets:AR'
GROUP BY account
ORDER BY account;

Журнал активности ДЗ за период

JOURNAL
WHERE account '^Assets:AR'
AND date >= 2025-07-01 AND date < 2025-08-01;

Ключевые метрики ДЗ (с быстрыми формулами)

Для расчётов удобно экспортировать необходимые цифры (продажи за период, начальные/конечные балансы ДЗ) через bean-query, а затем выполнять вычисления в таблице или скрипте. Это сохраняет журнал чистым, а расчёты — явными.

Оборот ДЗ

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

Оборот ДЗ=Чистые кредитные продажиСредняя ДЗ\text{Оборот ДЗ} = \frac{\text{Чистые кредитные продажи}}{\text{Средняя ДЗ}}

DSO (Days Sales Outstanding)

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

DSO=(Дебиторская задолженностьОбщие кредитные продажи)×Количество дней\text{DSO} = \left(\frac{\text{Дебиторская задолженность}}{\text{Общие кредитные продажи}}\right) \times \text{Количество дней}

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


Простой стартовый файл Beancount (копировать/вставить)

; --- Accounts ---------------------------------------------------------------
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Assets:AR
1970-01-01 open Assets:AR:Clients:Acme-Co
1970-01-01 open Assets:AR:Allowance
1970-01-01 open Income:Sales
1970-01-01 open Expenses:SalesDiscounts
1970-01-01 open Expenses:BadDebt
1970-01-01 open Liabilities:Tax:Sales USD
; ---------------------------------------------------------------------------

; Пример счета
2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD

; Получена оплата
2025-07-25 * "Acme Co." "Payment INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

Практические советы для здоровой ДЗ

  • Устанавливайте чёткие условия: Указывайте дату оплаты, штрафы за просрочку и условия скидки за раннюю оплату в каждом счёте.
  • Связывайте всё: Используйте последовательные ^INV-... ссылки, чтобы соединять счета, платежи и кредит‑ноты в единую аудиторскую цепочку.
  • Прикрепляйте документы: Метаданные document: позволяют привязывать PDF‑счета, заказы и контракты.
  • Проверяйте ежемесячно: Просматривайте отчёт открытой ДЗ минимум раз в месяц и связывайтесь с просроченными клиентами. Следите за тенденциями оборота ДЗ и DSO, чтобы заранее выявлять проблемы.

Дополнительные материалы (использованные источники)