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

2 публикации маркиран с/със "Journal Entries"

Вижте всички етикети

Разбиране на журналните записи в Beancount

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

Журналните записи са гръбнакът на двойното записно счетоводство и в Beancount всяка транзакция, маркирана с *, е журнален запис. Това ръководство обяснява основните понятия — дебити и кредити, коригиращи записи и обратни записи — и показва как те се отразяват чисто в текстовия синтаксис на Beancount. Ще научите как да водите точни книги с минимална формалност.


2025-09-02-journal-entries-in-beancount

Бърз преглед: Какво е журнален запис?

Журналният запис е официалният, датиран запис на финансова транзакция. Той се изразява чрез дебити и кредити, които поддържат фундаменталното счетоводно уравнение в баланс:

Assets=Liabilities+EquityAssets = Liabilities + Equity

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


Дебити и кредити за една минута

Концепциите за дебити и кредити могат да бъдат объркващи в началото, но те се свеждат до няколко прости правила. Помислете по следния начин: „от къде дойде стойността?“ (кредит) и „къде отиде стойността?“ (дебит).

Ето кратка таблица за това как се увеличават петте основни типа сметки:

Тип сметкаУвеличава се с
Assets (Активи)Дебит
Expenses (Разходи)Дебит
Liabilities (Задължения)Кредит
Equity (Капитал)Кредит
Income (Приходи)Кредит

Как изглежда журнален запис в Beancount

Beancount използва прости, четими за хора директиви, за да записва транзакции. Всяка транзакция трябва да се балансира до нула за всяка стока (например USD, EUR, акции AAPL). Ако не се балансира, Beancount ще генерира грешка.

2025-09-10 * "Coffee Bar" "Team coffee"
Expenses:Food:Coffee 18.00 USD
Assets:Bank:Checking -18.00 USD

Обърнете внимание как двете постинги (редове със сметки) се сумират до нула: $18.00 + (-$18.00) = 0.

