پرش به محتوای اصلی

Beancount چیست: دفترهای حسابداری دوطرفه به صورت متن ساده

بیکانت حسابداری دوطرفه با متن ساده برای سهام، ارز دیجیتال و امور روزمره است — چیستی آن و چرا مهندسان از آن استفاده می‌کنند.

این راهنما بهترین شیوه‌های حسابداری متنی ساده را با استفاده از ابزار قدرتمند، متن‌باز و متنی ساده حسابداری، Beancount، تلفیق می‌کند. این راهنما فلسفه بنیادی، نحو مقدماتی تا پیشرفته، مطالعات موردی عملی برای دارایی‌های پیچیده، و استراتژی‌های مدیریت بلندمدت دفتر را پوشش می‌دهد.

بخش ۱: «چرا» - پایه‌های حسابداری هوشمند​

پیش از فرو رفتن در «چگونه»، درک «چرا» حیاتی است. دفترداری مؤثر، سنگ بنای مدیریت مالی شخصی و گامی ضروری به سوی شفافیت و آزادی مالی است.

فراتر از ردیابی هزینه: مسیر شفافیت مالی​

اپلیکیشن‌های ساده ردیابی هزینه به شما می‌گویند پولتان کجا رفت. یک سیستم حسابداری قوی این را و بسیار بیشتر به شما می‌گوید: تصویری کامل از سلامت مالی شما، از جمله ارزش خالص، جریان نقدی و عملکرد سرمایه‌گذاری‌هایتان را فراهم می‌کند. هدف اصلی مشاهده‌پذیری است—دستیابی به درکی روشن و مبتنی بر داده از زندگی مالی‌تان، که شما را قادر می‌سازد تصمیم‌های آگاهانه بگیرید، ریسک را ارزیابی کنید، و به سوی اهداف بلندمدت مانند بازنشستگی گام بردارید.

چرا دوبل‌انتری؟ قدرت یک سیستم متوازن​

برخلاف دفترداری یک‌طرفه (فهرست ساده‌ای از هزینه‌ها)، روش دوطرفه هر تراکنش را به‌عنوان جریان ارزش بین حداقل دو حساب ثبت می‌کند. اصل بنیادی آن، معادله اساسی حسابداری است:

دارایی‌ها=بدهی‌ها+حقوق صاحبان سهام (ارزش خالص)\text{دارایی‌ها} = \text{بدهی‌ها} + \text{حقوق صاحبان سهام (ارزش خالص)}

این سیستم تضمین می‌کند که دفترهای شما همیشه متوازن باشند و خطاها را به‌شدت کاهش می‌دهد. با تولید گزارش‌های اساسی مانند ترازنامه (آنچه دارید و بدهکارید) و صورت سود و زیان (آنچه کسب کرده و خرج کرده‌اید)، تصویری مالی کامل ارائه می‌دهد.

بخش ۲: شروع کار با Beancount​

Beancount ابزاری قدرتمند و مبتنی بر پایتون برای حسابداری متنی ساده است.

اولین نگاه شما با Fava در Beancount.io​

Beancount.io محیطی قدرتمند فراهم می‌کند که موتور Beancount را با یک اپلیکیشن موبایل (iOS، Android) و اپلیکیشن وب - Fava، رابطی فوق‌العاده مبتنی بر وب برای مصورسازی دفتر شما، ترکیب می‌کند. نیازی به نصب نیست. هنگام استفاده از این پلتفرم، مستقیماً با یک ویرایشگر متن برای فایل دفتر خود (مثلاً main.bean) تعامل می‌کنید و گزارش‌های تولیدشده توسط Fava را به‌صورت لحظه‌ای می‌بینید که به‌روز می‌شوند.

Fava متن ساده‌ای که می‌نویسید را می‌گیرد و آن را به نمودارهای تعاملی، صورت‌های مالی، و فهرست‌های تراکنش قابل فیلتر تبدیل می‌کند و نمای روشنی از گزارش‌های مالی‌تان به شما می‌دهد.

یا در ترمینال با bea شروع کنید​

اگر ترجیح می‌دهید از پوسته کار کنید، bea خط فرمان Beancount.io است. نیازی به حساب کاربری نیست: آن را با brew install bex-co/tap/bea یا uv tool install beancount-io نصب کنید، و همان فایل متنی ساده را ایجاد، اعتبارسنجی، پرس‌وجو و گزارش‌گیری می‌کند. شروع سریع CLI شما را در چند دقیقه به نخستین دفتر می‌رساند، و ماه اول شما با bea یک ماه کامل را از ابتدا تا انتها می‌بندد.

پنج نوع حساب اصلی​

Beancount از پنج نوع حساب سطح بالا استفاده می‌کند که ساختار دفتر شما را تشکیل می‌دهند:

نوع حسابتوضیحمانده معمول
Assetsآنچه دارید (نقد، حساب‌های بانکی، سرمایه‌گذاری‌ها، املاک).مثبت
Liabilitiesآنچه بدهکارید (بدهی کارت اعتباری، وام‌ها، رهنی).منفی
Incomeپول از کجا می‌آید (حقوق، پاداش، بهره).منفی
Expensesپول کجا می‌رود (غذا، اجاره، سفر، مالیات).مثبت
Equityارزش خالص شما؛ برای مانده‌های اولیه استفاده می‌شود.منفی

معادله Beancount​

Beancount نسخه خودش از معادله حسابداری را اعمال می‌کند که در آن مجموع تمام ثبت‌ها در کل دفتر شما برابر صفر است:

دارایی‌ها+هزینه‌ها+بدهی‌ها+درآمد+حقوق صاحبان سهام=0\text{دارایی‌ها} + \text{هزینه‌ها} + \text{بدهی‌ها} + \text{درآمد} + \text{حقوق صاحبان سهام} = 0

به همین دلیل، بنا بر قرارداد، حساب‌های Income، Liabilities و Equity مقادیر منفی نگه می‌دارند—آنها منابع وجوهی هستند که Assets و Expenses شما را افزایش می‌دهند.

بخش ۳: زبان Beancount - نحو هسته‌ای​

تمام ورودی‌ها در Beancount دستورهایی هستند که با یک تاریخ شروع می‌شوند.

تعریف حساب‌ها (open) و کالاها​

پیش از آنکه بتوانید از یک حساب استفاده کنید، باید آن را با دستور open اعلام کنید. همچنین می‌توانید به‌صورت اختیاری ارزها یا «کالاهایی» را که نگه می‌دارد مشخص کنید.

; 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:Google

کالاها می‌توانند ارزهای دنیای واقعی باشند (مثلاً USD، JPY) یا هر واحد سفارشی که تعریف می‌کنید، مانند مایل‌های هوایی (MILES_UA) یا نمادهای سهام (HOOL).

ثبت اولین تراکنش شما (*)​

تراکنش‌ها رایج‌ترین ورودی هستند. آنها با یک تاریخ، یک نشانه (* برای تراکنش کامل یا ! برای تراکنش ناقص)، یک دریافت‌کننده اختیاری، و یک توصیف شروع می‌شوند. هر خطی که در ادامه می‌آید (با دو فاصله تورفته) یک «ثبت» در یک حساب است.

; 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 USD

برای راحتی، اگر تراکنشی فقط دو ثبت داشته باشد، می‌توانید مبلغ را در خط دوم حذف کنید، و Beancount آن را به‌صورت خودکار محاسبه می‌کند.

2024-07-28 * "Trader Joe's" "Weekly groceries"
  Expenses:Food:Groceries     125.50 USD
  Liabilities:CreditCard:US:Discover

توازن در سطح تراکنش: مهم‌تر برای استفاده روزمره، هر تراکنش منفرد نیز باید متوازن باشد—مجموع تمام ثبت‌ها در یک تراکنش واحد باید برابر صفر باشد. اگر تراکنشی متوازن نباشد، Beancount خطایی مانند این نشان می‌دهد:

هشدار خطای Beancount

مدیریت تراکنش‌های چندارزی (@ و @@)​

