Táto príručka syntetizuje osvedčené postupy pre účtovníctvo v čistom texte pomocou výkonného open-source nástroja na účtovníctvo v čistom texte Beancount. Pokrýva základnú filozofiu, syntax od základov po pokročilú, praktické prípadové štúdie pre komplexné aktíva a stratégie dlhodobého manažmentu hlavnej knihy.
Časť 1: „Prečo" – Základy inteligentného účtovníctva
Predtým, než sa ponoríte do „ako", je dôležité pochopiť „prečo". Efektívne účtovníctvo je základom osobného finančného manažmentu a nevyhnutným krokom k finančnej jasnosti a slobode.
Okrem sledovania výdavkov: Cesta k finančnej jasnosti
Jednoduché aplikácie na sledovanie výdavkov vám povedia, kam išli vaše peniaze. Robustný účtovný systém vám povie to a oveľa viac: poskytuje kompletný obraz o vašom finančnom zdraví vrátane vášho čistého majetku, peňažných tokov a výkonnosti vašich investícií. Hlavným cieľom je pozorovateľnosť — získať jasné, na dátach založené pochopenie vášho finančného života, ktoré vám umožní robiť informované rozhodnutia, posudzovať riziko a pracovať na dlhodobých cieľoch, ako je dôchodok.
Prečo podvojné účtovníctvo? Sila vyváženého systému
Na rozdiel od jednoduchého účtovníctva (jednoduchý zoznam výdavkov) metóda podvojného zápisu zaznamenáva každú transakciu ako tok hodnoty medzi aspoň dvoma účtami. Jej základným princípom je fundamentálna účtovná rovnica:
Tento systém zabezpečuje, že vaše knihy sú vždy vyvážené, čo výrazne znižuje chyby. Poskytuje kompletný finančný obraz generovaním základných výkazov, ako je súvaha (čo vlastníte a čo dlhujete) a výkaz ziskov a strát (čo ste zarobili a minuli).
Časť 2: Začíname s Beancount
Beancount je výkonný nástroj založený na Pythone pre účtovníctvo v čistom texte.
Váš prvý pohľad s Fava na Beancount.io
Beancount.io poskytuje výkonné prostredie, ktoré kombinuje engine Beancount s mobilnou aplikáciou (iOS, Android) a webovou aplikáciou — Fava, fantastické webové rozhranie na vizualizáciu vašej hlavnej knihy. Nie je potrebná žiadna inštalácia. Keď používate platformu, priamo interagujete s textovým editorom pre váš súbor hlavnej knihy (napr. main.bean) a vidíte, ako sa reporty generované Fava aktualizujú v reálnom čase.
Fava berie váš napísaný čistý text a mení ho na interaktívne grafy, finančné výkazy a filtrovateľné zoznamy transakcií, čo vám dáva jasný prehľad o vašich finančných reportoch.
Alebo začnite v termináli s programom bea
Ak radšej pracujete z príkazového riadku, bea je príkazový riadok Beancount.io. Účet nie je potrebný: nainštalujte ho pomocou brew install bex-co/tap/bea alebo uv tool install beancount-io a vytvára, validuje, dopytuje a reportuje na tom istom súbore v čistom texte. Rýchly štart CLI vám za pár minút vytvorí prvú hlavnú knihu a Váš prvý mesiac s bea uzavrie celý mesiac od začiatku do konca.
Päť základných typov účtov
Beancount používa päť typov účtov najvyššej úrovne, ktoré tvoria štruktúru vašej hlavnej knihy:
| Typ účtu | Popis | Typický zostatok |
|---|---|---|
Assets | Čo vlastníte (hotovosť, bankové účty, investície, nehnuteľnosti). | Kladný |
Liabilities | Čo dlhujete (dlh na kreditnej karte, pôžičky, hypotéky). | Záporný |
Income | Odkiaľ peniaze prichádzajú (plat, bonusy, úroky). | Záporný |
Expenses | Kam peniaze idú (jedlo, nájom, cestovanie, dane). | Kladný |
Equity | Váš čistý majetok; používa sa na počiatočné zostatky. | Záporný |
Beancount rovnica
Beancount presadzuje svoju vlastnú verziu účtovnej rovnice, kde sa súčet všetkých položiek v celej vašej hlavnej knihe rovná nule:
To je dôvod, prečo podľa konvencie účty Income, Liabilities a Equity obsahujú záporné hodnoty — sú to zdroje prostriedkov, ktoré zvyšujú vaše Assets a Expenses.
Časť 3: Jazyk Beancount – Základná syntax
Všetky záznamy v Beancount sú direktívy, ktoré začínajú dátumom.
Definovanie účtov (open) a komodít
Predtým, než môžete použiť účet, musíte ho deklarovať direktívou open. Môžete tiež voliteľne určiť meny alebo „komodity", ktoré bude obsahovať.
; YYYY-MM-DD open Account:Name [Commodity1, Commodity2, ...]
2020-01-01 open Assets:Bank:US:Chase:Checking USD
2020-01-01 open Liabilities:CreditCard:US:Discover USD
2020-01-01 open Expenses:Food:Groceries
2020-01-01 open Income:Salary:GoogleKomodity môžu byť reálne meny (napr. USD, JPY) alebo akákoľvek vlastná jednotka, ktorú definujete, ako napríklad letecké míle (MILES_UA) alebo tickery akcií (HOOL).
Zaznamenanie vašej prvej transakcie (*)
Transakcie sú najbežnejším typom záznamu. Začínajú dátumom, príznakom (* pre kompletnú transakciu alebo ! pre nekompletnú), voliteľným príjemcom platby a popisom. Každý nasledujúci riadok (odsadený dvoma medzerami) je „položka" na účet.
; YYYY-MM-DD * "Payee" "Description"
; Account1 Amount Commodity
; Account2 -Amount Commodity
2024-07-28 * "Trader Joe's" "Weekly groceries"
Expenses:Food:Groceries 125.50 USD
Liabilities:CreditCard:US:Discover -125.50 USDPre pohodlie, ak má transakcia iba dve položky, môžete vynechať sumu na druhom riadku a Beancount ju vypočíta automaticky.
2024-07-28 * "Trader Joe's" "Weekly groceries"
Expenses:Food:Groceries 125.50 USD
Liabilities:CreditCard:US:DiscoverVyváženosť na úrovni transakcie: Dôležitejšie pre každodenné použitie je, že každá jednotlivá transakcia musí byť tiež vyvážená — súčet všetkých položiek v rámci jednej transakcie sa musí rovnať nule. Ak transakcia nie je vyvážená, Beancount zobrazí chybu, ako je táto:

