4

I don't think this is only applicable to the software, but it's the one that I'm using.

In the documentation it talks about using charitable giving (e.g. tithing) as a Liability.

An example for 10% tithing would look like this:

= /^(?:Income)/
    (Liabilities:Tithing)    0.10

2019-09-01  Salary
    Income:Salary    -$1,000.00
    Assets:Bank       $1,000.00

This would give your liabilities a balance of $-100.00, like I expect. However, the problem comes when it's time to pay this amount.

If I do this:

2019-09-01 Pay tithing
    Assets:Bank    -$100.00
    Expense:Tithing $100.00

I still have a balance in my liability. I can't just throw that in the transaction though:

2019-09-01 Pay tithing
    Assets:Bank          -$100.00
    Liabilities:Tithing   $100.00
    Expense:Tithing       $100.00

Clearly that doesn't balance out.

So how do I say that I'm taking money from my bank, sending it to the expense categor(ies), but that I'm also decreasing my liabilities?

Chris W. Rea
  • 31,999
  • 17
  • 103
  • 191
Wayne Werner
  • 1,161
  • 1
  • 10
  • 15

2 Answers2

5

The answer can actually be found in the documentation, you just have to look closer.

Virtual Postings will do it. The parenthesis around the automatic transaction means that you aren't representing real money - you can think of it as a label that you're putting on your dollar bills, rather than the bills themselves.

You just put the parenthesis around your postings

2019-09-01 Pay tithing
    Assets:Bank    -$100.00
    (Liabilities:Tithing)   $100.00
    Expenses:Tithing        $100.00

Now ledger balance comes out correctly:

             $900.00  Asset:Bank
             $100.00  Expense:Tithing
          $-1,000.00  Income:Salary
--------------------
                   0

If you decide that you want a fixed amount to come out of each check, you can do it like this:

= Income:Salary
   ; Note the parenthesis mean virtual here, too
   (Liabilities:Roof Fund)    -$10

Then your journal entry could just look like this:

2019-09-02 Tithes & Offerings
    Asset:Bank
    (Liabilities:Tithing)    $100.00
    (Liabilities:Roof Fund)   $10.00
    Expense:Tithing          $100.00
    Expense:Roof Fund         $10.00

I'm not sure if other software also keeps track of virtual accounts/posting, but I suspect they do. With ledger you can exclude these values by passing the --real flag in when you're doing reports/balances/etc.

Wayne Werner
  • 1,161
  • 1
  • 10
  • 15
1

In your example, Liabilities:Tithing is being used as a "reminder to self", of how much you need to give to meet your tithing target. Nothing really to do with transaction delays in this case, contrary to comments.

It's being increased with an unbalanced ("virtual") posting. This means it's not part of your double-entry accounts or the accounting equation, and so you have to decrease it the same way, with an unbalanced posting.

Simon Michael
  • 366
  • 1
  • 10