Beancount در حسابداری چندارزی عالی است.

  • از @ برای تعیین قیمت تبدیل هر واحد استفاده کنید.
  • از @@ برای تعیین هزینه کل تبدیل استفاده کنید.
; 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

بخش ۴: تضمین دقت - هنر تطبیق​

یک شیوه کلیدی برای حفظ دفتری دقیق، تطبیق منظم است. این کار شامل مقایسه مانده‌های دفتر Beancount شما با صورت‌حساب‌های رسمی از مؤسسات مالی‌تان است.

خودکارسازی بررسی‌ها با تأیید مانده (balance)​

دستور balance ابزار اصلی شما برای بررسی‌های خودکار است. شما تأیید می‌کنید که در تاریخی معین، یک حساب مانده مشخصی داشت. Beancount اگر مانده محاسبه‌شده‌اش با تأیید شما مطابقت نداشته باشد، خطایی ایجاد می‌کند. این برای یافتن سریع خطاها بسیار ارزشمند است.

توجه: تأیید مانده وضعیت حساب را در آغاز روز مشخص‌شده بررسی می‌کند (پیش از هر تراکنشی در آن روز).

; From your monthly credit card statement
2024-08-01 balance Liabilities:CreditCard:US:Discover  -1432.78 USD

پیوند دادن اسناد پشتیبان (document)​

می‌توانید به فایل‌های خارجی مانند صورت‌حساب‌های بانکی یا رسیدها پیوند دهید و ردیفی قابل حسابرسی ایجاد کنید. Fava این پیوندها را قابل کلیک می‌کند.

2024-08-01 document Liabilities:CreditCard:US:Discover "statements/discover-2024-07.pdf"

اصلاح خطاها و مقداردهی مانده‌ها​

وقتی دفتر خود را شروع می‌کنید یا اختلافی می‌یابید که نمی‌توانید ردیابی کنید، باید یک تعدیل انجام دهید. شیوه استاندارد استفاده از یک حساب ویژه 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

حساب Equity:Opening-Balances مبالغی را نگه می‌دارد که از منابع ناشناخته یا خارجی وارد دفتر شما می‌شوند.

برای اصلاحات سریع که اختلاف دقیق مهم نیست، دستور pad می‌تواند به‌صورت خودکار مانده یک حساب را تنظیم کند تا با تأیید balance بعدی مطابقت داشته باشد و تفاوت را به یک حساب حقوق صاحبان سهام ثبت کند. از این با احتیاط استفاده کنید، چون می‌تواند مشکلات بزرگ‌تر را پنهان کند. تعدیل‌های صریح عموماً ایمن‌تر هستند.

بخش ۵: الگوهای تراکنش پیشرفته و واقع‌بینانه​

ردیابی بدهی‌ها: مدیریت مطالبات و بدهی‌های قابل پرداخت​

حسابداری دوطرفه برای ردیابی پولی که به شما بدهکارند (Assets:Receivables) یا شما به آنها بدهکارید (Liabilities:Payable) بی‌نقص است.

مثال: شما هزینه شام گروهی ۹۰ دلار را می‌پردازید، و دوستتان باب سهم ۴۵ دلاری خود را به شما بدهکار است.

  1. ثبت هزینه اولیه و مطالبه:

    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
  2. وقتی باب به شما بازپرداخت می‌کند:

    2024-08-06 * "Bob" "Paid me back for dinner"
      Assets:Bank:US:Chase:Checking     45.00 USD
      Assets:Receivables:Bob           -45.00 USD

حساب Assets:Receivables:Bob اکنون صفر است، و دفترهای شما کاملاً متوازن هستند.

دارایی‌ها در مقابل هزینه‌ها: خرید خودرو و استهلاک​

