Към основното съдържание

Бърз старт с Beancount CLI

Инсталирайте командата bea, създайте локален Beancount регистър, запишете първата си покупка и проверете балансите си.

Създайте локален регистър и запишете първата си покупка с bea, инструментът за команден ред на Beancount.io. Локалното счетоводство не изисква акаунт в Beancount.io.

Това ръководство започва с 1000 USD в разплащателната сметка. След покупка на кафе за 12,50 USD ще проверите баланс от 987,50 USD.

1. Инсталирайте командата​

С Homebrew на macOS или Linux:

brew install bex-co/tap/bea
bea --version

Ако не използвате Homebrew, инсталирайте uv и използвайте uv tool install beancount-io. Python пакетът изисква Python 3.12 или по-нова версия. Homebrew осигурява счетоводния двигател по време на инсталацията. С PyPI дръжте uv наличен: първата локална команда изтегля управлявания двигател, а следващите команди го използват повторно офлайн. Не е необходимо да инсталирате Beancount отделно.

2. Създайте своя регистър​

Изберете нова директория. Този пример създава main.bean в ~/my-books:

bea --no-input init ~/my-books --currency USD --date 2026-08-01 \
  --opening-balance "Assets:Checking 1000"
cd ~/my-books

Шаблонът отваря обичайните сметки за разплащателна, спестовна, пари в брой, кредитна карта, приходи и разходи. Началният баланс се компенсира срещу Equity:OpeningBalances.

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

init никога не презаписва съществуващ регистър. Новите файлове са частни на POSIX системи: само собственикът може да ги чете и записва. За да споделите с локалната си потребителска група, изрично променете правата с chmod 640 main.bean.

За насочено настройване вместо това изпълнете bea init ~/my-books в терминал. Съветникът пита за валутата, началната дата на историята и баланса на разплащателната сметка.

3. Запишете покупка​

bea add transaction --date 2026-08-02 --narration "Coffee" \
  --posting "Expenses:Dining 12.50" \
  --posting "Assets:Checking"

Разходът използва валутата USD на сметката. Beancount попълва другата позиция като -12.50 USD. Можете да пропуснете --date за покупки, направени днес.

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

4. Проверете резултата​

bea check
bea list transaction --limit 10
bea report balance-sheet

Списъкът с транзакции показва най-новите записи първо, с техните суми по позиции. Балансовият отчет показва 987.50 USD в разплащателната сметка.

За да проверите тази сума директно:

bea query "SELECT account, sum(position) WHERE account = 'Assets:Checking' GROUP BY account"

Таблиците на заявките запазват точността на резултата. За структуриран изход поставете глобалния флаг --json преди командата:

bea --json list transaction --limit 10

5. Поддържайте книгите си в добро състояние​

Изпълнете bea check след ръчно редактиране на файла. Изпълнете bea format -i main.bean, за да подравните колоните му на място. Без -i, форматираният текст отива към stdout и файлът остава непроменен. Използвайте bea format main.bean --check, когато скрипт трябва да се провали, ако е необходимо форматиране.

За да работите от друга директория, изберете основния файл изрично:

bea --file ~/my-books/main.bean check

Основният файл се избира чрез --file, след това BEA_FILE, после main.bean в работната директория. Глобалните опции отиват преди командата. Форматирането приема собствен аргумент за файл или директория.

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

Проверявайте за актуализации с bea upgrade --check. Изпълнете bea upgrade, за да извикате мениджъра на пакети, който е инсталирал вашето копие. Използвайте bea --help или bea add transaction --help, за да разгледате наличните опции във вашата инсталирана версия.

Източник: https://beancount.io/bg/docs/Basics/bea-cli