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

69 постов с тегом "Financial Management"

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

Beancount для владельцев малого бизнеса

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

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

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

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

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

🧾 Что такое Beancount?

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

Вот базовая транзакция:

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

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

📌 Почему бухгалтерия важна (и почему Beancount)

  • Вам это нужно для налогов
  • Вам это нужно для ясности
  • Вам это нужно для финансирования
  • Вам это нужно, чтобы рано выявлять ошибки

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

🪜 8 шагов, чтобы начать вести собственную бухгалтерию с Beancount

1. Разделяйте бизнес- и личные финансы

Откройте отдельный расчетный счет и кредитную карту для бизнеса. Отразите это в Beancount:

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

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

2. Используйте двойную запись

Каждое финансовое событие затрагивает два счета. Beancount обеспечивает этот баланс по умолчанию:

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

Это гарантирует математическую целостность вашей главной книги.

3. Выберите кассовый или метод начисления

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

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

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

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

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

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

4. Настройте свой план счетов

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

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

Адаптируйте их под свой бизнес. Сохраняйте последовательность и описательность.

5. Категоризируйте транзакции (с метаданными)

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

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

Добавьте теги или ссылки на квитанции:

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

6. Храните подтверждающие документы

Используйте Dropbox, Google Drive или папку receipts/. Затем свяжите их в Beancount так:

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

Аудиторы и налоговые специалисты будут вам благодарны.

7. Организуйте для вычетов

Четко отмечайте вычитаемые расходы:

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

Используйте пользовательские метаданные или теги, такие как #deductible, для отслеживания потенциальных списаний.

8. Сделайте это привычкой

Создайте рабочий процесс. Пример:

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

Или просто возьмите за правило "Beancount-пятницу" и сверяйте все еженедельно.

💼 Сделай сам или найми помощь?

Вы можете сделать все это самостоятельно с Beancount. Но даже продвинутым пользователям следует:

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

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

🛠️ Рекомендуемые инструменты для пользователей Beancount

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

✅ Заключительный пример: Полный поток транзакций

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

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

🎯 Резюме

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

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

Хотите загружаемый стартовый шаблон .bean для вашего бизнеса? Сообщите мне тип вашего бизнеса, и я создам шаблон, адаптированный специально для вас.

Почему так сложно управлять деньгами? Распространенные проблемы и пути к финансовой ясности

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

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

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

2025-06-04-why-is-managing-money-so-hard

1. Разрозненный Обзор: Единый Взгляд на Все Ваши Финансы

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

Распространенные Подходы:

  • Приложения-агрегаторы: Инструменты, такие как Empower (ранее Personal Capital), Mint, YNAB и Monarch, обещают объединить все ваши счета в одной панели управления.
  • Банковская Агрегация: Некоторые основные банки теперь предлагают функции для привязки и просмотра внешних счетов.
  • Ручные Электронные Таблицы: Многие по-прежнему прибегают к кропотливому ежемесячному обновлению электронной таблицы с балансами по каждому счету.
  • Индивидуальный Вход: Старомодная, пошаговая проверка остается распространенной, хотя и неэффективной, привычкой.

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

2. Битва за бюджет: Создание и соблюдение плана

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

Распространенные подходы:

  • Приложения для бюджетирования: YNAB (You Need A Budget), Mint, Simplifi и PocketGuard предлагают различные методологии, от бюджетирования с нулевой базой до автоматического отслеживания с оповещениями о расходах.
  • Электронные таблицы: Предпочтительный вариант для тех, кто хочет полной настройки, их используют около 40% людей, ведущих бюджет.
  • Метод денежных конвертов: Ощутимый способ контролировать расходы путем распределения наличных денег по конвертам для различных категорий трат.
  • Автоматизированные правила: Принцип "сначала заплати себе" путем автоперевода на сберегательный счет, или автоматизация оплаты счетов и расходование оставшихся средств.
  • Финансовый коучинг и онлайн-сообщества: Поиск экспертных советов или поддержки со стороны коллег на таких платформах, как Reddit, для мотивации и получения советов.

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