خریدی بزرگ مانند خودرو یک هزینه ساده نیست؛ تحصیل دارایی‌ای است که با گذر زمان ارزش خود را از دست می‌دهد (استهلاک).

  1. ثبت خرید به‌عنوان دارایی:

    2023-01-15 * "Toyota Dealer" "Purchase of a new car"
      Assets:Car:ToyotaCamry         30000.00 USD
      Assets:Bank:US:Chase:Checking -30000.00 USD
  2. ثبت استهلاک سالانه: فرض کنید تخمین می‌زنید خودرو هر سال ۳٬۰۰۰ دلار از ارزشش را از دست می‌دهد. در پایان سال، این را به‌عنوان هزینه ثبت می‌کنید.

    2023-12-31 * "Depreciation" "Annual car value depreciation"
      Expenses:Depreciation:Car      3000.00 USD
      Assets:Car:ToyotaCamry        -3000.00 USD

پس از این ورودی، حساب Assets:Car:ToyotaCamry شما به‌درستی ارزش جدید خودرو (۲۷٬۰۰۰ دلار) را نشان می‌دهد، و شما هزینه استفاده را به‌درستی به‌عنوان هزینه آن سال لحاظ کرده‌اید.

بخش ۶: کاوش عمیق - مدل‌سازی دارایی‌های پیچیده دنیای واقعی​

مطالعه موردی ۱: حسابداری املاک و مستغلات​

خانه اغلب بزرگ‌ترین دارایی و بدهی شماست. در اینجا نحوه مدل‌سازی آن آمده است.

  1. ایجاد حساب‌ها و یک کالای سفارشی:

    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
  2. ثبت خرید: فرض کنید خانه‌ای ۵۰۰ هزار دلاری با ۱۰۰ هزار دلار پیش‌پرداخت و وامی ۴۰۰ هزار دلاری می‌خرید.

    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
  3. ثبت پرداخت‌های ماهانه رهن: پرداخت ماهانه شما شامل اصل وام (بدهی را کاهش می‌دهد) و بهره (یک هزینه) است.

    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
  4. ردیابی افزایش ارزش (سود تحقق‌نیافته): ارزش بازار یک خانه تغییر می‌کند. برای ردیابی این بدون تأثیر بر ارزش خالص رسمی‌تان (زیرا سود تا زمانی که نفروشید محقق نمی‌شود)، می‌توانید از یک دستور قیمت با یک ارز «مجازی» استفاده کنید.

    برای دارایی‌های بازار و جفت‌ارزهای پشتیبانی‌شده، قیمت‌های زنده می‌تواند نقل‌قول‌های ارزش‌گذاری را در یک دفتر میزبانی‌شده نگه دارد. املاک منفرد همچنان به ارزیابی‌ها و قیمت‌های تاریخ‌دار خودتان نیاز دارند، همان‌طور که در مثال زیر آمده است.

    ; 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

این به شما امکان می‌دهد ارزش تخمینی را در نمودارهای Fava ببینید بدون آنکه به‌نادرستی ترازنامه‌تان را متورم کنید.

یک دفتر نمونه زنده املاک و مستغلات با ردیابی رهن، استهلاک، و فروش ملک را کاوش کنید:

باز کردن دفتر نمونه املاک و مستغلات در برگه جدید

مطالعه موردی ۲: ردیابی واحدهای سهام محدود (RSU)​