Spracovanie viacmenových transakcií (@ a @@)
Beancount vyniká v účtovníctve s viacerými menami.
- Použite
@na určenie konverzného kurzu za jednotku. - Použite
@@na určenie celkových nákladov konverzie.
; Buying a flight in EUR with a USD card
2024-08-01 * "Lufthansa" "Flight to Berlin"
Expenses:Travel:Flights 500.00 EUR @@ 545.00 USD ; 500 EUR cost me 545 USD in total
Liabilities:CreditCard:US:Discover -545.00 USDČasť 4: Zabezpečenie presnosti – Umenie odsúhlasenia
Kľúčovou praxou na udržanie presnej hlavnej knihy je pravidelné zosúlaďovanie. Zahŕňa porovnávanie zostatkov vo vašej hlavnej knihe Beancount s oficiálnymi výpismi od vašich finančných inštitúcií.
Automatizácia kontrol pomocou zostatkových asercií (balance)
Direktíva balance je váš hlavný nástroj na automatizované kontroly. Vy tvrdíte, že k danému dátumu mal účet konkrétny zostatok. Beancount vyhodí chybu, ak jeho vypočítaný zostatok nezodpovedá vášmu tvrdeniu. To je neoceniteľné na rýchle lokalizovanie chýb.
Poznámka: Zostatková asercia kontroluje stav účtu na začiatku zadaného dňa (pred akýmikoľvek transakciami v ten deň).
; From your monthly credit card statement
2024-08-01 balance Liabilities:CreditCard:US:Discover -1432.78 USDPrepojenie podporných dokumentov (document)
Môžete prepojiť externé súbory, ako sú bankové výpisy alebo účtenky, čím vytvoríte auditovateľnú stopu. Fava robí tieto odkazy klikateľnými.
2024-08-01 document Liabilities:CreditCard:US:Discover "statements/discover-2024-07.pdf"Oprava chýb a inicializácia zostatkov
Keď začínate svoju hlavnú knihu alebo nájdete nezrovnalosť, ktorú nedokážete vystopovať, musíte vykonať úpravu. Štandardnou praxou je použiť špeciálny účet Equity.
; Initializing a cash account when starting your ledger
2020-01-01 * "Initial Balance" "Setting up cash account"
Assets:Cash:Wallet 200.00 USD
Equity:Opening-Balances -200.00 USDÚčet Equity:Opening-Balances obsahuje sumy, ktoré vstupujú do vašej hlavnej knihy z neznámych alebo externých zdrojov.
Na rýchle opravy, kde presná nezrovnalosť nie je dôležitá, môže direktíva pad automaticky upraviť zostatok účtu tak, aby vyhovoval následnej asercii balance, pričom rozdiel zaúčtuje na účet vlastného imania. Používajte to opatrne, pretože to môže skryť väčšie problémy. Explicitné úpravy sú vo všeobecnosti bezpečnejšie.
Časť 5: Pokročilé a realistické vzory transakcií
Sledovanie dlhov: Správa pohľadávok a záväzkov
Podvojné účtovníctvo je ideálne na sledovanie peňazí, ktoré vám niekto dlhuje (Assets:Receivables) alebo ktoré dlhujete vy (Liabilities:Payable).
Príklad: Zaplatíte za spoločnú večeru 90 $ a váš priateľ Bob vám dlhuje svoj podiel 45 $.
-
Zaznamenajte počiatočný výdavok a pohľadávku:
2024-08-05 * "Dinner Place" "Dinner with Bob" Expenses:Food:Restaurant 45.00 USD ; Your share Assets:Receivables:Bob 45.00 USD ; Bob owes you Assets:Bank:US:Chase:Checking -90.00 USD -
Keď vám Bob vráti peniaze:
2024-08-06 * "Bob" "Paid me back for dinner" Assets:Bank:US:Chase:Checking 45.00 USD Assets:Receivables:Bob -45.00 USD
Účet Assets:Receivables:Bob je teraz nulový a vaše knihy sú dokonale vyvážené.
Aktíva vs. Výdavky: Nákup auta a odpisy
Veľký nákup, ako je auto, nie je jednoduchý výdavok; je to nadobudnutie aktíva, ktoré časom stráca hodnotu (odpisy).
-
Zaznamenajte nákup ako aktívum:
2023-01-15 * "Toyota Dealer" "Purchase of a new car" Assets:Car:ToyotaCamry 30000.00 USD Assets:Bank:US:Chase:Checking -30000.00 USD -
Zaznamenajte ročné odpisy: Predpokladajte, že odhadujete, že auto stratí hodnotu 3 000 $ každý rok. Na konci roka to zaznamenáte ako výdavok.
2023-12-31 * "Depreciation" "Annual car value depreciation" Expenses:Depreciation:Car 3000.00 USD Assets:Car:ToyotaCamry -3000.00 USD
Po tomto zázname váš účet Assets:Car:ToyotaCamry správne odráža novú hodnotu auta (27 000 $) a správne ste zaúčtovali náklady na používanie ako výdavok na daný rok.
Časť 6: Hlboký ponor – Modelovanie komplexných reálnych aktív
Prípadová štúdia 1: Účtovníctvo nehnuteľností
Dom je často vaše najväčšie aktívum a záväzok. Tu je postup, ako ho modelovať.
-
Vytvorte účty a vlastnú komoditu:
2022-01-01 commodity HOUSE_123MAIN name: "Property at 123 Main St" 2022-01-01 open Assets:Property:Home:123Main HOUSE_123MAIN 2022-01-01 open Liabilities:Mortgage:HomeLoan USD 2022-01-01 open Expenses:Home:Interest 2022-01-01 open Expenses:Home:PropertyTax -
Zaznamenajte kúpu: Povedzme, že kúpite dom za 500 tis. $ so zálohou 100 tis. $ a pôžičkou 400 tis. $.
2022-03-15 * "Settlement Company" "Purchase of 123 Main St" Assets:Property:Home:123Main 1 HOUSE_123MAIN {500000.00 USD} Assets:Bank:DownPayment -100000.00 USD Liabilities:Mortgage:HomeLoan -400000.00 USD -
Zaznamenajte mesačné splátky hypotéky: Vaša mesačná splátka pozostáva z istiny (znižuje záväzok) a úroku (výdavok).
2022-04-01 * "Mortgage Bank" "Monthly Mortgage Payment" Liabilities:Mortgage:HomeLoan 800.00 USD ; Principal Expenses:Home:Interest 1200.00 USD ; Interest Assets:Bank:US:Chase:Checking -2000.00 USD -
Sledovanie zhodnotenia (nerealizované zisky): Trhová hodnota domu sa mení. Na sledovanie bez ovplyvnenia vášho oficiálneho čistého majetku (keďže zisk nie je realizovaný, kým nepredáte), môžete použiť cenovú direktívu s „virtuálnou" menou.
Pre podporované trhové aktíva a menové páry môže Live Prices udržiavať ocenenia v hostovanej hlavnej knihe. Jednotlivé nehnuteľnosti stále potrebujú vaše vlastné ocenenia a datované ceny, ako v príklade nižšie.
; The purchase price is the real cost basis 2022-03-15 price HOUSE_123MAIN 500000.00 USD ; An updated market estimate is an unrealized gain 2024-01-01 price HOUSE_123MAIN 550000.00 USD.UNREALIZED
To vám umožňuje vidieť odhadovanú hodnotu v grafoch Fava bez neprimeraného nafúknutia vašej súvahy.
Preskúmajte živý príklad hlavnej knihy nehnuteľností so sledovaním hypotéky, odpismi a predajom nehnuteľnosti:
Prípadová štúdia 2: Sledovanie obmedzených akciových jednotiek (RSU)
RSU sú bežnou formou odmeny formou vlastného imania. Ich účtovanie zahŕňa sledovanie počiatočného pridelenia, udalostí nadobudnutia a zrážky dane.
-
Počiatočné nastavenie: Vytvorte komodity pre nadobudnuté (
HOOL) a nenadobudnuté (HOOL.UNVEST) akcie spolu s každým účtom, ktorého sa neskoršie záznamy dotýkajú. Deklarovanie všetkých vopred je to, čo umožňuje, aby sa dve transakcie nižšie načítali samostatne.2021-01-01 commodity HOOL 2021-01-01 commodity HOOL.UNVEST 2021-01-01 open Assets:Brokerage:Etrade:HOOL HOOL 2021-01-01 open Assets:Grant:Unvested HOOL.UNVEST 2021-01-01 open Income:Grant:Awards HOOL.UNVEST 2021-01-01 open Expenses:Grant:Vested HOOL.UNVEST 2021-01-01 open Income:Salary:Hooli:RSU USD 2021-01-01 open Expenses:Taxes:Federal USD 2021-01-01 open Expenses:Taxes:State USD -
Zaznamenajte počiatočné pridelenie: Táto transakcia zobrazuje celkové pridelenie presúvajúce sa na účet nenadobudnutých aktív. Zatiaľ nič nepodlieha zdaneniu, takže celý záznam je denominovaný v sledovacej komodite
HOOL.UNVEST.2021-02-01 * "Hooli" "Initial RSU Grant" Assets:Grant:Unvested 1000 HOOL.UNVEST Income:Grant:Awards -1000 HOOL.UNVEST -
Zaznamenajte udalosť nadobudnutia: Toto je kľúčová transakcia. Keď akcie nadobudnú, vykážete príjem, zamestnávateľ zadrží akcie na zaplatenie dane a vy si ponecháte zvyšok. Predpokladajte, že 100 akcií nadobudne pri cene 150,00 $, takže:
- Hrubá kompenzácia: 100 × 150,00 $ = 15 000,00 $
- Akcie zadržané na daň: 40 × 150,00 $ = 6 000,00 $ (federálna 4 800,00 $ + štátna 1 200,00 $)
- Akcie, ktoré si ponecháte: 60 × 150,00 $ = 9 000,00 $ nákladovej základne
- Hotovosť pre vás: 0,00 $ — celá zrážka je zaplatená v akciách
Tieto sumy sú záznamom a zosúlaďujú sa: 6 000,00 $ dane plus 9 000,00 $ zadržaných akcií je presne 15 000,00 $ príjmu.
2022-02-01 * "Hooli" "RSU Vesting Event" ; Ordinary income: 100 shares * $150.00 Income:Salary:Hooli:RSU -15000.00 USD ; Tax withheld, funded by 40 of the 100 shares (40 * $150.00 = $6,000.00) Expenses:Taxes:Federal 4800.00 USD Expenses:Taxes:State 1200.00 USD ; The 60 shares you keep, at their $150.00 vesting-day basis Assets:Brokerage:Etrade:HOOL 60 HOOL {150.00 USD} ; Retire the 100 unvested units the grant was tracking Assets:Grant:Unvested -100 HOOL.UNVEST Expenses:Grant:Vested 100 HOOL.UNVEST
Táto jediná, vyvážená transakcia modeluje celú udalosť: nenadobudnuté pridelenie sa zníži, príjem sa vykáže, daň sa zadrží a 60 čistých nadobudnutých akcií sa objaví na vašom brokerskom účte so správnou nákladovou základňou pre budúce výpočty kapitálových ziskov.
Dva detaily stoja za to skopírovať do vašej vlastnej hlavnej knihy. Po prvé, vypíšte zrážkový účet účet po účte, namiesto toho, aby ho absorboval univerzálny vyrovnávací účet — ak sa federálna a štátna položka nesčítajú na hodnotu zadržaných akcií, transakcia nebude vyvážená a Beancount vám to povie. Po druhé, nenechávajte prázdny riadok medzi položkami: prázdny riadok ukončuje transakciu a Beancount nahlási syntaktickú chybu na položkách, ktoré za ním nasledujú.
Ak váš zamestnávateľ predá zadržané akcie na voľnom trhu namiesto toho, aby ich prevzal späť za cenu nadobudnutia, predaj je samostatná transakcia — zníženie Assets:Brokerage:Etrade:HOOL proti hotovosti — a akýkoľvek rozdiel medzi predajnou cenou a základňou 150,00 $ je malý kapitálový zisk alebo strata. Nechajte to mimo záznamu o nadobudnutí.
Časť 7: Projektové riadenie vašej účtovnej knihy
Ako vaša hlavná kniha rastie, organizácia sa stáva kľúčovou.
Používanie verzovania (Git) na ochranu vašich dát
Keďže vaša hlavná kniha je textový súbor, je ideálna pre verzovanie pomocou Git. To vám dáva kompletnú históriu všetkých zmien, čo vás chráni pred náhodným vymazaním alebo chybami. Upozornenie: Vaše finančné údaje sú vysoko citlivé. Použite súkromný repozitár na službách ako GitHub/GitLab alebo si hostujte vlastný.
Organizácia pomocou tagov (#) a odkazov (^)
Beancount poskytuje dva spôsoby, ako zoskupiť transakcie nad rámec účtov:
- Značky (
#): Použite pre udalosti alebo projekty. Môžete napríklad filtrovať všetky transakcie súvisiace s konkrétnou cestou.2024-07-20 * "Hotel" "Viedeň" #trip-europe-2024 - Odkazy (
^): Použite na prepojenie finančne súvisiacich transakcií, ktoré sa vyskytujú v rôznych časoch, ako napríklad výber hotovosti a súvisiaci bankový poplatok.
Škálovateľná stratégia pre štruktúrovanie súborov (include)
Jeden jediný obrovský súbor sa ťažko spravuje. Použite direktívu include na rozdelenie vašej hlavnej knihy do viacerých súborov.
main.bean:
; Main ledger file
; Global options
option "title" "My Personal Ledger"
option "operating_currency" "USD"
; Include account declarations and other files
include "accounts.bean"
include "years/2023.bean"
include "years/2024.bean"
include "events/trip-europe-2024.bean"Robustná organizačná stratégia v poradí priority:
- Podľa udalosti: Vytvorte samostatný súbor pre veľkú, samostatnú udalosť (napr.
trip-europe-2024.bean). - Podľa kategórie/príjemcu platby: Pre vysoko pravidelné, opakujúce sa transakcie, ako sú účty za energie alebo plat, ich zoskupte do vlastného súboru (napr.
recurring-rent.bean). - Podľa účtu: Pre transakcie tesne spojené s konkrétnym účtom (úroky, poplatky, platby kreditnou kartou) zvážte súbor špecifický pre účet.
- Podľa dátumu: Pre všetky ostatné všeobecné transakcie je efektívne jednoduché rozdelenie podľa roka (
2024.bean) alebo mesiaca (2024/07.bean).
Časť 8: Záver
Beancount ponúka strmú krivku učenia, ale odmeňuje úsilie neporovnateľnou silou, flexibilitou a kontrolou nad vašimi finančnými údajmi. Prijatím princípov podvojného účtovníctva a praktických nástrojov, ktoré Beancount poskytuje, sa môžete posunúť od jednoduchého sledovania výdavkov ku kompletnému, presnému a prehľadnému systému osobného finančného manažmentu. Vaša hlavná kniha sa stáva trvalým, súkromným a neoceniteľným aktívom na pochopenie vašej minulosti a plánovanie vašej budúcnosti.
Začíname s Beancount.io
Beancount.io je moderná cloudová platforma finančného manažmentu, ktorá transformuje vaše textové záznamy transakcií na komplexné finančné výkazy vrátane výkazu ziskov a strát, súvahy a obratovej bilancie. Kombináciou spoľahlivosti súborov v čistom texte s výkonnými nástrojmi na vizualizáciu vám Beancount.io pomáha udržiavať presnú kontrolu nad vaším finančným životom a zároveň získať cenné poznatky o výkonnosti vašich investícií.
Začnite svoju finančnú cestu s Beancount.io — pozrite si aktuálne plány a ceny, aby ste zistili, čo každá úroveň zahŕňa.

Preskúmajte živú hlavnú knihu →

Preskúmajte živú hlavnú knihu →