3. Тайна пропавших денег: Отслеживание доходов и расходов

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

Распространенные подходы:

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

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

4. Дилемма долга: Стратегии погашения

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

Распространенные подходы:

  • Инструменты планирования погашения долга: Приложения, такие как Debt Payoff Planner или Undebt.it, помогают визуализировать графики погашения, используя стратегии, например, долговой снежный ком (погашение сначала наименьших остатков) или долговая лавина (сначала погашение с наивысшими процентами).
  • Консолидация и рефинансирование: Получение нового кредита с более низкой процентной ставкой или использование кредитной карты с 0 % годовых для перевода баланса с целью объединения нескольких долгов.
  • Применение стратегии вручную: Применение метода снежного кома или лавины с использованием электронных таблиц или простых списков.
  • Автоматические дополнительные платежи и округления: Настройка автоматических дополнительных платежей или использование приложений, которые направляют сдачу от покупок на погашение долга.
  • Сообщества поддержки: Онлайн-форумы, где люди делятся прогрессом и находят мотивацию.

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

5. Препятствие на пути к большой цели: Накопления на крупную покупку

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

Распространенные подходы:

  • Целевые сберегательные счета: Открытие отдельных счетов, помеченных для конкретных целей (например, "Фонд на дом"). Многие онлайн-банки предлагают "корзины" или "копилки" для этого.
  • Автоматизация: Настройка автоматических переводов с текущего счета на целевые сберегательные счета в каждую зарплату.
  • Приложения для отслеживания целей: Некоторые финансовые приложения позволяют устанавливать цели и визуализировать прогресс.
  • Общественные стратегии сбережений: Неформальные группы, такие как Ротационные сберегательные и кредитные ассоциации (РОСКА), распространены в некоторых культурах.
  • Использование неликвидных форм: Временное размещение денег в краткосрочные депозитные сертификаты (CD) или облигации для предотвращения легкого доступа.

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

6. Партнерская головоломка: Управление деньгами с кем-то еще

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

Распространенные подходы:

  • Совместные счета и общие карты: Распространенный метод для управления общими бытовыми расходами. Часто используется в системе «твое, мое, наше» с отдельными личными счетами.
  • Приложения для разделения расходов: Инструменты, такие как Honeydue, Tandem или Splitwise, предназначены для помощи парам или группам в отслеживании общих расходов и взаиморасчетах.
  • Электронные таблицы и регулярные «финансовые свидания»: Периодический совместный обзор финансов для обсуждения трат, счетов и целей.
  • Разделение обязанностей и выделение средств: Назначение конкретных финансовых задач каждому партнеру или выделение личных средств на расходы для уменьшения конфликтов.

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

7. Инвестиционный лабиринт: Отслеживание и понимание вашего портфеля

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

Распространенные подходы:

  • Приложения-агрегаторы портфелей: Сервисы, такие как Empower (Personal Capital) или Kubera, стремятся консолидировать инвестиционные данные из различных счетов.
  • Консолидация брокерских счетов: Минимизация количества платформ путем перевода старых счетов к одному брокеру.
  • Самостоятельные электронные таблицы: Использование таких инструментов, как Google Таблицы, с функциями (например, GOOGLEFINANCE) для ручного отслеживания активов и доходности.
  • Робо-советники: Использование панелей управления, предоставляемых автоматизированными инвестиционными сервисами.
  • Специализированные трекеры: Инструменты, такие как Sharesight, для детального отслеживания доходности, включая дивиденды, или CoinTracker для криптовалют.

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

На пути к финансовой ясности

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

Автоматизация расходов малого бизнеса с Beancount и ИИ

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

Владельцы малого бизнеса тратят в среднем 11 часов в месяц на ручную категоризацию расходов — это почти три полные рабочие недели в год, посвященные вводу данных. Опрос QuickBooks 2023 года показывает, что 68% владельцев бизнеса считают учет расходов самой разочаровывающей бухгалтерской задачей, но только 15% внедрили решения по автоматизации.

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

2025-05-28-how-to-automate-small-business-expense-categorization-with-plain-text-accounting-a-step-by-step-guide-for-beancount-users

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

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

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

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

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