Можете да добавяте мощен контекст директно в описанието, като използвате етикети (например #clientX) за филтриране и връзки (например ^INV-2025-001) за свързване на свързани записи.

Например, ето как можете да свържете фактура с нейното плащане:

; Първо, запишете фактурата, изпратена на клиента
2025-09-15 * "Acme Corp" "Invoice 2025-001 #clientX ^INV-2025-001"
Assets:AccountsReceivable 1000.00 USD
Income:Consulting -1000.00 USD

; По-късно, запишете плащането и го свържете обратно към оригиналната фактура
2025-09-28 * "Acme Corp" "Payment on ^INV-2025-001"
Assets:Bank:Checking 1000.00 USD
Assets:AccountsReceivable -1000.00 USD

Етикетът #clientX ви позволява лесно да филтрирате всички транзакции за този клиент, а връзката ^INV-2025-001 създава връзка между двата записа, която можете да проследявате в отчетите.


Чести журнални записи (готови за копиране)

Тук са няколко често срещани бизнес транзакции, форматирани за Beancount.

Собственик внася кеш

Собственик внася лични средства за стартиране на бизнеса.

2025-01-01 * "Owner" "Initial capital contribution"
Assets:Bank:Checking 10000.00 USD
Equity:Owner-Capital -10000.00 USD

Продажба в брой с данък върху продажбите

Клиент плаща в брой за продукт, включително 8 % данък, който по-късно трябва да бъде внесен към държавата.

2025-01-05 * "Walk-in Customer" "Cash sale with 8% tax"
Assets:Cash 108.00 USD
Income:Sales -100.00 USD
Liabilities:Tax:Sales -8.00 USD

Продажба на кредит (фактура) и събиране

Предоставяте услуга и фактурирате клиента, след което получавате плащане по-късно.

2025-01-10 * "Acme Corp" "Consulting invoice ^INV-2025-002"
Assets:AccountsReceivable 2500.00 USD
Income:Consulting -2500.00 USD

2025-01-30 * "Acme Corp" "Payment on ^INV-2025-002"
Assets:Bank:Checking 2500.00 USD
Assets:AccountsReceivable -2500.00 USD

Разход с кредитна карта

Закупувате офис консумативи с фирмена кредитна карта.

2025-01-12 * "OfficeMax" "Supplies on credit card"
Expenses:Office:Supplies 75.00 USD
Liabilities:CreditCard -75.00 USD

Заплата (опростен модел)

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

2025-01-31 * "Payroll" "January wages and withholdings"
Expenses:Payroll:Wages 2000.00 USD
Liabilities:Taxes:Withheld -400.00 USD
Assets:Bank:Checking -1600.00 USD

Месечна амортизация

Записвате месечната амортизационна разход за актив, например лаптоп.

2025-01-31 * "Depreciation" "Laptop, straight-line"
Expenses:Depreciation 100.00 USD
Assets:Equipment:AccumDepr -100.00 USD

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

Плащате за цялогодишна застраховка предварително, след което признавате един месец от разхода.

; 1. Плащане за годишната полица
2025-01-01 * "InsureCo" "Annual insurance premium"
Assets:Prepaid:Insurance 1200.00 USD
Assets:Bank:Checking -1200.00 USD

; 2. Признаване на един месец разход в края на януари
2025-01-31 * "InsureCo" "Amortize 1/12 of insurance"
Expenses:Insurance 100.00 USD
Assets:Prepaid:Insurance -100.00 USD

Неприсъединени приходи и месечно признаване

Клиент предплаща за 3‑месечен абонамент. Записвате парите и след това признавате един месец приход.

; 1. Клиентът предплаща за услугата
2025-02-01 * "Subscriber" "3-month plan prepaid"
Assets:Bank:Checking 300.00 USD
Liabilities:Unearned:Subs -300.00 USD

; 2. Признаване на един месец приход след предоставяне на услугата
2025-02-28 * "Recognition" "Recognize month 1 of 3"
Liabilities:Unearned:Subs 100.00 USD
Income:Subscriptions -100.00 USD

Резерв за лоши дългове и отписване

Създавате резерв за потенциално неплатени фактури и по-късно отписвате конкретна лоша фактура.

; 1. Създаване на резерв от 2 % от вземанията
2025-03-31 * "Provision" "2% of A/R for doubtful accounts"
Expenses:BadDebt 200.00 USD
Assets:AllowanceForDoubtful -200.00 USD

; 2. Отписване на конкретна фактура, която няма да бъде платена
2025-04-15 * "Write-off" "Customer XYZ invoice"
Assets:AllowanceForDoubtful 150.00 USD
Assets:AccountsReceivable -150.00 USD

Периодичен инвентар и корекция на COGS

В края на периода изчислявате себестойността на продадените стоки (COGS), като коригирате инвентарната сметка.

2025-03-31 * "COGS adjustment" "Periodic inventory method"
Expenses:COGS 4500.00 USD
Assets:Inventory -4500.00 USD

Коригиращи записи vs. Обратни записи

Коригиращите записи се въвеждат в края на счетоводен период (месец или тримесечие), за да се съгласуват приходите и разходите с периода, в който са действително спечелени или понесени. Това включва начисления, отлагания и оценки като амортизация.

Обратните записи са незадължителни записи, направени в първия ден от новия период, които точно обръщат конкретен коригиращ запис от предишния период. Целта им е да опростят счетоводството. Като обърнете начисление, можете да запишете последващата кеш транзакция по стандартен начин, без да се налага да я разпределяте срещу сметка за задължения.

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

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

; 1. Начисляване на оценения разход в края на януари
2025-01-31 * "Accrual" "Estimate January utilities expense"
Expenses:Utilities 500.00 USD
Liabilities:Accrued:Utilities -500.00 USD

; 2. (По избор) Обратен запис на начисленото в първия ден на следващия период
2025-02-01 * "Reversal" "Undo January utilities accrual"
Liabilities:Accrued:Utilities 500.00 USD
Expenses:Utilities -500.00 USD

; 3. Записване на действителното плащане, когато фактурата пристигне през февруари
; Фактурираното е 520 USD. Поради обратния запис можете
; да запишете пълната сума в разходната сметка без проблем.
; Нетният разход за февруари ще бъде 520 - 500 = 20 USD.
2025-02-10 * "City Utilities" "Payment for January bill"
Expenses:Utilities 520.00 USD
Assets:Bank:Checking -520.00 USD

Бележка: Примерът в плана показва разделяне на окончателното плащане. Методът с обратен запис е алтернатива, която опростява окончателния запис.


Контролен списък за всеки журнален запис в Beancount

Следвайте тези стъпки, за да гарантирате чисти и правилни записи:

  1. Започнете с датата (ГГГГ-ММ-ДД) и флага за транзакция (*).
  2. Добавете получател и описателен текст. Използвайте #етикети и ^връзки за по‑лесно търсене.
  3. Включете поне два постинга (редове със сметки), които се балансират до нула.
  4. Уверете се, че всички комодити (например USD, EUR) са балансирани.
  5. Прегледайте коментари и етикети за допълнителен контекст.
  6. Проверете дали общата сума на дебитите е равна на общата сума на кредитите.
  7. Потвърдете, че смятате правилната сметка за дебит или кредит.
  8. При нужда, използвайте коригиращи или обратни записи.
  9. Прегледайте за грешки и коригирайте преди да финализирате.
  10. Запишете транзакцията в съответния файл.

Чести проблеми (и как Beancount помага)

  • Неизправен баланс – Ако сумата на дебитите не съвпада с сумата на кредитите, Beancount ще спре обработката и ще покаже къде е грешката.
  • Грешно използване на етикети – Етикетите се прилагат към целия запис, а не към отделни постинги; използвайте ги за групиране, а не за корекция на суми.
  • Пренебрегване на коригиращи записи – Без тях финансовите отчети могат да бъдат подвеждащи; Beancount изисква балансирани записи, което ви принуждава да ги включите.
  • Пренаписване на коментари – Коментарите в кода са полезни за разбиране, но не влияят на валидността; Beancount ги игнорира, така че можете спокойно да ги оставяте или превеждате.

Къде да продължите

  • Прегледайте документацията – Официалната документация на Beancount съдържа подробни описания на всички функции.
  • Изучете отчети – Научете как да генерирате отчети за печалба/загуба, баланс и паричен поток.
  • Автоматизирайте – Използвайте скриптове за автоматично генериране на записи от вашите системи.
  • Общувайте с общността – Форумите и чат групите на Beancount са отличен източник за съвети и решения.

Приложение: Счетоводен жаргон → Beancount карта

Счетоводна инструкцияBeancount действие
Дебитиране на разходПоложителна сума към сметка Expenses:
Кредитиране на разходОтрицателна сума към сметка Expenses:
Дебитиране на приходПоложителна сума към сметка Income:
Кредитиране на приходОтрицателна сума към сметка Income:
Дебитиране на активПоложителна сума към сметка Assets:
Кредитиране на активОтрицателна сума към сметка Assets:
Дебитиране на задължениеПоложителна сума към сметка Liabilities:
Кредитиране на задължениеОтрицателна сума към сметка Liabilities:
Дебитиране на капиталПоложителна сума към сметка Equity:
Кредитиране на капиталОтрицателна сума към сметка Equity:

Записи в дневника на Beancount: Практически указания, дефиниции и примери

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

Всяка финансова транзакция, която вашият бизнес извършва, трябва да бъде записана – и в света на plain-text счетоводството, това започва със записвания в дневника. Ако използвате Beancount, разбирането на записванията в дневника е от ключово значение за изграждането на точни, одитируеми и чисти финансови записи.

Това ръководство ще ви преведе през:

2025-06-27-journal-entries

  • Какво е записване в дневника
  • Защо записванията в дневника са важни
  • Как да ги пишете в синтаксиса на Beancount
  • Как да ги използвате ефективно
  • Примери за реални транзакции (плащания от клиенти, покупки, заеми и т.н.)

🧾 Какво е записване в дневника в Beancount?

В Beancount, записване в дневника е датирана транзакция, написана в четим от човека plain-text формат. Всеки запис следва принципите на двойното счетоводство – записвате откъде идват парите (кредит) и къде отиват (дебит), като гарантирате, че вашите книги винаги са балансирани.

Пример:

2024-06-01 * "Плащане от клиент за фактура #123"
Assets:Bank:Checking 600.00 USD
Income:Sales
  • * показва изчистена транзакция.
  • Описанието показва контекст за записа.
  • Assets:Bank:Checking е дебитиран.
  • Income:Sales е кредитиран (стойността е подразбираща се).

Всеки запис живее във файл .beancount – просто текстов файл, който можете да версионирате, архивирате и дори да редактирате във Vim или VSCode.

📒 Защо записванията в дневника са важни

Записванията в дневника са атомната единица на вашата счетоводна книга.

Те:

  • Се вливат във вашата Главна книга и Салда по сметки
  • Задвижват всички отчети: Отчети за приходите и разходите, Баланси, Парични потоци
  • Позволяват ви да проследите всеки долар, ред по ред, до неговия източник

С правилните инструменти ще видите тези транзакции, представени в потребителски интерфейс – категоризирани, с възможност за търсене и филтриране. Но всичко започва с този прост plain-text запис.

📚 Как работи двойното счетоводство в Beancount

Beancount прилага двойно счетоводство. Всяка транзакция трябва да бъде балансирана: общите дебити = общите кредити.

Бързо правило:

  • Дебитирайте активи и разходи (вие получавате пари в брой или понасяте разходи)
  • Кредитирайте приходи и пасиви (вие печелите пари или поемате дълг)

Пример – Покупка на офис консумативи:

2024-06-02 * "Купих мастило за принтер"
Expenses:OfficeSupplies 100.00 USD
Assets:Bank:Checking

🧠 Визуализиране на записи

След като запазите, в лявата навигация на https://beancount.io/ledger/0/income_statement/ ще видите ...

  • Изглед на дневника: Вижте транзакции с търсене, тагове и филтриране
  • Падащо меню за филтър на сметки: Вижте текущите салда и записи за всяка сметка
  • Отчет за приходите и разходите: Сума на вашите сметки Income:* и Expenses:*
  • Баланс: Вашите активи минус пасиви

Fava помага да превърнете вашите сурови записи в Beancount в отчети, върху които може да се предприемат действия – с нулева настройка на база данни.

💡 Чести примери за записвания в дневника

✅ Получавате плащане от клиент

2024-06-05 * "Плащане за фактура #456"
Assets:Bank:Checking 1,200.00 USD
Income:Consulting

По избор: Ако използвате Сметки за вземания:

2024-05-20 * "Фактура #456 изпратена"
Assets:AccountsReceivable 1,200.00 USD
Income:Consulting

2024-06-05 * "Плащане за фактура #456"
Assets:Bank:Checking 1,200.00 USD
Assets:AccountsReceivable -1,200.00 USD

🖨️ Купувате офис консумативи

2024-06-07 * "Пазаруване в Staples"
Expenses:OfficeSupplies 85.00 USD
Assets:Bank:Checking

🏦 Извършвате плащане по заем

Да кажем, че плащате $1000, с $200 лихва и $800 към главницата:

2024-06-10 * "Погасяване на заем"
Liabilities:Loan -800.00 USD
Expenses:LoanInterest 200.00 USD
Assets:Bank:Checking -1,000.00 USD

🔒 Приключващи записи в края на годината

За да "приключите книгите", обикновено прехвърляте всички сметки Income и Expenses в Equity.

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

Или, ръчно:

2024-12-31 * "Приключване на книгите"
Equity:RetainedEarnings 45,000.00 USD
Income:Consulting -45,000.00 USD

🛠️ Коригиращи записи

Ако прилагате начисляване, ще искате да добавите коригиращи записи – за предплатени разходи, начислени приходи и т.н.

Пример: Месечен софтуерен абонамент за $100, платен годишно

2024-01-01 * "Годишно плащане за софтуер"
Assets:Prepaid 1,200.00 USD
Assets:Bank:Checking -1,200.00 USD

2024-01-31 * "Месечна амортизация"
Expenses:Software 100.00 USD
Assets:Prepaid -100.00 USD

Автоматизирайте със скриптове или налични инструменти на Beancount.

🧰 Beancount: Лесен, одитируем, мощен

Beancount не е просто счетоводен инструмент – това е идея: прозрачна, plain-text финансова истина. Това е модерна система за водене на книги, която е:

  • Лесна за контрол на версиите (Git!)
  • Напълно преносима (без собствена база данни)
  • Чудесна за разработчици, фрийлансъри и малки фирми

Готови ли сте да започнете?

Започнете своя файл Beancount с:

option "title" "Моята бизнес счетоводна книга"
option "operating_currency" "USD"

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

2024-01-01 * "Първоначално салдо"
Assets:Bank:Checking 10,000.00 USD
Equity:OpeningBalances

След това заредете файла си с предпочитания от вас инструмент за визуализация, за да видите магията.

Искате по-лесен старт? Опитайте шаблони, импортиращи програми или общностни инструменти като bean-extract.

С Beancount вашите книги най-накрая са ваши – прости, управляеми със скриптове и защитени от одит.

Кажете ми, ако искате PDF версия за изтегляне или специфични за малкия бизнес вариации на примерите.