RSUها شکل رایجی از غرامت سهام هستند. حسابداری آنها شامل ردیابی اعطای اولیه، رویدادهای واگذاری، و کسر مالیات است.

  1. راه‌اندازی اولیه: کالاهایی برای سهام واگذارشده (HOOL) و واگذارنشده (HOOL.UNVEST) ایجاد کنید، همراه با هر حسابی که ورودی‌های بعدی به آن دست می‌زنند. اعلام همه آنها از پیش همان چیزی است که دو تراکنش زیر را به‌تنهایی قابل بارگذاری می‌کند.

    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
  2. ثبت اعطای اولیه: این تراکنش نشان می‌دهد که کل اعطا به یک حساب دارایی واگذارنشده منتقل می‌شود. هنوز چیزی مشمول مالیات نیست، بنابراین کل ورودی به کالای ردیابی HOOL.UNVEST ارز شده است.

    2021-02-01 * "Hooli" "Initial RSU Grant"
      Assets:Grant:Unvested        1000 HOOL.UNVEST
      Income:Grant:Awards         -1000 HOOL.UNVEST
  3. ثبت یک رویداد واگذاری: این تراکنش کلیدی است. وقتی سهام واگذار می‌شود، درآمد شناسایی می‌کنید، کارفرما سهام را برای پرداخت مالیات کسر می‌کند، و شما بقیه را نگه می‌دارید. فرض کنید ۱۰۰ سهم به قیمت ۱۵۰٫۰۰ دلار واگذار می‌شود، بنابراین:

    • غرامت ناخالص: ۱۰۰ × ۱۵۰٫۰۰ دلار = ۱۵٬۰۰۰٫۰۰ دلار
    • سهام کسرشده برای مالیات: ۴۰ × ۱۵۰٫۰۰ دلار = ۶٬۰۰۰٫۰۰ دلار (فدرال ۴٬۸۰۰٫۰۰ دلار + ایالتی ۱٬۲۰۰٫۰۰ دلار)
    • سهامی که نگه می‌دارید: ۶۰ × ۱۵۰٫۰۰ دلار = ۹٬۰۰۰٫۰۰ دلار بهای تمام‌شده
    • نقد به شما: ۰٫۰۰ دلار — کل کسر به‌صورت سهام پرداخت می‌شود

    این مبالغ همان ورودی هستند، و آنها تطبیق می‌کنند: ۶٬۰۰۰٫۰۰ دلار مالیات به‌علاوه ۹٬۰۰۰٫۰۰ دلار سهام نگه‌داشته‌شده دقیقاً همان ۱۵٬۰۰۰٫۰۰ دلار درآمد است.

    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

این تراکنش واحد و متوازن، کل رویداد را مدل‌سازی می‌کند: اعطای واگذارنشده کاهش می‌یابد، درآمد شناسایی می‌شود، مالیات کسر می‌شود، و ۶۰ سهم خالص واگذارشده با بهای تمام‌شده صحیح برای محاسبات آتی سود سرمایه در حساب کارگزاری شما ظاهر می‌شود.

دو نکته ارزش کپی کردن در دفتر خودتان را دارند. نخست، کسر مالیات را حساب به حساب بنویسید به‌جای آنکه اجازه دهید یک حساب متوازن‌کننده جامع آن را جذب کند — اگر ثبت‌های فدرال و ایالتی به ارزش سهام کسرشده جمع نشوند، تراکنش متوازن نخواهد شد و Beancount به شما خواهد گفت. دوم، بین ثبت‌ها خط خالی نگذارید: خط خالی تراکنش را پایان می‌دهد، و Beancount روی ثبت‌های پس از آن خطای نحوی گزارش می‌دهد.

اگر کارفرمای شما سهام کسرشده را در بازار آزاد بفروشد به‌جای آنکه آنها را به قیمت واگذاری بازگرداند، فروش یک تراکنش جداگانه است — کاهشی در Assets:Brokerage:Etrade:HOOL در برابر نقد — و هر تفاوتی بین قیمت فروش و بهای ۱۵۰٫۰۰ دلار یک سود یا زیان سرمایه کوچک است. آن را خارج از ورودی واگذاری نگه دارید.

بخش ۷: مدیریت پروژه برای دفتر کل شما​

با رشد دفتر شما، سازماندهی کلیدی می‌شود.

استفاده از کنترل نسخه (Git) برای ایمن‌سازی داده‌های شما​

از آنجا که دفتر شما یک فایل متنی است، برای کنترل نسخه با Git بی‌نقص است. این به شما تاریخچه کاملی از تمام تغییرات می‌دهد و شما را از حذف‌ها یا اشتباهات تصادفی محافظت می‌کند. هشدار: داده‌های مالی شما بسیار حساس هستند. از یک مخزن خصوصی در سرویس‌هایی مانند GitHub/GitLab استفاده کنید، یا خودتان میزبانی کنید.