Архитектура Beancount: где простота встречается с мощью

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

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

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

Создание вашего конвейера автоматизации

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

1. Настройка структуры Beancount

Сначала установите структуру ваших счетов и категорий:

2025-01-01 open Assets:Business:Checking
2025-01-01 open Expenses:Office:Supplies
2025-01-01 open Expenses:Software:Subscriptions
2025-01-01 open Expenses:Marketing:Advertising
2025-01-01 open Liabilities:CreditCard

2. Создание правил автоматизации

Вот скрипт Python, демонстрирующий автоматическую категоризацию:

import pandas as pd
from datetime import datetime

def categorize_transaction(description, amount):
rules = {
'ADOBE': 'Expenses:Software:Subscriptions',
'OFFICE DEPOT': 'Expenses:Office:Supplies',
'FACEBOOK ADS': 'Expenses:Marketing:Advertising'
}

for vendor, category in rules.items():
if vendor.lower() in description.lower():
return category
return 'Expenses:Uncategorized'

def generate_beancount_entry(row):
date = row['date'].strftime('%Y-%m-%d')
desc = row['description']
amount = abs(float(row['amount']))
category = categorize_transaction(desc, amount)

return f'''
{date} * "{desc}"
{category} {amount:.2f} USD
Liabilities:CreditCard -{amount:.2f} USD
'''

3. Обработка транзакций

Вот как выглядят автоматизированные записи в вашем файле Beancount:

2025-05-01 * "ADOBE CREATIVE CLOUD"
Expenses:Software:Subscriptions 52.99 USD
Liabilities:CreditCard -52.99 USD

2025-05-02 * "OFFICE DEPOT #1234 - PRINTER PAPER"
Expenses:Office:Supplies 45.67 USD
Liabilities:CreditCard -45.67 USD

2025-05-03 * "FACEBOOK ADS #FB12345"
Expenses:Marketing:Advertising 250.00 USD
Liabilities:CreditCard -250.00 USD

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

Достижение высокой точности с помощью передовых методов

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

Сопоставление шаблонов с помощью регулярных выражений

import re

patterns = {
r'(?i)aws.*cloud': 'Expenses:Cloud:AWS',
r'(?i)(zoom|slack|notion).*subscription': 'Expenses:Software:Subscriptions',
r'(?i)(uber|lyft|taxi)': 'Expenses:Travel:Transport',
r'(?i)(marriott|hilton|airbnb)': 'Expenses:Travel:Accommodation'
}

def regex_categorize(description):
for pattern, category in patterns.items():
if re.search(pattern, description):
return category
return None

Интеграция машинного обучения

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.naive_bayes import MultinomialNB
import re
from typing import List, Tuple

class ExpenseClassifier:
def __init__(self):
self.vectorizer = TfidfVectorizer()
self.classifier = MultinomialNB()

def parse_beancount_entries(self, beancount_text: str) -> List[Tuple[str, str]]:
"""Parse Beancount entries into (description, category) pairs."""
entries = []
for line in beancount_text.split('\n'):
# Look for transaction descriptions
if '* "' in line:
desc = re.search('"(.+)"', line)
if desc:
description = desc.group(1)
# Get the next line which should contain the expense category
next_line = next(filter(None, beancount_text.split('\n')[beancount_text.split('\n').index(line)+1:]))
if 'Expenses:' in next_line:
category = next_line.split()[0].strip()
entries.append((description, category))
return entries

def train(self, beancount_text: str):
"""Train the classifier using Beancount entries."""
entries = self.parse_beancount_entries(beancount_text)
if not entries:
raise ValueError("No valid entries found in training data")

descriptions, categories = zip(*entries)
X = self.vectorizer.fit_transform(descriptions)
self.classifier.fit(X, categories)

def predict(self, description: str) -> str:
"""Predict category for a new transaction description."""
X = self.vectorizer.transform([description])
return self.classifier.predict(X)[0]

# Example usage with training data:
classifier = ExpenseClassifier()

