هزینههای معوق در Beancount: راهنمای عملی (با مثالهای دفترچه کپی-پیست)
هزینههای معوق تا زمانی که بسته شدن ماهها شروع به انباشته شدن میکند، انتزاعی به نظر میرسند. اینها ستون فقرات حسابداری بر پایه تعهد صحیح هستند که اطمینان میدهند گزارشهای مالی شما واقعیت اقتصادی را نشان میدهند، نه فقط زمان تغییر دست نقدی. در ادامه یک راهنمای واضح و مبتنی بر Beancount برای اینکه این هزینهها چه هستند، چرا مهماند و دقیقاً چگونه آنها را در دفترچه متنی خود ثبت، معکوس و گزارش کنید، آورده شده است.
TL;DR ⚡
- هزینههای معوق هزینههایی هستند که در این دوره متحمل شدهاید اما هنوز پرداخت نکردهاید. تا زمانی که نقدینگی خارج نشود بهعنوان بدهی ثبت میشوند.
- در Beancount این کار ساده است: یک حساب
Expenses:
را بدهکار و یک حسابLiabilities:Accrued:
را بستانکار میکنید. بعداً وقتی پرداخت میکنید بدهی را پاک میکنید.- برای گزارش میتوانید با اجرای
bean-query
همراه باCLOSE ON
وCLEAR
، مانیتی از ترازنامه در تاریخ مشخصی بگیرید.
هزینه معوق چیست؟
هزینه معوق هزینهای است که کسبوکار آن را متحمل شده اما هنوز پرداخت نکرده است. این هزینه زمانی ثبت میشود که سرویس دریافت شده یا هزینه متحمل شده باشد، حتی اگر فاکتور هنوز نرسیده یا پرداخت هنوز موعدش نرسیده باشد. این روش مطابق با اصل تطبیق در حسابداری بر پایه تعهد است که میگوید هزینهها باید در همان دورهای که درآمدهای مرتبط را تولید کردهاند ثبت شوند.
نمونههای رایج شامل:
- دستمزدهای کارمندان که در پایان ماه کسب شدهاند اما در ماه بعد پرداخت میشوند.
- آب و برق که در دسامبر مصرف شدهاند اما تا ژانو یه صورتحساب نمیشود.
- بهره وام که در طول ماه انباشته شده اما هنوز از حساب شما برداشت نشده است.
با ثبت این هزینهها در زمان وقوع، تصویر دقیقتری از عملکرد مالی شرکت در آن دوره به دست میآورید.
نگاه Beancount به این موضوع (در ۳۰ ثانیه)
Beancount یک سیستم حسابداری دوطرفه مبتنی بر متن ساده است. همه چیز یک دستور یا تراکنش تاریخدار در یک فایل متنی است. سیستم بر پایه پنج نوع حساب اصلی ساخته شده است: Assets, Liabilities, Equity, Income, و Expenses.
ورودیها همیشه بر اساس تاریخ مرتب میشوند. نکته مهم این است که بررسیهای balance
قبل از پردازش تراکنشهای همان روز انجام میشود. این برای زمانی که بررسیها و ورودیهای معکوس میگذارید، اهمیت دارد.
در نهایت، زبان bean-query
روشی قدرتمند شبیه SQL برای تولید گزارشها فراهم میکند. با عملگرهایی مثل OPEN ON
, CLOSE ON
و CLEAR
میتوانید نماهای دقیق «به تاریخ» برای صورتهای مالی بسا زید.
نمودار حسابها (پیشنهادی)
یک نمودار حسابهای تمیز و سلسلهمراتبی بهترین دوست شماست. برای هزینههای معوق، ساختار بهسادگی قابلدرک است. شما به موارد زیر نیاز دارید:
- یک حساب هزینه: به عنوان مثال
Expenses:Utilities
,Expenses:Payroll:Wages
- یک حساب بدهی متناظر: به عنوان مثال
Liabilities:Accrued:Utilities
,Liabilities:Accrued:Payroll
- حساب نقدی شما: به عنوان مثال
Assets:Bank:Checking
Beancount پنج نوع حساب سطح‑بالا را تحمیل میکند. نگه داشتن نامهای حساب بهصورت منظم، پرسوجو و گزارشگیری را در آینده بسیار ساده میکند.
الگوی اصلی (بدون افزونه، بدون جادو)
این مستقیمترین روش برای مدیریت تعهدات در Beancount است. دو گام شامل تعهد هزینه در پایان ماه و پاکسازی بدهی هنگام پرداخت میشود.
گام ۱: تعهد هزینه در پایان ماه
در آخرین روز دوره، هزینه را ثبت کرده و بدهی را ایجاد میکنید.
2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
گام ۲: پاکسازی تعهد هنگام پرداخت
زمانی که فاکتور میآید و پرداخت میکنید، دیگر حساب هزینه را دوباره استفاده نمیکنید. بهجای آن، حساب بدهی را بدهکار میکنید تا پاک شود.
2025-03-05 * "Pay Feb electricity - City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking
این سادهترین روش برای تیمهای کوچک است. هزینه در فوریه بهدرستی ثبت میشود و در مارس دوبار محاسبه نمیشود. توجه داشته باشید که در Beancount، گذاشتن مقدار خالی باعث میشود سیستم بهصورت خودکار تراکنش را متعادل کند.
جایگزین: ورودی معکوس در روز اول
اگر سبک کلاسیک «معکوس خودکار» را ترجیح میدهید، میتوانید معکوس ورودی تعهد را در اولین روز ماه بعدی ثبت کنید. سپس فاکتور واقعی فروشنده را همانطور که معمولاً میکنید، به حساب هزینه بگذارید.
گام ۱: تعهد در پایان ماه (همانطور که قبلاً)
2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
گام ۲: معکوس در اولین روز ماه بعد
2025-03-01 * "Reverse Feb electricity accrual" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities
گام ۳: ثبت پرداخت بهصورت معمول
2025-03-05 * "City Power - February bill"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking
نکته درباره بررسیها: بهخاطر داشته باشید که بررسیهای balance
قبل از تراکنشهای همان روز ارزیابی میشوند. اگر میخواهید مانده حساب Liabilities:Accrued:Utilities
را بررسی کنید، بررسی را در 2025-02-28
قرار دهید تا تعهد را تأیید کنید یا در 2025-03-01
بعد از ورودی معکوس تا صفر باشد. قرار دادن آن قبل از معکوس در 2025-03-01
منجر به شکست نادرست میشود.
شش تعهد رایج (الگوهای کپی‑پیست) 📋
در ادامه مثالهای آماده برای تعهدهای رایج کسبوکار آورده شده است.
۱. اجارهای که هنوز فاکتور نشده
2025-01-31 * "Accrue January rent" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent
۲. دستمزدهای کسبشده اما پرداختنشده
2025-03-31 * "Accrue March wages" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll
۳. پرداخت مرخصی (PTO) کسبشده
2025-03-31 * "Accrue PTO earned in March" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll
۴. بهره انباشته بر وام
2025-02-29 * "Accrue monthly loan interest" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest