본문으로 건너뛰기

"재무 추적" 태그로 연결된 3개 게시물개의 게시물이 있습니다.

모든 태그 보기

Beancount에서 매출채권 탐색

· 약 3분
Mike Thrift
Mike Thrift
Marketing Manager

개인 재무 관리의 미로 속에서 Beancount는 평문 부기의 명료함과 정밀함을 제공하는 등대와 같습니다. 특히 매출채권—다른 사람에게 받을 돈—을 관리할 때 Beancount는 재무 기록을 완벽하게 정리할 수 있는 구조화된 접근 방식을 제공합니다. 이 블로그에서는 매출채권 추적, 환불 처리, 미해결 거래 관리의 복잡성을 Beancount와 함께 살펴봅니다. 구매를 반환하거나, 돈을 빌려주거나, 환불을 기다리는 상황이든, 이 글은 재무 명료성을 위한 로드맵이 될 것입니다.

Beancount에서 매출채권 이해하기:

2024-02-17-navigating-receivables-beancount-guide

매출채권은 당신에게 빚진 돈을 의미합니다. 이는 쇼핑 반환 후 환불을 기다리거나, 누군가에게 돈을 빌려준 경우 등 다양한 상황에서 발생할 수 있습니다. 예를 들어, Amazon.com에서 시계 스트랩을 반환하고 환불을 기다리고 있다고 가정해 보세요. Beancount에서는 이 거래를 신용카드 부채에서 매출채권 자산으로 돈이 이동하는 형태로 기록합니다:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

환불 관리:

환불이 처리되어 돈을 받게 되면, 매출채권 잔액을 상쇄하기 위해 또 다른 거래가 기록됩니다. 이렇게 하면 계정에 돈이 다시 들어온 것이 반영됩니다:

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

전체 거래 사이클:

매출채권을 포함한 완전한 입·출 거래는 위 두 거래를 결합한 형태이며, 환불 후 균형 잡힌 계정을 보여줍니다:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

미해결 거래 처리:

환불이나 상환이 아직 이루어지지 않은 거래의 경우, Beancount는 #UNRESOLVED 태그를 사용합니다. 이 태그는 아직 미결제인 금액을 식별하고 추적하는 데 도움을 줍니다. 예시:

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

#UNRESOLVED 태그가 붙은 거래만 필터링하면 아직 정산되지 않은 금액을 빠르게 파악할 수 있습니다.

제로 밸런스 유지:

올바른 원장에서는 #UNRESOLVED 태그가 붙은 거래를 제외한 Assets:Receivables 계정의 모든 거래 합계가 이상적으로 0이 되어야 합니다. 이는 예상된 모든 자금이 정산되었음을 의미하며, 재무 기록의 무결성을 보장합니다.

예를 들어, 미해결 거래가 명확히 표시된 유효한 원장은 다음과 같습니다:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

반대로, 매출채권 계정이 0으로 맞춰지지 않아 #UNRESOLVED 태그가 필요하게 되는 경우는 잘못된 원장이 됩니다.

결론

Beancount에서 매출채권을 탐색하는 것이 두렵지 않습니다. 거래 기록 방법, 환불 관리, 미해결 거래 감시를 명확히 이해하면 정확하고 신뢰할 수 있는 재무 기록을 유지할 수 있습니다. Beancount의 구조화된 매출채권 관리 접근 방식은 재무 추적을 단순화할 뿐 아니라, 모든 금액이 정확히 기록된다는 안심을 제공합니다. 이제 Beancount의 힘을 활용해 재무 관리를 한층 부드럽게 만들어 보세요.

Beancount에서 매출채권 및 매입채무 이해하기

· 약 2분
Mike Thrift
Mike Thrift
Marketing Manager

여러분, 안녕하세요! 오늘 블로그 포스트에서는 단순함과 강력함으로 많은 사랑을 받고 있는 복식회계 도구 Beancount의 세계로 들어가 보겠습니다. 특히 두 가지 핵심 개념인 매출채권과 매입채무에 대해 이야기하겠습니다.

이 용어들을 이해하는 것은 Beancount(또는 모든 복식회계 시스템)를 효과적으로 사용하기 위해 필수적입니다. 초보자라면 걱정하지 마세요—단계별로 차근차근 설명해 드리겠습니다!

매출채권 및 매입채무: 기본 개념

2023-05-30-receiveable-and-payable

