Toto je stručná, ale komplexná referenčná príručka syntaxe jazyka Beancount, ktorá spája praktickú štruktúru, pravidlá a príklady. Viac podrobností nájdete v Cheat Sheet.
Prehľad
Beancount je účtovný systém s podvojným zápisom v čistom texte. Jeho jazyk je štruktúrovaný okolo troch hlavných stavebných blokov:
- Komodity (meny, akcie, body atď.)
- Účty (hierarchické, kategorizované denníky)
- Direktívy (datované položky zaznamenávajúce udalosti alebo konfiguráciu)
Komodity
Komodity sa vždy píšu veľkými písmenami, napr. USD, EUR, AAPL, BTC, MILES, HOURS.
Účty
Účty sú hierarchické názvy oddelené dvojbodkami, písané veľkými začiatočnými písmenami. Musia začínať jedným z piatich koreňových typov účtov:
| Názov | Typ | Bežný obsah | Príklad |
|---|---|---|---|
Assets | + | Hotovosť, banka, investície | Assets:Checking |
Liabilities | - | Kreditné karty, pôžičky | Liabilities:CreditCard |
Income | - | Plat, úroky | Income:EmployerA |
Expenses | + | Nákupy, účty | Expenses:Food:Dining |
Equity | - | Počiatočné/Konečné zostatky | Equity:Opening-Balances |
- Jednotlivé časti musia začínať veľkým písmenom, byť oddelené dvojbodkami (
:) a nesmú obsahovať medzery. - V častiach sú povolené čísla a pomlčky.
- Koreňové názvy účtov je možné prispôsobiť (pozri nižšie).
Direktívy
Direktívy sú základné príkazy v súbore Beancount. Väčšina začína dátumom, za ktorým nasleduje typ direktívy a argumenty. Spracúvajú sa v chronologickom poradí (podľa dátumu), nie v poradí podľa riadkov v súbore.
Všeobecný formát:
YYYY-MM-DD <directive> <arguments...>Bežné direktívy a príklady
Otváranie a zatváranie účtov
2023-01-01 open Assets:Checking USD,EUR ; Optionally specify allowed currencies
2023-12-31 close Assets:CheckingDeklarovanie komodít
2020-07-22 commodity AAPL
name: "Apple Inc."Deklarácie cien
2022-04-30 price AAPL 150.00 USDPoznámky a dokumenty
2022-03-20 note Assets:Checking "Asked about refund"
2022-03-20 document Assets:Checking "statements/2022-03.pdf"Transakcie
2024-01-05 * "Coffee Shop" "Morning coffee"
Expenses:Food 4.50 USD
Assets:Cash -4.50 USD
2024-01-06 ! "Phone Bill" "Monthly payment" #utilities ^phone
id: "INV12345" ; Metadata
Expenses:Utilities 60.00 USD
Assets:CheckingVlastnosti účtovných zápisov
; With cost basis
Assets:Stocks 1 AAPL {150.00 USD}
; With price annotation
Assets:Cash -100 USD @ 1.25 CAD
; With total price
Assets:Cash -100 USD @@ 125.00 CAD
; Implicit balance
Assets:Cash -100 USD
Assets:BankZostatky a dopĺňanie
Direktíva pad musí byť datovaná pred direktívou balance, ktorú dopĺňa, pretože kontrola zostatku sa vykonáva na začiatku dňa:
2024-06-01 pad Assets:Checking Equity:Opening-Balances
2024-06-02 balance Assets:Checking 1000.00 USDUdalosti
2024-06-01 event "location" "San Francisco, CA"Možnosti
Nastavenie celosúborovej konfigurácie:
option "title" "My Ledger"
option "operating_currency" "USD"
option "documents" "docs/"
option "name_assets" "Vermoegen"Pozrite si Referenčnú príručku možností pre viac informácií.
Pluginy a organizácia súborov
plugin "beancount.plugins.module_name"
plugin "beancount.plugins.module_name" "config-string"
include "other/file.beancount"
pushtag #project
; ...
poptag #projectDôležité pravidlá
- Všetky transakcie musia byť vyrovnané: súčet váh všetkých účtovných zápisov musí byť nula. Váha zápisu je jeho čiastka, alebo jeho cena (
{}) alebo kurz (@) prepočítaný na inú menu, ak je prítomný. - Účty musia byť otvorené pred ich použitím; zatvorené účty nemôžu prijímať zápisy.
- Kontroly zostatkov kontrolujú iba špecifikovanú menu, môžu byť použité na nadradených účtoch a vyhodnocujú sa na začiatku svojho dátumu (takže vylučujú transakcie z toho istého dňa).
- Cenové poznámky (
@za jednotku,@@za celkovú sumu) ovplyvňujú vyrovnanie: stanovujú váhu zápisu v inej mene.-100 USD @ 1.25 CADváži125 CADa vyrovnáva zápis125 CAD; odstráňte cenu a transakcia už nebude vyrovnaná.
Bežné vzory
Otvorenie účtov s počiatočným zostatkom
Otvorte oba účty, použite pad na dátum začiatku a skontrolujte zostatok nasledujúci deň (kontrola sa vykonáva na začiatku dňa):
2024-01-01 open Assets:Checking USD
2024-01-01 open Equity:Opening-Balances
2024-01-01 pad Assets:Checking Equity:Opening-Balances
2024-01-02 balance Assets:Checking 1000.00 USDInvestičná transakcia
2024-01-01 * "Buy stock"
Assets:Broker:Stock 10 AAPL {150.00 USD}
Assets:Broker:Cash -1500.00 USDTransakcia s viacerými menami
2024-01-01 * "Currency exchange"
Assets:USD -100.00 USD @ 1.25 CAD
Assets:CAD 125.00 CADKomentáre
poptag #trip-to-peru
; inline comments begin with a semi-colon
* any line not starting with a valid directive is also ignored silently