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

90 پست با برچسب "Accounting"

مشاهده تمام برچسب‌ها

تفکیک حسابداری تجاری و شخصی: ترسیم خطی واضح با Beancount

· زمان مطالعه 6 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

یک شرکت موفق و یک کیف پول سالم، یک ویژگی مشترک دارند: مرزها.

برای هر صاحب کسب و کاری، از یک فریلنسر انفرادی گرفته تا بنیانگذار یک استارتاپ در حال رشد، یکی از مهمترین اصول مالی، جداسازی دقیق امور مالی تجاری و شخصی است. مخلوط کردن وجوه - استفاده از حساب تجاری خود برای خرید مواد غذایی یا پرداخت به یک فروشنده تجاری از حساب جاری شخصی شما - تصویری مالی نامرتب و مبهم ایجاد می‌کند. این امر نه تنها باعث بررسی دقیق از سوی مقامات مالیاتی می‌شود، بلکه شما را از بینش واضح در مورد عملکرد واقعی شرکتتان محروم می‌کند.

2023-08-12-business-vs-personal-bookkeeping-with-beancount

خوشبختانه، یک سیستم حسابداری متنی ساده مانند Beancount چارچوب مناسبی را برای اجرای این مرزهای ضروری درست در دفتر کل شما فراهم می‌کند.

چرا جداسازی مهم است

عدم جداسازی امور مالی شما فقط یک عادت بد نیست؛ خطرات قابل توجهی را به همراه دارد و اطلاعات تجاری ارزشمند را پنهان می‌کند.

  • شفافیت برای سازمان امور مالیاتی: سازمان امور مالیاتی فقط پیشنهاد نمی‌کند که حساب‌های بانکی جداگانه داشته باشید؛ آنها قویاً به آن توصیه می‌کنند. وقتی وجوه تجاری و شخصی با هم مخلوط می‌شوند، اثبات اینکه کدام هزینه‌ها کسر مالیات تجاری مشروع هستند دشوار می‌شود. این ابهام می‌تواند منجر به سوالات و پیچیدگی‌هایی شود که بهتر است از آنها اجتناب کنید.
  • خطر حسابرسی: مخلوط کردن تراکنش‌ها یک پرچم قرمز بزرگ برای حسابرسان است. اگر دفاتر شما به‌هم‌ریخته‌ای از فعالیت‌های شخصی و تجاری باشد، در معرض خطر رد کسرهای معتبر یا حتی جریمه قرار می‌گیرید. یک دفتر کل تمیز و جداگانه، حرفه‌ای بودن را نشان می‌دهد و هرگونه حسابرسی احتمالی را روان‌تر و کم‌ استرس‌تر می‌کند.
  • بینش واضح‌تر: چگونه می‌توانید حاشیه سود واقعی خود را بدانید اگر جریان نقدی کسب و کار شما با هزینه‌های شخصی تیره شده باشد؟ یک دفتر کل تجاری مستقل، نمای بدون فیلتری از سلامت مالی شرکت شما به شما می‌دهد. می‌توانید درآمد را به‌طور دقیق پیگیری کنید، هزینه‌ها را تجزیه و تحلیل کنید و بدهی‌های مالیاتی را بدون "نویز" زندگی مالی شخصی خود محاسبه کنید.

تفاوت‌های کلیدی در یک نگاه

هدف، قوانین و ساختار حسابداری تجاری و شخصی اساساً متفاوت است. درک این تفاوت‌ها برای حفظ سوابق دقیق کلیدی است.

حوزهدفاتر تجاریدفاتر شخصی
هدفپیگیری درآمد، هزینه‌ها، دارایی‌ها و بدهی‌ها برای تصمیمات مالیاتی و رشدمدیریت بودجه خانوار و اهداف پس‌انداز
قوانین مالیاتیباید از Schedule C, 1120‑S یا 1065 پیروی کند؛ استانداردهای کسر دقیقالزامات رسمی کمی فراتر از حسابداری اولیه
حساب‌هاحقوق صاحبان سهام، بدهی‌ها، مطالبات، مالیات بر فروش، حقوق و دستمزدجاری، پس‌انداز، سرمایه‌گذاری، وام
پرداخت مالکحقوق (W‑2) یا برداشت مالک از طریق حقوق صاحبان سهامN/A—برداشت‌های شخصی هزینه‌های زندگی را تأمین می‌کند

یک طرح چهار مرحله‌ای Beancount

Beancount جداسازی دو دنیای مالی شما را آسان می‌کند. در اینجا یک گردش کار عملی برای انجام درست آن آورده شده است.

• ۱ — افتتاح حساب‌های اختصاصی

قبل از اینکه حتی اولین ورودی Beancount خود را بنویسید، یک حساب جاری تجاری اختصاصی و کارت اعتباری تجاری باز کنید. این جداسازی فیزیکی پایه و اساس حسابداری تمیز است. پس از انجام این کار، این ساختار را در دفتر کل Beancount خود منعکس کنید.

2025-07-23 open Assets:Bank:Business   USD
2025-07-23 open Assets:Bank:Personal USD

این تنظیم ساده تضمین می‌کند که هر تراکنش می‌تواند از همان لحظه وقوع به وضوح به امور مالی تجاری یا شخصی شما اختصاص داده شود.

• ۲ — ثبت کمک‌ها و برداشت‌های مالک

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

  • کمک: وقتی پول خود را به کسب و کار می‌گذارید تا آن را شروع کنید یا کمبودی را جبران کنید.
  • برداشت: وقتی پول را از کسب و کار برای مصارف شخصی برمی‌دارید (اینگونه است که بسیاری از مالکان انفرادی به خود "پرداخت" می‌کنند).
; تزریق سرمایه برای شروع کسب و کار
2025-07-23 * "کمک مالک"
Assets:Bank:Business 10,000.00 USD
Equity:Owner:Contrib

; برداشت پول برای هزینه‌های زندگی شخصی
2025-08-05 * "برداشت مالک برای اجاره"
Equity:Owner:Draw 2,500.00 USD
Assets:Bank:Business

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

• ۳ — رسیدهای مختلط را سریعاً مدیریت کنید

