ثبتهای دفتر روزنامه Beancount: آموزش، تعاریف و مثالها
هر تراکنش مالی که کسب و کار شما انجام میدهد، باید ثبت شود - و در دنیای حسابداری متن ساده، این با ثبتهای دفتر روزنامه شروع میشود. اگر از Beancount استفاده میکنید، درک ثبتهای دفتر روزنامه کلید ایجاد سوابق مالی دقیق، قابل ممیزی و پاکیزه است.
این راهنما شما را در موارد زیر راهنمایی میکند:
- ثبت دفتر روزنامه چیست؟
- چرا ثبتهای دفتر روزنامه مهم هستند؟
- چگونه آنها را در دستور زبان Beancount بنویسیم؟
- چگونه به طور موثر از آنها استفاده کنیم؟
- مثالهایی از تراکنشهای دنیای واقعی (پرداختهای مشتری، خریدها، وامها و غیره)
🧾 ثبت دفتر روزنامه در Beancount چیست؟
در Beancount، ثبت دفتر روزنامه یک تراکنش تاریخدار است که در قالب متن ساده و قابل خواندن توسط انسان نوشته شده است. هر ورودی از اصول حسابداری دوبل پیروی میکند - شما ثبت میکنید که پول از کجا میآید (بستانکار) و به کجا میرود (بدهکار)، و اطمینان حاصل میکنید که دفاتر شما همیشه تراز هستند.
مثال:
2024-06-01 * "پرداخت مشتری برای فاکتور #123"
Assets:Bank:Checking 600.00 USD
Income:Sales
- علامت
*نشان دهنده یک تراکنش تسویه شده است. - شرح، زمینه را برای ورودی نشان میدهد.
Assets:Bank:Checkingبدهکار شده است.Income:Salesبستانکار شده است (مقدار ضمنی است).
هر ورودی در داخل یک فایل .beancount قرار دارد - فقط یک فایل متنی که میتوانید نسخه آن را کنترل کنید، پشتیبانگیری کنید و حتی در Vim یا VSCode ویرایش کنید.
📒 چرا ثبتهای دفتر روزنامه مهم هستند
ثبتهای دفتر روزنامه واحد اتمی دفتر کل شما هستند.
آنها:
- به دفتر کل و مانده حسابها وارد میشوند.
- همه گزارشها را هدایت میکنند: صورت سود و زیان، ترازنامه، جریانهای نقدی
- به شما این امکان را میدهند که هر دلار را، خط به خط، تا منبع آن ردیابی کنید.
با ابزارهای مناسب، این تراکنشها را در یک رابط کاربری مشاهده خواهید کرد - طبقهبندی شده، قابل جستجو و فیلتر کردن. اما همه چیز با آن ورودی ساده متن ساده شروع میشود.
📚 نحوه کارکرد حسابداری دوبل در Beancount
Beancount حسابداری دوبل را اعمال میکند. هر تراکنش باید متوازن باشد: مجموع بدهیها = مجموع بستانکاریها.
قانون سریع:
- بدهکار داراییها و هزینهها (شما وجه نقد به دست میآورید یا هزینهای را متحمل میشوید)
- بستانکار درآمد و بدهیها (شما پول به دست میآورید یا بدهی را بر عهده میگیرید)
مثال - خرید لوازم اداری:
2024-06-02 * "خرید جوهر چاپگر"
Expenses:OfficeSupplies 100.00 USD
Assets:Bank:Checking
🧠 تجسم ورودیها
پس از ذخیره، در سمت چپ نوار پیمایش https://beancount.io/ledger/0/income_statement/ موارد زیر را خواهید دید ...
- نمای دفتر روزنامه: تراکنشها را با جستجو، برچسبها و فیلتر کردن ببینید
- منوی کشویی فیلتر حساب: ماندههای جاری و ورودیهای هر حساب را ببینید
- صورت سود و زیان: مجموع حسابهای
Income:*وExpenses:*شما - ترازنامه: داراییهای شما منهای بدهیها
Fava به تبدیل ورودیهای خام Beancount شما به گزارشهای عملی کمک میکند - بدون نیاز به تنظیم پایگاه داده.
💡 مثالهای رایج ثبت دفتر روزنامه
✅ شما توسط یک مشتری حقوق دریافت میکنید
2024-06-05 * "پرداخت برای فاکتور #456"
Assets:Bank:Checking 1,200.00 USD
Income:Consulting
اختیاری: اگر از حسابهای دریافتنی استفاده میکنید:
2024-05-20 * "فاکتور #456 ارسال شد"
Assets:AccountsReceivable 1,200.00 USD
Income:Consulting
2024-06-05 * "پرداخت برای فاکتور #456"
Assets:Bank:Checking 1,200.00 USD
Assets:AccountsReceivable -1,200.00 USD
🖨️ شما لوازم اداری میخرید
2024-06-07 * "خرید از Staples"
Expenses:OfficeSupplies 85.00 USD
Assets:Bank:Checking
🏦 شما پرداخت وام انجام میدهید
فرض کنیم شما 1000 دلار پرداخت میکنید، با 200 دلار سود و 800 دلار به سمت اصل:
2024-06-10 * "بازپرداخت وام"
Liabilities:Loan -800.00 USD
Expenses:LoanInterest 200.00 USD
Assets:Bank:Checking -1,000.00 USD
🔒 بستن ورودیها در پایان سال
برای "بستن دفاتر"، شما معمولاً همه حسابهای Income و Expenses را به Equity منتقل میکنید.
2024-12-31 close Income:*
2024-12-31 close Expenses:*
یا، به صورت دستی:
2024-12-31 * "بستن دفاتر"
Equity:RetainedEarnings 45,000.00 USD
Income:Consulting -45,000.00 USD
🛠️ تعدیل ورودیها
اگر در حال انجام حسابداری تعهدی هستید، میخواهید تعدیل ورودیها را اضافه کنید - برای هزینههای پیش پرداخت شده، درآمد معوق و غیره.
مثال: اشتراک نرم افزار ماهانه 100 دلاری که سالانه پرداخت میشود
2024-01-01 * "پرداخت سالانه نرم افزار"
Assets:Prepaid 1,200.00 USD
Assets:Bank:Checking -1,200.00 USD
2024-01-31 * "استهلاک ماهانه"
Expenses:Software 100.00 USD
Assets:Prepaid -100.00 USD
با اسکریپتها یا ابزارهای Beancount موجود، آن را خودکار کنید.
🧰 Beancount: سبک وزن، قابل ممیزی، قدرتمند
Beancount فقط یک ابزار حسابداری نیست - بلکه یک ایده است: حقیقت مالی شفاف و متن ساده. این یک سیستم دفترداری مدرن است که:
- به راحتی قابل کنترل نسخه است (Git!)
- کاملاً قابل حمل است (بدون پایگاه داده اختصاصی)
- برای توسعه دهندگان، فریلنسرها و مشاغل کوچک عالی است
آماده شروع هستید؟
فایل Beancount خود را با این موارد شروع کنید:
option "title" "دفتر کل کسب و کار من"
option "operating_currency" "USD"
2024-01-01 open Assets:Bank:Checking USD
2024-01-01 open Income:Sales USD
2024-01-01 open Expenses:OfficeSupplies USD
2024-01-01 open Equity:OpeningBalances USD
2024-01-01 * "مانده اولیه"
Assets:Bank:Checking 10,000.00 USD
Equity:OpeningBalances
سپس فایل خود را با ابزار تجسم ترجیحی خود بارگیری کنید تا جادو را ببینید.
یک شروع آسانتر میخواهید؟ الگوها، واردکنندهها یا ابزارهای انجمن مانند bean-extract را امتحان کنید.
با Beancount، دفاتر شما سرانجام متعلق به خودتان هستند - ساده، قابل اسکریپتنویسی و ضد ممیزی.
اگر نسخه PDF قابل دانلود یا تغییرات خاص کسب و کارهای کوچک از مثالها را میخواهید، به من اطلاع دهید.