training_data = """
2025-04-01 * "AWS Cloud Services Monthly Bill"
Expenses:Cloud:AWS 150.00 USD
Liabilities:CreditCard -150.00 USD

2025-04-02 * "Zoom Monthly Subscription"
Expenses:Software:Subscriptions 14.99 USD
Liabilities:CreditCard -14.99 USD

2025-04-03 * "AWS EC2 Instances"
Expenses:Cloud:AWS 250.00 USD
Liabilities:CreditCard -250.00 USD

2025-04-04 * "Slack Annual Plan"
Expenses:Software:Subscriptions 120.00 USD
Liabilities:CreditCard -120.00 USD
"""

# Train the classifier
classifier.train(training_data)

# Test predictions
test_descriptions = [
"AWS Lambda Services",
"Zoom Webinar Add-on",
"Microsoft Teams Subscription"
]

for desc in test_descriptions:
predicted_category = classifier.predict(desc)
print(f"Description: {desc}")
print(f"Predicted Category: {predicted_category}\n")

Эта реализация включает:

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

Объединение обоих подходов

2025-05-15 * "AWS Cloud Platform - Monthly Usage"
Expenses:Cloud:AWS 234.56 USD
Liabilities:CreditCard -234.56 USD

2025-05-15 * "Uber Trip - Client Meeting"
Expenses:Travel:Transport 45.00 USD
Liabilities:CreditCard -45.00 USD

2025-05-16 * "Marriott Hotel - Conference Stay"
Expenses:Travel:Accommodation 299.99 USD
Liabilities:CreditCard -299.99 USD

Этот гибридный подход достигает замечательной точности за счет:

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

Технологический стартап внедрил эти методы для автоматизации учета расходов, сократив время ручной обработки на 12 часов в месяц при сохранении 99% точности.

Отслеживание влияния и оптимизация

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

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

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

Движение вперед

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

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

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

Основы бухгалтерского учета для продавцов Etsy с помощью Beancount

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

Аккуратно составленные книги учета лучше запутанных таблиц — особенно когда важен каждый цент.

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

2024-07-16-bookkeeping-basics-for-etsy-sellers-with-beancount

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

Почему бухгалтерский учет Etsy отличается

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

  • Повсеместные комиссии маркетплейса: Ваш окончательный доход — это то, что остается после того, как Etsy возьмет свою долю. Платы за размещение, транзакционные сборы, сборы за обработку платежей и расходы на рекламу — все это отнимает часть каждой продажи. Не отслеживая их по отдельности, вы не сможете узнать свою истинную прибыль.
  • Налог с продаж, контролируемый платформой: Etsy автоматически рассчитывает, собирает и перечисляет налог с продаж от вашего имени в большинстве штатов, что является огромным преимуществом для продавцов. Однако, если вы продаете на других каналах или имеете физическое присутствие в определенных штатах, у вас все еще могут быть собственные обязательства по уплате налога с продаж в связи с правилами "нексуса".
  • Гибкая частота выплат: В зависимости от ваших настроек и истории аккаунта Etsy может перечислять ваши средства ежедневно, еженедельно, раз в две недели или ежемесячно. Эта гибкость может сделать денежный поток непредсказуемым, особенно когда средства зарезервированы или задерживаются. (Etsy Help)
  • Более низкие пороги для формы 1099-K: Дни, когда можно было оставаться незамеченным налоговыми органами, прошли. Порог отчетности IRS для формы 1099-K, в которой указывается ваш валовой объем продаж, установлен на уровне 5000 долларов США на 2024 год и планируется снизить до 600 долларов США к 2026 году. Это означает, что почти каждый магазин получит форму IRS, и ваши бухгалтерские книги должны быть полностью с ней согласованы. (IRS)

План Beancount в семи быстрых шагах

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

1. Разделяйте каналы с самого начала

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

2025-07-22 open Income:Etsy               USD
2025-07-22 open Expenses:Etsy:ListingFee USD
2025-07-22 open Assets:Etsy:Payout USD

2. Разбивайте каждую выплату

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