اشتباهات اتفاق می‌افتد. ممکن است به‌طور تصادفی از کارت تجاری خود برای پرداخت شام شخصی استفاده کنید. نکته کلیدی این است که فوراً آن را در دفتر کل خود تصحیح کنید. تراکنش را حذف نکنید؛ آن را به عنوان برداشت مالک طبقه‌بندی مجدد کنید.

2025-08-07 * "خرید مواد غذایی شخصی با کارت تجاری"
Equity:Owner:Draw 72.35 USD
Assets:Bank:Business

این ورودی به‌درستی منعکس می‌کند که وجوه تجاری برای هزینه‌های شخصی استفاده شده است و آن را به عنوان پولی که از شرکت برداشت کرده‌اید در نظر می‌گیرد. این از شما در برابر مطالبه تصادفی هزینه شخصی غیرقابل کسر در مالیات جلوگیری می‌کند.

• ۴ — مطابقت و بررسی بر اساس برنامه

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

# موجودی بانک تجاری خود را با صورت‌حساب خود بررسی کنید
bean-balance books.bean "Assets:Bank:Business"

# یک صورت سود و زیان برای بررسی سودآوری ایجاد کنید
bean-report books.bean income_statement -e 2025-08-31

این عادت بررسی منظم الزامات حسابداری سازمان امور مالیاتی را برآورده می‌کند و شما را در مورد سلامت مالی کسب و کارتان مطلع نگه می‌دارد.

ملاحظات مالیاتی

  • مالیات تخمینی: برای جلوگیری از یک صورت‌حساب مالیاتی دردناک، مالیات‌های آینده خود را به عنوان یک هزینه تجاری مداوم در نظر بگیرید. حساب‌های بدهی (Liabilities:Tax:Federal، Liabilities:Tax:State) ایجاد کنید و به‌طور منظم درصد مشخصی از هر سپرده را به آنها منتقل کنید. وقتی پرداخت‌های فصلی سر رسید، پول از قبل منتظر است.
  • هزینه‌های شخصی غیرقابل کسر: قانون سازمان امور مالیاتی را به خاطر بسپارید: هزینه‌های تجاری باید هم "معمول" و هم "ضروری" برای کار شما باشند. وعده‌های غذایی شخصی شما، هزینه‌های رفت و آمد و اشتراک‌های غیرتجاری واجد شرایط نیستند و باید کاملاً از صورت سود و زیان کسب و کار شما حذف شوند.

چک لیست شروع سریع

  • حساب‌های بانکی و اعتباری فقط تجاری باز کنید.
  • یک نمودار حساب Beancount با Assets:Bank:Business، Equity:Owner:Contrib و Equity:Owner:Draw ایجاد کنید.
  • در مورد مبنای حسابداری خود (نقدی یا تعهدی) تصمیم بگیرید و آن را در options Beancount خود یادداشت کنید.
  • هرگونه هزینه شخصی تصادفی روی کارت‌های تجاری را فوراً به عنوان Equity:Owner:Draw برچسب بزنید.
  • به‌طور هفتگی تطبیق دهید؛ از فایل .bean خود در یک Git remote خصوصی پشتیبان بگیرید.
  • صورت سود و زیان، ترازنامه و گزارش‌های جریان نقدی خود را هر ماه بررسی کنید.

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

مدل‌سازی تراکنش‌های املاک و مستغلات در Beancount

· زمان مطالعه 7 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

معاملات املاک و مستغلات ممکن است بزرگترین فعالیت مالی در طول عمر یک خانواده باشد. این مقاله توضیح می‌دهد که چگونه املاک را در Beancount مدل‌سازی کنید. من با ملک به عنوان یک دارایی (Asset) و با افزایش ارزش خانه به عنوان سود تحقق‌نیافته (Unrealized Gain) برخورد می‌کنم. علاوه بر این، وام مسکن به عنوان یک بدهی (Liability) و بهره آن به عنوان یک هزینه (Expense) در نظر گرفته می‌شود.

بیایید فرض کنیم آقای A یک خانه لوکس واقع در خیابان 123 ABC Street, XYZ City, CA, 12345 را در تاریخ ۱ ژانویه ۲۰۲۰ به قیمت ۱ میلیون خریداری کرده است. نرخ بهره ۳.۰٪، پیش‌پرداخت ۲۰٪ و مبلغ وام ۸۰۰,۰۰۰ است.

موردمقدار
مبلغ وام مسکن800,000
نرخ بهره3%
دوره وام مسکن30 سال
کل هزینه وام1,478,219.62
اقساط ماهیانه4,106.17
بیمه خانه1,300 در سال (39,000 در کل)
مالیات بر ملک7,500 در سال (225,000 در کل)
تسویه وامدسامبر 2049
کل بهره پرداختی414,219.62

2023-06-09-tracking-real-estate

تصویر جزئیات وام مسکن

ایجاد حساب‌ها

ابتدا، ما خانه را به عنوان یک دارایی (Asset) در نظر می‌گیریم. از آنجایی که خانه به عنوان یک دارایی فهرست می‌شود، باید به آن یک واحد (Unit) اختصاص داد. در این مورد، مقدار واحد فقط یک است؛ بعید است که چندین مورد وجود داشته باشد، و حتی اگر خانه n-ام باشد، می‌خواهیم آن را در یک حساب دارایی مجزا ثبت کنیم. به عبارت دیگر، یک خانه با یک حساب دارایی مطابقت دارد و این دارایی دارای یک واحد خاص است که مقدار آن فقط می‌تواند ۱ باشد.

2019-12-31 commodity HOUSE.ABC
name: "123 ABC Street, XYZ City, CA, 12345"

2019-12-31 open Assets:Property:US:CA:123ABC HOUSE.ABC
2019-12-31 open Liabilities:Bank:US:SomeBank:Mortgage:Loan USD

در خط اول، ما یک واحد کالا (Commodity) تعریف کردیم که معرف خانه است. در خط چهارم، یک حساب دارایی تعریف کردیم که واحد کالای تعریف شده برای خانه را نگه می‌دارد. در خط پنجم، حسابی برای بانک وام‌دهنده تعریف کردیم. از آنجایی که این یک بدهی است، در دسته Liabilities قرار می‌گیرد.

خرید

با تنظیم حساب‌ها به صورت بالا، عمل خرید خانه معادل است با:

قرض گرفتن پول (بدهی) + خرج کردن پول (پیش‌پرداخت) = ۱ خانه در دارایی

