Correction to doc on double-entry

300 views
Skip to first unread message

Pranesh Prakash

unread,
Sep 25, 2022, 9:17:11 AM9/25/22
to Beancount

Dear Martin,

I tried to make the proposed correction on the Google doc, but didn't have permissions to either suggest edits nor to leave comments. So I thought I'd bring it up here.

https://docs.google.com/document/d/100tGcA4blh6KSXPRGCZpUlyxaRUwFHEvnz_k9DyZFn4/edit#

In this doc on double-entry you write:

> In contrast, accountants traditionally keep all the balances of their accounts as positive numbers and then handle postings to those accounts differently depending on the account type upon which they are applied. The sign to apply to each account is entirely dictated by its type: Assets and Expenses accounts are debit accounts and Liabilities, Equity and Income accounts are credit accounts and require a sign adjustment. Moreover, posting a positive amount on an account is called “crediting” and removing from an account is called “debiting.” See this external document, for example, which nearly makes my head explode. This way of handling postings makes everything much more complicated than it needs to be.

Under beancount's sign convention (where Assets and Expenses are normally positive numbers and Liabilities, Equity, and Income are normally negative numbers), adding a positive number would be "debiting" and subtracting a number would be "crediting".

So, in this example, the Assets account is debited and the Equity account is credited:

```
2014-01-02 * "Deposit" 
  Assets:Checking 100.00 USD 
  Equity:Opening    -100.00 USD
```
This is true in all circumstances where the sign convention AE = +ve and XLR = -ve is followed. All "to" postings are "debits" / positive, and all "from" postings are "credits" / negative.

Of course, if the reverse convention is followed (where AE = -ve and XLR = +ve), then "crediting" would be adding a (positive) amount and "debiting" would be subtracting an amount (or adding a negative amount). I know of one software (pta(1)), which follows this reverse convention: https://mandoc.bsd.lv/pta/man/pta-glossary.7.html

Regards,
Pranesh

Martin Blais

unread,
Sep 25, 2022, 10:12:03 AM9/25/22
to bean...@googlegroups.com
Thx Pranesh,
I'm still not 100% sure what you'd like me to change. You'd like for this text to be inserted in the doc?
I can give you suggestion rights, just request it through the UI.

Even after all these years I still find these words inconvenient; why is a "debit card" called a debit card, when its purpose is to take money out? And what about the sentence "we'll credit it to your account"?  One can always make sense of these by flipping the perspective between the recipient vs. sender. (e.g. debiting to one's cash account). And it's more than just the sign convention we choose: I find I have to have the context to be able to make sense of the words right. So I prefer not to use them.

As for pta, thanks for pointing it out, I wasn't aware of it. At first I look at the convention and I'm thinking "that's a weird choice" but I suppose it's arbitrary and I have to admit that Ledger and Beancount's choice is also probably looking similarly strange from an accountant's POV. My own surprise at the reverse convention leads me to think maybe I should implement the option to have all positive numbers and flipping the signs automatically on reading.  I proposed a while ago we should be able to flip on input and output (but the output part's more complicated, because it would have to be applied on the result of doing all the calculations so it's more a reporting feature).  I wonder how many people would find that useful.  It's pretty easy to add.

 

Regards,
Pranesh

--
You received this message because you are subscribed to the Google Groups "Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beancount+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/2ac8bf44-399f-44d5-9382-ac5d48b6b7ean%40googlegroups.com.

Pranesh Prakash

unread,
Sep 25, 2022, 3:29:11 PM9/25/22
to bean...@googlegroups.com
On Sun, 25 Sept 2022 at 19:42, Martin Blais <bl...@furius.ca> wrote:
> I'm still not 100% sure what you'd like me to change. You'd like for this text to be inserted in the doc?

I think this needs to change:
1c1
< Moreover, posting a positive amount on an account is called
“crediting” and removing from an account is called “debiting.”
---
> Moreover, posting a positive amount on an account is called “debiting” and removing from an account is called “crediting.”

> Even after all these years I still find these words inconvenient; why is a "debit card" called a debit card, when its purpose is to take money out? And what about the sentence "we'll credit it to your account"? One can always make sense of these by flipping the perspective between the recipient vs. sender. (e.g. debiting to one's cash account). And it's more than just the sign convention we choose: I find I have to have the context to be able to make sense of the words right. So I prefer not to use them.

Indeed! Debit and credit use absolute values |x| since they were
devised in a part of the world where negative numbers had not yet
taken hold. That is why using terms like "increase" and "decrease"
become difficult since an "increase" with an absolute value could be a
"decrease" in the signed value _or_ could be an "increase" in the
signed value, depending on the kind of account (AE vs. RLX). It's all
thus very confusing.

However, within the framework of double-entry accounting, if we think
of transactions as being directional, with "to" account(s) and "from"
account(s), then you're "debiting" the "to" account, and "crediting"
the "from" account, irrespective of the signs that PTA imposes.

The "debit" in "debit card" is in line with bank statements' use of
the term "debit" for when your account checking account balance goes
down. As to why in your bank statement, "debit" and "credit" get
reversed, it's of course because they are described from the bank's
point of view. When you add money to your account, the bank's
liability goes up in absolute value (liability gets credited), whereas
if you take out money from your account the bank's liability towards
you goes down in absolute value (liability gets debited). So insofar
as the bank's relation to you is concerned, your account gets debited
when you take away money and gets credited when you add money, whereas
from your point of view, your account gets debited when you add money,
and credited when you take away money.

> As for pta, thanks for pointing it out, I wasn't aware of it. At first I look at the convention and I'm thinking "that's a weird choice" but I suppose it's arbitrary and I have to admit that Ledger and Beancount's choice is also probably looking similarly strange from an accountant's POV. My own surprise at the reverse convention leads me to think maybe I should implement the option to have all positive numbers and flipping the signs automatically on reading. I proposed a while ago we should be able to flip on input and output (but the output part's more complicated, because it would have to be applied on the result of doing all the calculations so it's more a reporting feature). I wonder how many people would find that useful. It's pretty easy to add.

Signs are mere conventions. If you want to have your mind blown,
check out the differences between the IMF's "Balance of Payments
Manual" v5 and v6:
https://www.imf.org/external/pubs/ft/bop/2007/bpm6faq.pdf

In BPM5, credits were represented with positive sign and debits with
negative sign. So increases in assets were negative signed, and
increases in liabilities were positively signed. (Just like the
pta(1) tool.)
In BPM6, increases in both assets and liabilities are positive and
decreases in both assets and liabilities are negative. So a minus
sign in BPM6 is "the net incurrence of liability".

So, in BPM5, a PTA-like signed-accounting notion of +ve and -ve were
used, whereas with BPM6, an unsigned-accounting notion of +ve and -ve
are used.

Cheers,
Pranesh
Reply all
Reply to author
Forward
0 new messages