; еженедельная выплата из CSV-файла счета платежей Etsy
2025-07-15 * "Поступление Etsy #2025-28"
Assets:Bank:Operating 1842.77 USD
Income:Etsy:Sales -2100.00 USD
Expenses:Etsy:TransactionFee 136.50 USD ; 6.5 %
Expenses:Etsy:PaymentProcessing 66.00 USD ; 3 % + $0.25 за заказ
Expenses:Etsy:ListingFee 14.00 USD ; $0.20 x 70 обновлений
Assets:Etsy:Reserve -75.73 USD

3. Отслеживайте запасы и себестоимость проданных товаров с помощью партий

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

; Покупка материалов оптом для запасов
2025-07-01 * "Оптовая покупка пряжи | Поставщик XYZ"
Assets:Inventory:ScarfBlue 500 ScarfBlue {@ 3.45 USD}
Assets:Bank:Operating

; Запись себестоимости проданных товаров при продаже товара
2025-07-20 * "Продажа синего шарфа | Заказ #1234"
Expenses:COGS 1 ScarfBlue {3.45 USD}
Assets:Inventory:ScarfBlue

4. Выберите свой метод учета заранее

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

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

5. Автоматизируйте импорт

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

  • Используйте bean-extract с пользовательскими правилами для анализа CSV-файлов Etsy.
  • Настройте импортер банковских CSV-файлов для учета рекламных расходов или стоимости доставки, оплаченных кредитной картой.
  • Для опытных пользователей напишите скрипт на Python для получения отчетов непосредственно из API Etsy.

6. Сверяйте еженедельно

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

# Проверка баланса вашего расчетного счета Etsy
bean-balance books.bean "Assets:Etsy:Payout" "2025-07-21"

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

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

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

2025-07-12 * "Этикетка доставки Etsy для заказа #4321"
Expenses:ShippingLabel 4.25 USD
Assets:Bank:Operating
document: "docs/labels/2025-07-12-order4321.pdf"

Знайте свои комиссии Etsy (США)

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

  • Плата за листинг: $0.20 за товар, которая автоматически обновляется каждые 4 месяца или после продажи. (Etsy)
  • Комиссия за транзакцию: 6.5% от общей суммы заказа (включая цену товара, доставку и подарочную упаковку). (Etsy)
  • Комиссия за обработку платежей: Варьируется в зависимости от страны, но для США обычно составляет 3% + $0.25 за заказ, обработанный через Etsy Payments. (Etsy Help)
  • Подписка (Etsy Plus): Дополнительные инструменты за $10 в месяц (необязательно).

Советы по налогу с продаж и соблюдению требований

  • Хотя Etsy перечисляет налог с продаж за большинство штатов США, имейте в виду, что продажа на других платформах или наличие физической мастерской может создавать дополнительные налоговые обязательства ("нексус"). Тщательно отслеживайте свои пороги продаж.
  • Как только пороги для формы 1099-K будут применяться к вашему магазину, убедитесь, что общая сумма Income:Etsy:Sales в Beancount совпадает с валовой суммой в форме до цента. (IRS)

Распространенные ошибки (и способы их исправления)

  • Ошибка: Учет чистых поступлений.
    • Исправление: Всегда используйте CSV-файл платежей, чтобы разбить поступления на валовые продажи, комиссии и резервы.
  • Ошибка: Устаревшая стоимость запасов.
    • Исправление: Регистрируйте свои покупки материалов и запасов в момент их приобретения. Не ждите, пока готовый продукт будет продан.
  • Ошибка: Слепые зоны возврата.
    • Исправление: При оформлении возврата регистрируйте расход и также сторнируйте исходную запись себестоимости проданных товаров, чтобы вернуть стоимость обратно на ваш счет запасов.
  • Ошибка: Игнорирование удержания резервов.
    • Исправление: Откройте счет Assets:Etsy:Reserve для отслеживания денег, которые удерживает Etsy. Это обеспечит достоверность ваших отчетов о движении денежных средств.

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

  • В менеджере магазина настройте ежемесячные отчеты и загрузите свой первый CSV-файл.
  • Клонируйте стартовый репозиторий Beancount и составьте план счетов вашего магазина.
  • Выберите кассовый метод или метод начисления и придерживайтесь его.
  • Напишите базовый скрипт импорта или файл правил и запланируйте еженедельную синхронизацию.
  • Сверяйте свои выплаты, уровни запасов и банковский баланс каждый понедельник.
  • Создавайте отчет о прибылях и убытках каждый месяц и анализируйте тенденции валовой прибыли.
  • Создавайте резервные копии своих файлов .bean с помощью Git и внешнего хранилища.

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

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

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

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

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

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

2023-05-22-business-template

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

1970-01-01 open Equity:Bank:Chase

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

bean-query books.beancount open-invoices.sql

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


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

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

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

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

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

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


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

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

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

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

Представляем поддержку нескольких файлов в Beancount

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

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

Вот как это использовать:

Файл > создать новый файл

2021-09-24-multi-file-one-ledger

Перейдите на вкладку редактора файлов в левой навигационной боковой панели. Затем перейдите в выпадающее меню "Файл" и нажмите "Создать новый файл".

Фай�л > создать новый файл

Назовите свой новый файл

Дайте своему файлу действительное имя и сохраните его. Все имена файлов должны заканчиваться на ".bean".

Назовите свой новый файл

Включите файл

Это важный шаг: вы должны включить только что созданный файл в main.bean.

Например, если вы добавили stock.bean, то укажите include "stock.bean" в main.bean.

Включите файл

Обновите и перейдите к файлу

Обновите страницу, и вы увидите, что файл появится в выпадающем меню "Файл".

Обновите и перейдите к файлу

Переименуйте или удалите файл

Перейдя к файлу, вы можете переименовать или удалить его в выпадающем меню "Редактировать".

Переименуйте или удалите файл

Возникли проблемы?

Задавайте вопросы в https://t.me/beancount.

Представляем мобильные приложения Beancount для iOS и Android

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

Мы рады объявить о важной вехе в развитии Beancount: запуске наших специализированных мобильных приложений для платформ iOS и Android! Этот релиз напрямую отвечает на один из самых частых запросов нашего сообщества – возможность эффективно управлять вашей бухгалтерской книгой на мобильных устройствах.

Мобильное приложение Beancount для iOS

Ключевые особенности

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

2020-08-19-beancount-mobile-app

Разработка, управляемая сообществом

Этот релиз знаменует собой лишь начало нашего мобильного пути. Мы стремимся развивать эти приложения, основываясь на ваших потребностях и отзывах. Присоединяйтесь к нашему активному сообществу в Telegram по адресу https://t.me/beancount, чтобы обсуждать Beancount, делиться своим опытом и помогать формировать будущие функции.

Наше видение

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

скачать из App Storeскачать из Play Store

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

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

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

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

2019-03-24-bookkeeping-basics

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

Что такое бухгалтерский учет?

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

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

Почему это важно?

Тщательный бухгалтерский учет — это не просто административная аккуратность; это стратегическое преимущество.

  • Уверенность при налогообложении: Когда наступает налоговый сезон, чистая отчетность — ваш лучший друг. Налоговая служба требует четкой документации по доходам и вычетам. Хорошо организованная бухгалтерия означает, что вы можете подавать декларацию с уверенностью и значительно сократить любые потенциальные проверки. (IRS)
  • Более точные решения: Достаточно ли высоки ваши цены? Действительно ли конкретный договор на обслуживание прибылен? Растут ли расходы на подписку бесконтрольно? Финансовые отчеты, такие как отчет о прибылях и убытках и баланс, выявляют утечки цен, безудержные расходы и проблемы с денежным потоком, предоставляя менеджерам и инвесторам данные, необходимые для принятия разумных решений. (Investopedia)
  • Более легкое финансирование: Кредиторы и инвесторы не принимают решения, основываясь на интуиции. Прежде чем переводить средства, они попросят финансовые отчеты. Хорошая бухгалтерия позволяет вам генерировать баланс или отчет о прибылях и убытках за считанные секунды, демонстрируя профессионализм и финансовое здоровье. (Investopedia)
  • Предупреждения о мошенничестве и ошибках: Регулярная сверка вашей бухгалтерии с банковскими выписками — ваша первая линия защиты от ошибок. Эта простая привычка помогает вам быстро выявить дублирующие платежи, банковские ошибки или мошенническую деятельность, прежде чем они станут серьезными проблемами. (IRS)