مهم‌ترین مرجع هنگام خرید ملک احتمالاً "صورت‌حساب تسویه خریدار" (Buyer’s Settlement Statement) است که به وضوح جریان پول را نشان می‌دهد.

2020-01-01 * "خرید خانه"
Assets:Property:US:CA:123ABC 1 HOUSE.ABC {1,000,000 USD}
Assets:Bank:US:SomeBankA -100,000 USD
Assets:Bank:US:SomeBankB -101,000 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan -800,000.00 USD
Expenses:Home:Insurance 1,000 USD
Expenses:Home:Mortgage:Loan:ClosingCost

در اینجا، ما جزئیات تراکنش خرید خانه را ثبت می‌کنیم؛ جایی که پول از برخی حساب‌های بانکی خارج شده (برای پیش‌پرداخت و سایر هزینه‌ها)، یک وام گرفته شده (افزایش بدهی‌ها) و یک خانه به دست آمده است (افزوده شده به دارایی‌ها).

بازپرداخت وام‌های مسکن

بر اساس سابقه خرید فوق، ما در حال حاضر ۸۰۰,۰۰۰ دلار بدهکار هستیم. با توجه به بهره و با در نظر گرفتن اینکه تمام وام‌ها در ایالات متحده به روش اقساط مساوی (اصل و بهره) پرداخت می‌شوند، هر قسط ماهیانه شامل بخشی برای بهره و بخشی برای اصل وام است. در مراحل اولیه، بهره بخش عمده را تشکیل می‌دهد.

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

2020-02-01 * "پرداخت اقساط وام مسکن"
Assets:Bank:US:SomeBank:Saving:Joint -3,372.83 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan 1,376.26 USD
Expenses:Home:Mortgage:Loan:Interest

این ورودی جزئیات پرداخت ماهانه وام را نشان می‌دهد که از حساب پس‌انداز مشترک شما کسر می‌شود. بازپرداخت اصل وام باعث کاهش بدهی شده و بخش بهره به عنوان هزینه در نظر گرفته می‌شود.

افزایش ارزش (Appreciation)

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

من این روش را به دلایل زیر نپذیرفتم:

۱. ارزش فعلی خانه فقط می‌تواند یک تخمین باشد و صرفاً جهت اطلاع است و ارزش عملی ندارد. معمولاً من فقط می‌توانم ارزیابی ملک را از وب‌سایت‌هایی مثل Redfin یا Zillow به دست آورم که شخصاً فکر نمی‌کنم ارزش مرجع بالایی داشته باشند. همچنین قصد نداشتم این افزایش ارزش‌ها را به صورت لحظه‌ای در کل دارایی‌هایم لحاظ کنم. ۲. شخصاً فکر می‌کنم تا زمانی که وام مسکن تسویه نشده است، اگر جریان نقدی خانه منفی باشد، ملک تا حدی هنوز یک بدهی محسوب می‌شود. بنابراین، گنجاندن زودهنگام آن در دارایی‌ها توهم ثروتمند شدن ایجاد می‌کند و من می‌خواهم از این توهم دوری کنم.

روشی که من برای ثبت افزایش ارزش ملک استفاده می‌کنم (که مشابه مدل‌سازی RSUها است)، استفاده از یک واحد پول مجازی است. با فرض اینکه ارز پایه شما USD است، می‌توانیم از USD.UNVEST (نیازی به ایجاد یک کالا یا Commodity جدید برای این کار نیست) استفاده کنیم تا نشان دهیم این دارایی با یک واحد پول خاص محاسبه می‌شود. رشد یا کاهش این دارایی در USD ثبت نخواهد شد. به این ترتیب، می‌توانم به هدفم یعنی ثبت افزایش ارزش خانه برسم، بدون اینکه این مبلغ در ترازنامه نهایی (Balance Sheet) لحاظ شود.

2020-01-01 price HOUSE.ABC                          1,000,000 USD
2025-01-01 price HOUSE.ABC 1,400,000 USD.UNVEST

شما فقط کافی است قیمت ملک خود را به طور منظم بر اساس USD.UNVEST ثبت کنید.

به این ترتیب، در صفحه Commodity در Fava، می‌توانید روند قیمت مرجع خانه را دنبال کنید. اما در صفحه ترازنامه (Balance Sheet)، قیمت خانه همچنان همان قیمت زمان معامله باقی می‌ماند. یعنی کل دارایی‌های شما همچنان شامل مبلغ پیش‌پرداخت اولیه به علاوه اصل وامی است که به مرور پرداخت کرده‌اید. تغییر نهایی این دارایی تنها زمانی باید رخ دهد که خانه را می‌فروشید.

تصویر نمودار قیمت ملک

فروش

از آنجایی که هنوز هیچ ملکی فروخته نشده است و هزینه‌های متفرقه مختلف در این میان مشخص نیست، این یک سناریوی فرضی است.

فرض کنید در تاریخ ۱ ژانویه ۲۰۲۵، ارزش ملک به ۱,۴۰۰,۰۰۰ دلار افزایش یافته است و برخی از داده‌های مرجع به شرح زیر است:

موردمبلغ
مانده بدهی709,656.20
کمیسیون املاک (۶٪)72,000
سایر هزینه‌های نهایی10,000

شخص A تصمیم به فروش ملک می‌گیرد و قیمت نهایی فروش خانه ۱,۳۰۰,۰۰۰ دلار است.

2025-01-01 * "فروش خانه"
Assets:Property:US:CA:123ABC -1 HOUSE.ABC {1,300,000 USD}
Liabilities:Bank:US:SomeBank:Mortgage:Loan 709,656.20 USD
Expenses:Home:Agent:Fee 72,000 USD
Expenses:Home:ClosingCost 10,000 USD
Expenses:Home:Tax 90,000 USD
Assets:Bank:US:SomeBankA

