본문으로 건너뛰기

Beancount 치트 시트: 문법과 지시어

한 페이지 Beancount 문법 레퍼런스: 계정 유형과 부호, 상품, 거래와 전기, 잔액, 메타데이터, 이벤트, 태그와 옵션.

계정 구조​

계정 유형 및 부호​

유형          부호    예시
------------------------------------------------
Assets        (+)     Assets:US:BofA:Checking
Liabilities   (-)     Liabilities:Credit:Amex
Income        (-)     Income:Salary:Gross
Expenses      (+)     Expenses:Food:Restaurant
Equity        (-)     Equity:Opening-Balances

통화 형식​

상품은 대문자 기호입니다 — 통화, 티커, 사용자 정의 단위를 포함합니다. 다음은 지시문이 아닌 명명 예시입니다:

통화:             USD, EUR, CAD, AUD
투자:             GOOG, AAPL, VTI
암호화폐:         BTC, ETH
사용자 정의 단위: HOURS, AIRMILES, HOME_MAYST

명령어 문법​

계정 관리​

; 계정 개설
2024-01-01 open Assets:Checking             ; 단순
2024-01-01 open Assets:Investing USD,GOOG   ; 제약 조건 포함
 
; 계정 폐쇄
2024-12-31 close Assets:Old:Account

통화 선언​

2024-01-01 commodity VTSAX
    name: "Vanguard Total Stock Market Index"
    asset-class: "equity"

거래 기록​

; 기본 거래
2024-01-15 * "Grocery Store" "Weekly shopping"
    Assets:Checking     -100.00 USD
    Expenses:Food:Groceries
 
; 메타데이터와 태그 포함 (#work는 태그, ^invoice-123은 링크)
2024-01-15 * "Restaurant" "Business dinner" #work ^invoice-123
    id: "T-1234"
    receipt: "path/to/receipt.pdf"
    Expenses:Meals      80.00 USD
    Liabilities:Credit

분개 사양​

다음은 전기 라인입니다 — 각각은 거래 안에 속하며, 날짜 라인 아래에 들여쓰기됩니다:

; 기본 금액
Assets:Cash              100.00 USD
 
; 원가 기준 추적
Assets:Invest:VTSAX      10 VTSAX {100.00 USD}        ; 단위당 원가
Assets:Invest:VTSAX      10 VTSAX {{1000.00 USD}}     ; 총 원가
Assets:Invest:VTSAX      10 VTSAX {100.00 # 9.95 USD} ; 단위당 원가에 총 수수료 추가
 
; 가격 명세
Assets:Forex            1000.00 USD @ 0.85 EUR        ; 단위당
Assets:Forex            1000.00 USD @@ 850.00 EUR     ; 총 가격
 
; 날짜가 지정된 로트
Assets:Invest:VTSAX      10 VTSAX {100.00 USD, 2024-01-15}

잔액 검증​

; 잔액 패딩: Equity:Opening-Balances까지 Assets:Checking을 채움
2024-01-01 pad Assets:Checking Equity:Opening-Balances
 
; 잔액 단언: 해당 날짜의 시작 시점에 검사되므로, pad 이후 날짜로 지정
2024-02-01 balance Assets:Checking  1000.00 USD

메타데이터 추적​

; 메모 첨부
2024-01-15 note Assets:Checking "Called bank about fee"
 
; 문서 연결
2024-01-15 document Assets:Checking "path/to/statement.pdf"
 
; 가격 기록
2024-01-15 price VTSAX  100.00 USD

호스팅 원장의 경우, 실시간 가격이 날짜가 지정된 평가 가격을 자동으로 제공할 수 있습니다. 선택기에서 지원되는 자산 쌍을 선택한 다음, include를 원장에 복사하세요. 거래 가격과 원가 기준은 명시적으로 유지하세요.

이벤트 기록​

; 위치 추적
2024-01-15 event "location" "New York, USA"
 
; 속성 변경
2024-01-15 event "address" "123 Main Street"

태그 관리​

; 태그 범위 제어: #vacation은 pushtag와 poptag 사이의 모든 거래에 적용됨
pushtag #vacation
2024-01-15 * "Hotel"
    Expenses:Travel:Lodging   200.00 USD
    Assets:Credit
poptag #vacation

구성 옵션​

; 기본 설정
option "title" "Personal Finance Ledger"
option "operating_currency" "USD"
 
; 계정 명명
option "name_assets" "Assets"
option "name_liabilities" "Liabilities"
option "name_income" "Income"
option "name_expenses" "Expenses"
option "name_equity" "Equity"
 
; 문서 처리
option "documents" "/path/to/docs"

주석 및 구성​

; 한 줄 주석
 
* 섹션 제목
** 하위 섹션
; 거래 블록이 이어집니다...
 
; 계정 그룹화
; Assets
2024-01-15 ...
 
; Expenses
2024-01-16 ...

이 참조는 실용적인 예제와 함께 Beancount의 구문 요소에 대한 완전한 개요를 제공합니다.

출처: https://beancount.io/ko/docs/Basics/cheatsheet