Семишаговый план в простом тексте

Готовы начать? Вот как построить вашу систему бухгалтерского учета на базе Beancount с нуля.

1. Разделите бизнес-счета и личные счета

Это первый и не подлежащий обсуждению шаг. Откройте отдельный расчетный счет для бизнеса и, при необходимости, бизнес-кредитную карту. Смешивание средств создает кошмар для бухгалтерии и может размыть границы ответственности между вами и вашим бизнесом. Четкое разделение необходимо для точного вычета расходов и правовой защиты. (Small Business Administration)

В Beancount вы объявляете о существовании этих счетов с помощью директивы open:

; Начальные остатки на ваших счетах
2025-07-22 open Assets:Bank:Business USD
2025-07-22 open Assets:Bank:Personal USD

2. Выберите систему бухгалтерского учета

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

3. Выберите метод учета

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

  • Кассовый метод: Вы регистрируете доход, когда получаете деньги, и расходы, когда их оплачиваете. Это проще и непосредственно отражает ваш денежный поток.
  • Метод начисления: Вы регистрируете доход, когда вы его зарабатываете (например, когда отправляется счет), и расходы, когда вы их несете (например, когда получаете счет). Этот метод дает более точное представление о финансовом состоянии и деятельности компании, особенно для растущих фирм. (Investopedia)

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

; Пример начисления: выставлен счет, оплата позже
2025-07-22 * "Счет за дизайн №101"
Assets:AccountsReceivable 3000.00 USD
Income:Design

2025-08-15 * "Клиент оплачивает счет №101"
Assets:Bank:Business 3000.00 USD
Assets:AccountsReceivable

4. Соберите свой набор инструментов

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

  • Редактор + Git: Ваш любимый текстовый редактор для записи транзакций и Git для контроля версий, что дает вам полную, проверяемую историю каждого изменения.
  • bean-report / bean-balance / Fava: Инструменты командной строки, такие как bean-report, и потрясающий веб-интерфейс Fava, предоставляют вам мгновенные финансовые отчеты, панели мониторинга и мощные возможности фильтрации.
  • Импортеры: Богатая экосистема импортеров, созданных сообществом, может подключаться к вашим банковским каналам через CSV, Plaid или API для таких сервисов, как Stripe и PayPal, автоматизируя большую часть ввода данных.

5. Классифицируйте каждую транзакцию

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

2025-07-30 * "Ежемесячный счет AWS"
Expenses:Hosting:AWS 124.50 USD
Assets:Bank:Business
tag: "ops"

В этом примере расход четко отнесен к категории Expenses:Hosting:AWS. Использование tag: "ops" также позволяет создавать перекрестные отчеты, например, просматривать все операционные расходы независимо от их основной категории. (IRS)

6. Надежно храните исходные документы

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

; Изображение чека, связанное как метаданные
2025-07-18 * "Обед команды"
Expenses:Meals 85.10 USD
Assets:Bank:Business
receipt: "receipts/2025-07-18-team-lunch.jpg"

7. Сделайте бухгалтерский учет привычкой

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

Самостоятельно или с помощью профессионалов?

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

Контрольный список для быстрого старта

  • Открыть отдельные банковские счета для бизнеса.
  • Клонировать стартовый репозиторий Beancount и определить ваши счета в accounts.bean.
  • Выбрать кассовый метод или метод начисления и придерживаться его.
  • Настроить импортеры для автоматизации ввода данных из вашего банка (CSV), Stripe, PayPal и т.д.
  • Добавлять теги и писать четкие описания для каждой транзакции.
  • Сверять вашу бухгалтерию с банковскими выписками еженедельно или ежемесячно.
  • Формировать ежемесячные отчеты о доходах, балансе и денежном потоке с помощью Fava или bean-report.
  • Регулярно создавать резервные копии ваших .bean файлов (Git + удаленное хранилище).

Дополнительная литература

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