در اینجا فرض بر این است که ۲ سال از ۵ سال ملک مورد استفاده شخصی بوده است، بنابراین نیازی به پرداخت مالیات برای افزایش ارزش ۵۰۰,۰۰۰ دلاری نیست. من در اینجا یک عدد را به صورت تصادفی محاسبه کرده‌ام. در نهایت، پولی که به حساب شخص A وارد می‌شود ۴۱۸,۳۴۳.۸ دلار است که ۲۰۰,۰۰۰ دلار آن مربوط به پیش‌پرداخت در آن زمان بوده و حدود ۱۰۰,۰۰۰ دلار بابت بهره پرداخت شده است. بنابراین، در نهایت سود دفتری برای شخص A حدود ۱۰۰,۰۰۰ دلار است. شایان ذکر است که محاسبه من دقیق نیست؛ چرا که شخص A در طول این ۵ سال در هزینه اجاره صرفه‌جویی کرده است و ممکن است هزینه‌های دیگری مانند نگهداری، دکوراسیون و غیره برای خانه وجود داشته باشد.

برای انعکاس این موضوع در ترازنامه، می‌توانید این قیمت‌گذاری را اضافه کنید.

2025-01-01 price HOUSE.ABC                          1,300,000 USD

درک حساب‌های دریافتنی و پرداختنی در Beancount

· زمان مطالعه 3 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

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

درک این اصطلاحات برای استفاده مؤثر از Beancount (یا هر سیستم حسابداری دوطرفه) بسیار مهم است. اما اگر مبتدی هستید نگران نباشید – ما همه چیز را گام به گام توضیح خواهیم داد!

حساب‌های دریافتنی و پرداختنی: اصول اولیه

2023-05-30-receiveable-and-payable

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