سازمان‌دهی با برچسب‌ها (#) و پیوندها (^)​

Beancount دو راه برای گروه‌بندی تراکنش‌ها فراتر از حساب‌ها فراهم می‌کند:

  • برچسب‌ها (#): برای رویدادها یا پروژه‌ها استفاده کنید. می‌توانید همه تراکنش‌های مربوط به یک سفر مشخص را فیلتر کنید، برای مثال. 2024-07-20 * "Hotel" "Vienna" #trip-europe-2024
  • پیوندها (^): برای اتصال تراکنش‌های مالی مرتبط که در زمان‌های مختلف رخ می‌دهند، مانند برداشت نقد و کارمزد بانکی مرتبط، استفاده کنید.

یک استراتژی مقیاس‌پذیر برای ساختاردهی فایل‌های شما (include)​

یک فایل واحد و عظیم مدیریتش دشوار است. از دستور include برای تقسیم دفتر خود به چندین فایل استفاده کنید. 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"

یک استراتژی سازمانی قوی، به ترتیب اولویت:

  1. بر اساس رویداد: یک فایل جداگانه برای یک رویداد بزرگ و خودکفا ایجاد کنید (مثلاً trip-europe-2024.bean).
  2. بر اساس دسته/دریافت‌کننده: برای تراکنش‌های بسیار منظم و مکرر مانند قبوض آب و برق یا حقوق، آنها را در فایل خودشان گروه‌بندی کنید (مثلاً recurring-rent.bean).
  3. بر اساس حساب: برای تراکنش‌هایی که محکم به یک حساب خاص گره خورده‌اند (بهره، کارمزدها، پرداخت‌های کارت اعتباری)، یک فایل مخصوص آن حساب را در نظر بگیرید.
  4. بر اساس تاریخ: برای همه سایر تراکنش‌های عمومی، یک تقسیم ساده بر اساس سال (2024.bean) یا ماه (2024/07.bean) مؤثر است.

بخش ۸: نتیجه‌گیری​

Beancount منحنی یادگیری سختی ارائه می‌دهد اما این تلاش را با قدرتی بی‌نظیر، انعطاف‌پذیری، و کنترل بر داده‌های مالی‌تان پاداش می‌دهد. با پذیرش اصول حسابداری دوطرفه و ابزارهای عملی که Beancount فراهم می‌کند، می‌توانید از ردیابی ساده هزینه به یک سیستم کامل، دقیق و بینش‌بخش مدیریت مالی شخصی حرکت کنید. دفتر شما به دارایی‌ای دائمی، خصوصی و ارزشمند برای درک گذشته و برنامه‌ریزی آینده‌تان تبدیل می‌شود.

شروع کار با Beancount.io​

Beancount.io یک پلتفرم مدرن مبتنی بر ابر برای مدیریت مالی است که سوابق تراکنش متنی شما را به صورت‌های مالی جامع، از جمله صورت سود و زیان، ترازنامه، و تراز آزمایشی تبدیل می‌کند. Beancount.io با ترکیب قابلیت اطمینان فایل‌های متنی ساده با ابزارهای قدرتمند مصورسازی، به شما کمک می‌کند کنترل دقیقی بر زندگی مالی‌تان حفظ کنید و در عین حال بینش‌های ارزشمندی درباره عملکرد سرمایه‌گذاری‌تان به دست آورید.

سفر مالی خود را با Beancount.io آغاز کنید — برای اینکه هر سطح شامل چه چیزهایی است، طرح‌ها و قیمت‌گذاری فعلی را ببینید.

داشبورد دفتر beancount.io که نمودار روند ارزش خالص، مانده‌های حساب، و نوار دستیار هوش مصنوعی را نشان می‌دهد

دفتر زنده را کاوش کنید →

صورت سود و زیان دفتر عمومی Beancount اپل روی beancount.io با نمودار سود خالص و تفکیک درآمد و هزینه

دفتر زنده را کاوش کنید →

ترازنامه دفتر عمومی Beancount اپل روی beancount.io با نمودار ارزش خالص و جزئیات دارایی‌ها و بدهی‌ها

دفتر زنده را کاوش کنید →

منبع: https://beancount.io/fa/docs/introduction-to-beancount