회계에서 “매출채권”과 “매입채무”는 빚진 돈을 추적하기 위해 사용되는 용어입니다. “매출채권”은 타인이 당신에게 빚진 돈을 의미하고, “매입채무”는 당신이 타인에게 빚진 돈을 의미합니다.

  1. Accounts Receivable (A/R): 당신이 서점을 운영하고 고객이 신용으로 책을 구매했다고 가정해 보세요. 그 책에 대해 고객이 당신에게 빚진 금액이 매출채권이 됩니다.

  2. Accounts Payable (A/P): 반대로, 출판사에 새 책 세트를 주문했지만 선불로 지불하지 않았다고 상상해 보세요. 출판사에게 당신이 빚진 금액이 매입채무가 됩니다.

Beancount에서는 이러한 항목들을 해당 계정을 통해 추적합니다. 주요 장점은 언제든지 재무 상태를 명확하고 정확하게 파악할 수 있다는 점입니다.

Beancount에서 매출채권 및 매입채무 설정하기

Beancount 파일 구조는 필요에 따라 단순하게도, 복잡하게도 만들 수 있습니다. 매출채권과 매입채무를 위해서는 자산과 부채 섹션 아래에 별도 계정을 생성하는 것이 일반적입니다.

1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:AccountsPayable

거래 추적

채권자 측

계정을 설정한 후, 매출채권 및 매입채무와 관련된 거래를 추적할 수 있습니다. 예시를 살펴보겠습니다:

2023-05-29 * "Sold books to customer on credit"
Assets:AccountsReceivable 100 USD
Income:BookSales -100 USD

여기서는 고객이 100을빚졌으므로매출채권에100을 빚졌으므로 매출채권에 100을 추가합니다. 동시에 아직 현금을 받지 않았으므로 수익을 동일 금액만큼 감소시켜 균형을 맞춥니다.

고객이 나중에 결제하면 다음과 같이 기록합니다:

2023-06-01 * "Received payment from customer"
Assets:Bank:Savings 100 USD
Assets:AccountsReceivable -100 USD

채무자 측

매입채무에도 동일한 원리가 적용되지만 부호가 반대입니다:

2023-05-30 * "Bought books from publisher on credit"
Liabilities:AccountsPayable 200 USD
Expenses:BookPurchases -200 USD

채무를 상환할 때는 다음과 같이 기록합니다:

2023-06-02 * "Paid off debt to publisher"
Liabilities:AccountsPayable -200 USD
Assets:Bank:Checking 200 USD

마무리

매출채권과 매입채무는 모든 회계 시스템의 핵심입니다. 이를 정확히 추적함으로써 재무 상태를 포괄적으로 이해할 수 있습니다.

이는 시작에 불과하며 Beancount는 훨씬 더 많은 기능을 제공합니다. 이 블로그 포스트가 중요한 개념을 명확히 이해하는 데 도움이 되길 바랍니다. 언제나 그렇듯 즐거운 회계 되세요!

순이익 101 — 그리고 Beancount에서 추적하는 방법

· 약 4분
Mike Thrift
Mike Thrift
Marketing Manager

비즈니스를 설명하는 수많은 숫자 중에서 가장 중요한 것은 바로 순이익입니다. 이것이 바로 궁극적인 수익성 지표, 흔히 “바텀 라인”이라고 불리는 값이죠. 하지만 이것이 정확히 무엇을 의미하며, 평문 회계 시스템인 Beancount를 사용해 어떻게 정밀하게 추적할 수 있을까요?

한 번 살펴보겠습니다.

2020-03-12-net-income-101-how-to-track-it-in-beancount

순이익이 실제 의미하는 바

핵심적으로 순이익은 비즈니스를 운영하는 데 필요한 모든 비용을 지불한 뒤 남는 금액입니다. 여기에는 매출원가(COGS), 모든 운영비, 부채 이자, 세금이 포함됩니다.

기업 재무 건전성을 가장 명확히 보여주는 단일 지표이며, 모든 이해관계자에게 중요한 수치입니다.

  • 대출기관은 이를 통해 귀사의 대출 상환 능력을 평가합니다.
  • 투자자는 순이익을 배당 가능성 혹은 성장 자본의 원천으로 봅니다.
  • 창업자는 이를 기반으로 재무 여유를 파악하고 전략적 재투자 계획을 수립합니다.

양의 순이익은 수익이 난다는 뜻이고, 음의 순이익은 손실을 의미합니다. 간단하죠.

핵심 공식 (필요한 상세 수준 선택)

순이익을 계산하는 방법은 상세도에 따라 달라집니다. 필요에 맞는 공식을 선택하면 됩니다.

  • 전체 공식: Revenue – COGS – Operating Expenses – Interest – Taxes = Net Income
  • 표준 공식: Revenue – COGS – Expenses = Net Income
  • 간단 공식: Total Revenues – Total Expenses = Net Income

비용에 대한 빠른 팁: COGS와 운영비의 차이는? **COGS(매출원가)**는 제품·서비스 생산에 직접 들어가는 비용(예: 원자재, 직접 인건비)이며, 운영비는 급여, 임대료, 소프트웨어 구독, 보험 등 사업을 유지하는 모든 기타 비용을 포함합니다.

간단 예시

실제 상황을 가정해 보겠습니다. 작은 커피 로스팅 사업체가 지난 달에 다음과 같은 결과를 냈다고 가정합니다.

항목금액예시 원장 계정
매출$60,000Income:Sales
매출원가(그린 커피 원두)$20,000Expenses:COGS
운영비$18,000Expenses:Ops:*
이자(장비 대출)$1,000Expenses:Interest
세금$1,000Expenses:Taxes

전체 공식을 적용하면 계산은 다음과 같습니다.

Net;Income=Net;Income = 60,000 - 20,00020,000 - 18,000 - 1,0001,000 - 1,000 = 20,00020,000

이 사업체는 해당 월에 실제 순이익 $20,000을 기록했습니다.

Beancount에 기록하는 방법

Beancount 구조는 이를 위해 최적화되어 있습니다. 계정을 논리적으로 정리하면 순이익 계산이 자동으로 이루어집니다.

  • 수익Income 상위 계정 아래에 태그를 달아 정리합니다. 예: Income:Sales, Income:Services.
  • 비용은 직접비와 간접비를 구분해 기록합니다. 직접비는 Expenses:COGS, 나머지는 Expenses:Ops:Salaries, Expenses:Ops:Software 등 하위 계정으로 나눕니다.
  • 이자와 세금은 각각 별도 계정(Expenses:Interest, Expenses:Taxes)에 기록합니다. 이렇게 하면 특히 세무 준비 시 분석이 훨씬 쉬워집니다.
  • 정기적으로 잔액을 맞춥니다. 기본 회계 방정식 Assets = Liabilities + Equity가 항상 성립해야 합니다.

기간 말(예: 월말)에는 balance 어설션을 사용해 계정 상태를 확인할 수 있습니다. 이 엔트리는 실제 금액 이동을 일으키지 않으며, 잔액이 이렇게 되어야 함을 선언합니다. bean-check은 일치하지 않을 경우 오류를 보고합니다.

; 2025-07-31 Coffee Roaster Enterprises — July close
2025-07-31 balance Assets:Bank:Operating 42000.00 USD
2025-07-31 balance Expenses:COGS 20000.00 USD
2025-07-31 balance Expenses:Ops 18000.00 USD
2025-07-31 balance Expenses:Interest 1000.00 USD
2025-07-31 balance Expenses:Taxes 1000.00 USD
2025-07-31 balance Income:Sales -60000.00 USD

한 줄 순이익 조회

여기가 바로 마법이 일어나는 부분입니다. 구조화된 원장을 갖추면 단일 명령어로 원하는 기간의 순이익을 계산할 수 있습니다.

bean-query books.beancount \
"SELECT period, sum(number) WHERE account = '^(Income|Expenses)' \
AND year = 2025 GROUP BY month"

이 쿼리는 2025년 IncomeExpenses 계정의 모든 값을 합산하고 월별로 그룹화합니다. Beancount에서는 수익이 음수, 비용이 양수로 표시되므로 결과는 순이익의 음수가 됩니다.

더 나아가, Beancount 웹 인터페이스인 Fava는 Reports → Income Statement 화면에서 이를 자동으로 시각화해 줍니다.

자동화 가능한 빠른 인사이트

원장이 단순 텍스트 파일이기 때문에 강력한 자동화 워크플로우를 구축할 수 있습니다.

  • 월간 이메일 요약: bean-report books.beancount income_statement > net-income.txt 명령을 cron 작업으로 설정하고 매월 1일에 결과 파일을 자신에게 이메일로 전송합니다.
  • 수익성 알림: Git pre‑commit 훅을 만들어 월 누적 수익성을 검사하도록 합니다. 순이익이 음수이면 커밋을 차단해 손실을 인지하도록 강제합니다.
  • 시나리오 모델링: 비즈니스를 스트레스 테스트하고 싶나요? books.beancountscenarios/recession.bean으로 복사하고 Income 항목을 20% 감소시킨 뒤 순이익 쿼리를 다시 실행하면 즉시 영향을 확인할 수 있습니다.

핵심 정리

  • 순이익은 진정한 바텀 라인입니다. 목표는 이를 양수로 유지하고 시간에 따른 추세를 파악하는 것입니다.
  • Beancount는 수식을 명시적으로 보여주고, 검색 가능하며, 버전 관리가 가능합니다. 숨겨진 공식이 없습니다.
  • 체계적인 계정 구조와 단일 쿼리만 있으면 언제든지 비즈니스가 실제로 돈을 벌고 있는지 알 수 있습니다.