بیایید یک مثال بزنیم:

  1. حساب‌های دریافتنی (A/R): فرض کنید شما یک کتابفروشی دارید و مشتری کتابی را به صورت نسیه می‌خرد. پولی که آن‌ها بابت کتاب به شما بدهکارند، یک حساب دریافتنی است.

  2. حساب‌های پرداختنی (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

در اینجا، شما ۱۰۰ دلار به حساب‌های دریافتنی خود اضافه می‌کنید زیرا مشتری این مبلغ را به شما بدهکار است. همزمان، درآمد خود را به همان میزان کاهش می‌دهید تا تعادل حفظ شود (زیرا هنوز پول را دریافت نکرده‌اید).

هنگامی که مشتری در نهایت پرداخت می‌کند، آن را به این صورت ثبت خواهید کرد:

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 قابلیت‌های بسیار بیشتری دارد. امیدوارم این پست وبلاگ به روشن شدن این مفاهیم مهم کمک کند. مثل همیشه، حسابداری خوبی داشته باشید!

واکاوی یک دفترکل بین‌کانت: مطالعه موردی برای حسابداری کسب‌وکار

· زمان مطالعه 3 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

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

واکاوی یک دفترکل بین‌کانت: مطالعه موردی برای حسابداری کسب‌وکار

ابتدا با کد شروع کنیم:

2023-05-22-business-template

1970-01-01 open Assets:Bank:Mercury
1970-01-01 open Assets:Crypto

1970-01-01 open Equity:Bank:Chase

1970-01-01 open Income:Stripe
1970-01-01 open Income:Crypto:ETH

1970-01-01 open Expenses:COGS
1970-01-01 open Expenses:COGS:Contabo
1970-01-01 open Expenses:COGS:AmazonWebServices

1970-01-01 open Expenses:BusinessExpenses
1970-01-01 open Expenses:BusinessExpenses:ChatGPT

2023-05-14 * "CONTABO.COM" "Mercury Checking ••1234"
Expenses:COGS:Contabo 17.49 USD
Assets:Bank:Mercury -17.49 USD

2023-05-11 * "Amazon Web Services" "Mercury Checking ••1234"
Expenses:COGS:AmazonWebServices 14490.33 USD
Assets:Bank:Mercury -14490.33 USD

2023-03-01 * "STRIPE" "Mercury Checking ••1234"
Income:Stripe -21230.75 USD
Assets:Bank:Mercury 21230.75 USD

2023-05-18 * "customer_182734" "0x5190E84918FD67706A9DFDb337d5744dF4EE5f3f"
Assets:Crypto -19 ETH {1,856.20 USD}
Income:Crypto:ETH 19 ETH @@ 35267.8 USD

درک کد

۱. افتتاح حساب‌ها: کد با افتتاح مجموعه‌ای از حساب‌ها در تاریخ ۰۱-۰۱-۱۹۷۰ آغاز می‌شود. این حساب‌ها شامل ترکیبی از حساب‌های دارایی (Assets:Bank:Mercury و Assets:Crypto)، یک حساب حقوق صاحبان سهام (Equity:Bank:Chase)، حساب‌های درآمد (Income:Stripe و Income:Crypto:ETH) و حساب‌های هزینه (Expenses:COGS، Expenses:COGS:AmazonWebServices، Expenses:BusinessExpenses و Expenses:BusinessExpenses:ChatGPT) هستند.

۲. تراکنش‌ها: سپس به ثبت مجموعه‌ای از تراکنش‌ها بین تاریخ‌های ۰۱-۰۳-۲۰۲۳ و ۱۸-۰۵-۲۰۲۳ می‌پردازد.

  • تراکنش در تاریخ ۱۴-۰۵-۲۰۲۳ نشان‌دهنده پرداخت ۱۷.۴۹ دلار به CONTABO.COM از حساب Mercury Checking ••1234 است. این مبلغ به عنوان یک هزینه (Expenses:COGS:Contabo) و کسر متناظر از حساب Assets:Bank:Mercury ثبت شده است.

  • به همین ترتیب، تراکنش در تاریخ ۱۱-۰۵-۲۰۲۳ نشان‌دهنده پرداخت ۱۴۴۹۰.۳۳ دلار به Amazon Web Services از همان حساب بانکی است. این مبلغ تحت عنوان Expenses:COGS:AmazonWebServices ثبت شده است.

  • تراکنش در تاریخ ۰۱-۰۳-۲۰۲۳ نشان‌دهنده واریز درآمد از STRIPE به حساب Mercury Checking ••1234 به مبلغ ۲۱۲۳۰.۷۵ دلار است. این مبلغ به عنوان درآمد (Income:Stripe) و افزایشی به حساب بانکی (Assets:Bank:Mercury) ثبت شده است.

  • آخرین تراکنش در تاریخ ۱۸-۰۵-۲۰۲۳ نشان‌دهنده یک تراکنش رمزارزی شامل ۱۹ اتریوم (ETH) از یک مشتری است. این تراکنش تحت Assets:Crypto و Income:Crypto:ETH ردیابی می‌شود. {۱,۸۵۶.۲۰ USD} قیمت اتریوم در زمان تراکنش را نشان می‌دهد، در حالی که @@ ۳۵۲۶۷.۸ USD ارزش کل تراکنش ۱۹ اتریوم را مشخص می‌کند.

در تمام تراکنش‌ها، اصل حسابداری دوطرفه حفظ شده است و اطمینان حاصل می‌شود که معادله دارایی‌ها = بدهی‌ها + حقوق صاحبان سهام همیشه برقرار است.

سخن پایانی

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

امیدواریم این تشریح به شما کمک کند تا ساختار و قابلیت‌های بین‌کانت را بهتر درک کنید، چه یک حسابدار باتجربه باشید و چه مبتدی که سعی در پیگیری امور مالی شخصی خود دارید. منتظر پست وبلاگ بعدی ما باشید، جایی که عمیق‌تر به عملیات پیشرفته بین‌کانت خواهیم پرداخت.

معرفی مجدد طرح رایگان برای مشتریان جدید

· زمان مطالعه 2 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

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

معرفی طرح رایگان جدید برای مشتریان جدید

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

2023-04-28-start-serving-free-users

مشتریان جدیدی که پس از اول ماه مه ۲۰۲۳ ثبت‌نام کنند، به طرح رایگان دسترسی خواهند داشت.

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

اگر هرگونه سؤال یا نگرانی دارید، لطفاً در تماس با ما تردید نکنید. ما همیشه اینجا هستیم تا به بازخورد شما گوش دهیم و هر مشکلی را که ممکن است داشته باشید، برطرف کنیم. از حمایت مداوم شما متشکریم و مشتاقانه منتظر ارائه بهترین خدمات ممکن به شما هستیم.

راهنمای سریع Beancount

· زمان مطالعه 2 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

مثال نام حساب

Assets:US:BofA:Checking

cheatsheet-en

انواع حساب

Assets          +
Liabilities -
Income -
Expenses +
Equity -

کالاها

CNY, EUR, CAD, AUD
GOOG, AAPL, RBF1005
HOME_MAYST, AIRMILES
HOURS

دستورالعمل‌ها

نحو کلی

YYYY-MM-DD <Directive> <Parameters...>

باز کردن و بستن حساب‌ها

2001-05-29 open Expenses:Restaurant
2001-05-29 open Assets:Checking USD,EUR ; محدودیت‌های ارزی

2015-04-23 close Assets:Checking

اعلام کالاها (اختیاری)

1998-07-22 commodity AAPL
name: "Apple Computer Inc."

قیمت‌ها

2015-04-30 price AAPL   125.15 CNY
2015-05-30 price AAPL 130.28 CNY

یادداشت‌ها

2013-03-20 note Assets:Checking "برای پرسیدن در مورد تخفیف تماس گرفته شد"

اسناد

2013-03-20 document Assets:Checking "path/to/statement.pdf"

تراکنش‌ها

2015-05-30 * "شرحی در مورد این تراکنش"
Liabilities:CreditCard -101.23 CNY
Expenses:Restaurant 101.23 CNY

2015-05-30 ! "Cable Co" "Phone Bill" #tag ˆlink
id: "TW378743437" ; فراداده
Expenses:Home:Phone 87.45 CNY
Assets:Checking ; می‌توانید یکی از مبالغ را خالی بگذارید

ثبت‌ها

  ...    123.45 USD                             ساده
... 10 GOOG {502.12 USD} با بهای تمام شده هر واحد
... 10 GOOG {{5021.20 USD}} با بهای تمام شده کل
... 10 GOOG {502.12 # 9.95 USD} با هر دو بهای تمام شده
... 1000.00 USD @ 1.10 CAD با قیمت هر واحد
... 10 GOOG {502.12 USD} @ 1.10 CAD با بهای تمام شده و قیمت
... 10 GOOG {502.12 USD, 2014-05-12} با تاریخ
! ... 123.45 USD ... با پرچم

تأییدیه‌های موجودی و پر کردن (Padding)

; مبلغ را فقط برای ارز مشخص شده تأیید می‌کند:
2015-06-01 balance Liabilities:CreditCard -634.30 CNY

; درج خودکار تراکنش برای برآورده کردن تأییدیه زیر:
2015-06-01pad Assets:Checking Equity:Opening-Balances

رویدادها

2015-06-01 event "location" "New York, USA"
2015-06-30 event "address" "123 May Street"

گزینه‌ها

option "title" "دفتر کل شخصی من"

سایر

pushtag #trip-to-peru
...
poptag #trip-to-peru
; نظرات با یک نقطه ویرگول شروع می‌شوند

جادوی حسابداری متن ساده با Beancount

· زمان مطالعه 7 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

جادوی حسابداری متن ساده با Beancount را کشف کنید

Beancount.io banner

مقدمه

2023-04-18-introduction-to-beancount

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

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

Beancount چیست؟

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

چرا Beancount؟

حسابداری متن ساده چندین مزیت نسبت به سیستم های حسابداری سنتی مبتنی بر صفحه گسترده یا نرم افزاری ارائه می دهد:

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

مفاهیم اصلی Beancount

برای استفاده موثر از Beancount، درک مفاهیم اصلی آن بسیار مهم است:

  • تراکنش ها: رویدادهای مالی، مانند درآمد، هزینه ها یا نقل و انتقالات بین حساب ها، به عنوان تراکنش ثبت می شوند.
  • حساب ها: تراکنش ها شامل یک یا چند حساب، مانند دارایی ها، بدهی ها، درآمد یا هزینه ها می شوند.
  • حسابداری دوبل: Beancount حسابداری دوبل را اعمال می کند و اطمینان می دهد که هر تراکنش دارای بدهی ها و اعتبارات متوازن است.
  • دستورالعمل ها: Beancount از مجموعه ای از دستورالعمل ها برای تعریف تراکنش ها، باز کردن حساب ها و سایر رویدادهای مالی استفاده می کند.

شروع کار با Beancount

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

  • نصب Beancount: Beancount را با استفاده از دستورالعمل های نصب ارائه شده برای سیستم عامل خود نصب کنید.
  • ایجاد فایل Beancount خود: یک فایل متنی ساده جدید با پسوند beancount. ایجاد کنید (به عنوان مثال، my_finances.beancount).
  • تعریف حساب های خود: از دستورالعمل "open" برای تعریف حساب هایی که در تراکنش های خود استفاده می کنید استفاده کنید.
  • ثبت تراکنش ها: از دستورالعمل "txn" برای ثبت تراکنش های مالی خود استفاده کنید.

یا به سادگی در https://beancount.io ثبت نام کنید. در اینجا چند نمونه از حسابداری متن ساده آورده شده است:

مثال 1: تراکنش اساسی

2023-04-01 open Assets:Checking
2023-04-01 open Expenses:Groceries

2023-04-10 txn "فروشگاه مواد غذایی" "خرید مواد غذایی"
Assets:Checking -50.00 USD
Expenses:Groceries 50.00 USD

در این مثال، ما دو حساب Assets:Checking و Expenses:Groceries را باز می کنیم. در 10 آوریل 2023، ما یک تراکنش برای خرید مواد غذایی به ارزش 50 دلار ثبت می کنیم. این تراکنش موجودی Assets:Checking را به میزان 50 دلار کاهش می دهد (بدهی) و موجودی Expenses:Groceries را به میزان 50 دلار افزایش می دهد (اعتبار).

مثال 2: تراکنش درآمد و هزینه

2023-04-01 open Assets:Checking
2023-04-01 open Income:Salary
2023-04-01 open Expenses:Rent

2023-04-05 txn "کارفرما" "پرداخت حقوق"
Assets:Checking 2000.00 USD
Income:Salary -2000.00 USD

2023-04-06 txn "صاحبخانه" "پرداخت اجاره ماهانه"
Assets:Checking -1000.00 USD
Expenses:Rent 1000.00 USD

در این مثال، ما سه حساب را باز می کنیم: Assets:Checking، Income:Salary و Expenses:Rent. در 5 آوریل 2023، ما یک تراکنش پرداخت حقوق به مبلغ 2000 دلار را ثبت می کنیم. این تراکنش موجودی Assets:Checking را به میزان 2000 دلار افزایش می دهد (اعتبار) و موجودی Income:Salary را به میزان 2000 دلار کاهش می دهد (بدهی). در 6 آوریل 2023، ما یک تراکنش پرداخت اجاره به مبلغ 1000 دلار را ثبت می کنیم. این تراکنش موجودی Assets:Checking را به میزان 1000 دلار کاهش می دهد (بدهی) و موجودی Expenses:Rent را به میزان 1000 دلار افزایش می دهد (اعتبار).

مثال 3: انتقال بین حساب ها

2023-04-01 open Assets:Checking
2023-04-01 open Assets:Savings

2023-04-15 txn "بانک" "انتقال از حساب جاری به پس انداز"
Assets:Checking -500.00 USD
Assets:Savings 500.00 USD

در این مثال، ما دو حساب را باز می کنیم: Assets:Checking و Assets:Savings. در 15 آوریل 2023، ما یک تراکنش برای انتقال 500 دلار از حساب جاری به حساب پس انداز ثبت می کنیم. این تراکنش موجودی Assets:Checking را به میزان 500 دلار کاهش می دهد (بدهی) و موجودی Assets:Savings را به میزان 500 دلار افزایش می دهد (اعتبار).

این مثال ها مفاهیم اساسی سیستم حسابداری دوبل Beancount را نشان می دهند. با ثبت صحیح تراکنش ها، کاربران می توانند سوابق دقیقی از فعالیت های مالی خود را نگهداری کرده و گزارش هایی را برای به دست آوردن بینش در مورد وضعیت مالی خود تولید کنند.

تولید گزارش و تجزیه و تحلیل داده ها

Beancount دارای مجموعه ای از ابزارهای قدرتمند برای تولید گزارش های مالی، از جمله ترازنامه، صورت سود و زیان و موارد دیگر است. همچنین می توانید از Fava، یک رابط کاربری مبتنی بر وب برای Beancount، برای تجسم و تعامل با داده های مالی خود استفاده کنید. https://beancount.io بر اساس Fava با مجوز MIT ساخته شده است.

نتیجه گیری

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

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

اکنون که پایه محکمی در Beancount دارید، زمان آن رسیده است که سفر حسابداری متن ساده خود را آغاز کنید. با صفحات گسترده دست و پا گیر و نرم افزارهای پیچیده خداحافظی کنید و به دنیای Beancount خوش آمد بگویید. حسابداری مبارک!

بهبود تجربه Beancount شما با لینک‌ها و پرس‌وجوهای سفارشی

· زمان مطالعه 4 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

Beancount، سیستم حسابداری دوطرفه که مورد علاقه توسعه‌دهندگان و علاقه‌مندان به امور مالی است، در سادگی خود قدرتمند است. اما برای کسانی که کنترل بیشتر و ناوبری سریع‌تر در Fava، رابط وب Beancount، می‌خواهند، لینک‌های سفارشی نوار کناری و پرس‌وجوهای SQL می‌توانند گردش کار شما را به سطح بعدی ببرند.

در این راهنما، به شما نشان خواهیم داد که چگونه:

  • لینک‌های دسترسی سریع را به نوار کناری Fava اضافه کنید
  • از پرس‌وجوهای SQL برای فیلتر کردن و تحلیل پیشرفته استفاده کنید
  • گردش کار خود را برای بررسی‌های ماهانه یا تشخیص ناهنجاری سفارشی کنید

چرا Fava را سفارشی کنیم؟

Fava از قبل یک رابط کاربری زیبا برای مشاهده دفتر کل Beancount شما است، اما با رشد دفتر روزنامه شما، نیاز به میانبرهای بهتر و پرس‌وجوهای هوشمندتر نیز افزایش می‌یابد.

مشکلاتی که این راه حل می‌کند:

  • ناوبری مکرر در بازه‌های زمانی
  • فیلتر کردن تراکنش‌ها در حساب‌های تو در تو
  • شناسایی سریع‌تر مانده‌های منفی یا ناهنجاری‌ها

✨ لینک‌های سفارشی نوار کناری

بیایید با بهبود گردش کار روزانه شما با میانبرهای ساده نوار کناری شروع کنیم. این لینک‌ها در نوار کناری سمت چپ Fava ظاهر می‌شوند و می‌توانند شما را مستقیماً به نماهای فیلتر شده مانند تراکنش‌های این ماه یا درآمد ماه گذشته ببرند.

این خطوط را به فایل Beancount خود اضافه کنید:

2021-01-01 custom "fava-sidebar-link" "Current Month" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "Last Month" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "Clear All" "/jump?account=&time=&filter="

آنها چه کاری انجام می‌دهند:

  • ماه جاری: نمای تراکنش‌ها را فیلتر شده بر اساس ماه جاری باز می‌کند.
  • ماه گذشته: فوراً به ماه قبل می‌پرد—عالی برای بررسی‌های پایان ماه.
  • پاک کردن همه: فیلترها را بازنشانی می‌کند و دوباره همه ورودی‌ها را نمایش می‌دهد.

این میانبرها ورودی دستی زمان را حذف کرده و تجربه Fava شما را روان‌تر و شخصی‌تر می‌کنند.

🔍 پرس‌وجوهای سفارشی SQL

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

SELECT account, units(sum(position)), sum(position)
WHERE number(units(position)) < 0
AND account ~ '.*:BCM:.*'
AND date >= DATE(2021,12,9)
AND date < DATE(2022,1,9)

توضیح:

  • account ~ '.*:BCM:.*': حساب‌هایی را که شامل :BCM: در نام خود هستند، فیلتر می‌کند.
  • number(units(position)) < 0: مانده‌های منفی (مانند بودجه‌های بیش از حد مصرف شده) را علامت‌گذاری می‌کند.
  • فیلترهای تاریخ، نتیجه را به یک بازه زمانی ۱ ماهه خاص محدود می‌کنند.

موارد استفاده:

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

🛠 نکته حرفه‌ای: ترکیب لینک‌ها + پرس‌وجوها

در حالی که Fava امکان لینک مستقیم به پرس‌وجوهای سفارشی را نمی‌دهد، می‌توانید با انجام موارد زیر یک عادت بررسی ماهانه ایجاد کنید:

  • استفاده از لینک «ماه جاری» برای شروع بررسی خود
  • باز کردن تب پرس‌وجوهای ذخیره شده خود در یک پنجره دیگر
  • بررسی همزمان هر دو—ابتدا فیلتر کنید، سپس عمیق شوید

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

افکار نهایی

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

پاداش: اگر از گزارش‌های سفارشی Fava استفاده می‌کنید، حتی می‌توانید داشبوردهای کاملی متناسب با روال‌های مالی شخصی خود بسازید.

آماده‌اید کنترل را به دست بگیرید؟

کوچک شروع کنید: لینک «ماه جاری» را اضافه کنید. سپس پرس‌وجوهای خود را بسازید. خود آینده‌تان از شما تشکر خواهد کرد.

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

پیش‌بینی تراکنش‌های آتی در Beancount

· زمان مطالعه 2 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

یک افزونه برای Beancount وجود دارد که تراکنش‌های تکرارشونده آتی را پیش‌بینی می‌کند. چگونه آن را در beancount.io اعمال کنیم؟ محتوای زیر را در فایل دفتر کل خود قرار دهید.

; افزونه را وارد کنید
plugin "fava.plugins.forecast"

; اضافه کردن هزینه ماهانه HOA
2022-05-30 # "HOA fee [MONTHLY]"
Expenses:Hoa 1024.00 USD
Assets:Checking -1024.00 USD

اسکرین‌شات افزونه پیش‌بینی

2022-05-30-forecast-plugin

و سپس، پیش‌بینی را در نمودار سود خالص مشاهده خواهید کرد.

افزونه پیش‌بینی

تگ [MONTHLY] در بالا به این معنی است که تراکنش برای همیشه تکرار خواهد شد. اگر شرایط بیشتری برای اعمال دارید، می‌توانید از [MONTHLY UNTIL 2022-06-01]، [MONTHLY REPEAT 5 TIMES]، [YEARLY REPEAT 5 TIMES]، یا [WEEKLY SKIP 1 TIME REPEAT 5 TIMES] استفاده کنید.

ایجاد و پیگیری فاکتورها با Beancount

· زمان مطالعه 7 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

یک الگوی متن ساده، یک گردش کار تکرارپذیر، و یک پرس و جوی واحد برای «چه کسی هنوز به من بدهکار است؟»


2022-02-12-crafting-tracking-invoices-with-beancount

صدور فاکتور می‌تواند مانند یک کار طاقت‌فرسا باشد، گیر کرده بین کاری که تمام کرده‌اید و پرداختی که منتظرش هستید. اما یک فرآیند صدور فاکتور خوب، ستون فقرات جریان نقدی سالم است. این کار دو وظیفه را انجام می‌دهد: به وضوح به مشتریان شما می‌گوید که چه چیزی و چه زمانی بدهکار هستند، و به سیستم حسابداری شما حقایق غیرقابل انکاری را که نیاز دارد، می‌دهد.

در حالی که برنامه‌های SaaS اختصاصی می‌توانند فایل‌های PDF شیک و خودکار ارسال کنند، اغلب با هزینه‌های ماهانه همراه هستند و داده‌های شما را در یک silo اختصاصی قفل می‌کنند. یک رویکرد سبک و متن ساده با استفاده از Beancount جایگزین قدرتمندی ارائه می‌دهد. می‌توانید هر فاکتور را به مجموعه‌ای واضح از ورودی‌های حسابداری تبدیل کنید و از مزایای کنترل نسخه، ابرداده‌های قدرتمند و پرس و جوی فوری بهره‌مند شوید - بدون نیاز به اشتراک.


حداقل فاکتور قابل قبول (فیلدهایی که هرگز نباید از آنها صرف نظر کنید)

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

  • جزئیات فروشنده: نام و آدرس فیزیکی کسب و کار شما.
  • جزئیات مشتری: نام مشتری شما و (در صورت امکان) آدرس آنها.
  • شماره فاکتور: یک شناسه منحصر به فرد و متوالی که هرگز دوباره استفاده نمی‌شود. INV-045 بعد از INV-044 می‌آید.
  • تاریخ صدور و سررسید: به وضوح بیان کنید که فاکتور چه زمانی صادر شده و چه زمانی انتظار پرداخت می‌رود.
  • اقلام فاکتور: شرح واضحی از خدمات یا محصولات، همراه با کمیت، نرخ و جمع کل هر ردیف.
  • جمع جزئی، مالیات و جمع کل: محاسبات را نشان دهید تا مشتری بتواند به راحتی آن را دنبال کند.
  • یادداشت‌های اختیاری: مکانی برای تشکر، دستورالعمل‌های واریز یا شماره سفارش خرید ارائه شده توسط مشتری.

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

Note: Invoice templates are coming soon! In the meantime, you can create your own using the fields listed above in Google Docs, Word, Sheets, Excel, or any other document format.


ثبت فاکتور در دفتر کل شما

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

1. هنگام صدور فاکتور:

شما تراکنشی ایجاد می‌کنید که کل مبلغ را از حساب Income شما به Assets:AccountsReceivable منتقل می‌کند. این یک IOU دیجیتال در دفاتر شما ایجاد می‌کند.

; 1404-05-01 فاکتور #045  طراحی وب برای شرکت Acme
2025-07-21 * "شرکت Acme" "INV-045 طراحی وب"
Assets:AccountsReceivable 3500.00 USD ; due:2025-08-04
Income:Design:Web
invoice_id: "INV-045"
contact_email: "[email protected]"
link: "docs/invoices/2025-07-21_Acme_INV-045.pdf"

در اینجا، شما AccountsReceivable را بدهکار و حساب Income خود را بستانکار می‌کنید. به ابرداده‌های غنی توجه کنید: تاریخ سررسید، invoice_id منحصر به فرد و حتی یک link: مستقیم به PDF که ارسال کرده‌اید.

2. هنگام پرداخت مشتری:

وقتی پول به حساب بانکی شما واریز می‌شود، تراکنش دومی را برای "بستن" IOU ثبت می‌کنید. این موجودی را از AccountsReceivable به حساب جاری شما منتقل می‌کند.

2025-08-01 * "شرکت Acme" "پرداخت INV-045"
Assets:Bank:Checking 3500.00 USD
Assets:AccountsReceivable
invoice_id: "INV-045"

موجودی INV-045 در Assets:AccountsReceivable اکنون صفر است و دفاتر شما کاملاً متعادل هستند.

پیوست کردن PDF: کلید ابرداده link: به ویژه هنگام استفاده با Fava، رابط وب Beancount، قدرتمند است. Fava یک لینک قابل کلیک را مستقیماً در نمای تراکنش ارائه می‌دهد، بنابراین سند منبع هرگز بیش از یک کلیک فاصله ندارد. این گردش کار در اوایل سال 2016 در یک درخواست ویژگی (GitHub) پیش‌بینی شده بود.


یک پرس و جو برای فهرست کردن همه فاکتورهای باز

بنابراین، چه کسی هنوز به شما پول بدهکار است؟ با این سیستم، نیازی به جستجو در ایمیل‌ها یا صفحات گسترده ندارید. شما فقط به یک پرس و جوی ساده نیاز دارید.

موارد زیر را به عنوان فایلی با نام open-invoices.sql ذخیره کنید:

SELECT
meta('invoice_id') AS id,
payee,
narration,
date,
number(balance) AS outstanding
WHERE
account = "Assets:AccountsReceivable"
AND balance != 0
ORDER BY
date;

حالا، آن را از خط فرمان خود اجرا کنید:

bean-query books.beancount open-invoices.sql

در چند ثانیه، یک گزارش دقیق و به‌روز از همه فاکتورهای معوق، شامل شناسه فاکتور، مشتری، تاریخ صدور و مبلغ بدهی دریافت خواهید کرد. بدون نیاز به نرم‌افزار اضافی.


خودکارسازی کارهای تکراری

زیبایی متن ساده، قابلیت اسکریپت نویسی آن است. می‌توانید بخش‌های خسته‌کننده این گردش کار را خودکار کنید.

  • قالب + Pandoc = PDF: الگوی فاکتور خود را در Markdown نگه دارید. یک اسکریپت کوچک پایتون می‌تواند متغیرها (نام مشتری، اقلام فاکتور، شماره فاکتور) را پر کند و ابزار خط فرمان Pandoc می‌تواند فوراً آن را به یک PDF حرفه‌ای تبدیل کند.
  • قلاب Git Pre-commit: اگر دفتر کل خود را در Git ذخیره می‌کنید، یک قلاب pre-commit ساده می‌تواند قبل از ذخیره کار شما، بررسی‌هایی را انجام دهد. می‌تواند تأیید کند که هر invoice_id جدید منحصر به فرد است، که ارسال‌های تراکنش به صفر می‌رسد و فایلی که در ابرداده link: به آن ارجاع داده شده است واقعاً وجود دارد.
  • Cron Job: یک کار زمان‌بندی شده (cron job) تنظیم کنید تا پرس و جوی open-invoices.sql شما هر شب اجرا شود و خلاصه را برای شما ایمیل کند. شما هر روز را با دانستن دقیق اینکه چه کسی به یک یادآوری دوستانه نیاز دارد، شروع خواهید کرد.

یک هشدار واقع‌بینانه

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

برای اکثر فریلنسرها و فروشگاه‌های کوچک، این مرحله دستی قیمت کمی برای یک سیستم حسابداری ضدگلوله، قابل حسابرسی و رایگان است که شما کاملاً مالک و کنترل آن هستید (beancount.io).


مراحل بعدی

آماده‌اید تا کنترل صدور فاکتور خود را به دست بگیرید؟ در اینجا نحوه شروع آمده است.

  1. یک الگو دانلود کنید و از آن برای ایجاد فاکتور واقعی بعدی خود استفاده کنید و مطمئن شوید که از یک شماره فاکتور متوالی استفاده می‌کنید.
  2. فایل‌های PDF ارسال شده خود را در یک پوشه اختصاصی مانند docs/invoices/ ذخیره کنید و از کلید ابرداده link: در تراکنش Beancount خود برای ارجاع به آنها استفاده کنید.
  3. پرس و جوی open-invoices.sql را ذخیره کنید و اجرای آن را بخشی از بررسی مالی هفتگی خود قرار دهید.

حسابداری متن ساده به معنای کنار گذاشتن دقت یا کنترل نیست - فقط به این معنی است که پایگاه داده قابل grep است. با یک الگوی ساده و قطعه کدهای بالا، سریعتر پول دریافت می‌کنید و دفاتر خود را بی‌عیب و نقص نگه می‌دارید.