News for hackers. Stuff that matters.
Re:Show HN: Transity – Plain Text Accounting by stevievee on Tuesday June 05, 2018 @06:19PM (#17242577)
"Simple - No more confusing debit / credit / asset / liability mumbo jumbo"

It is just "mumbo jumbo" to you because accounting/finance is not your area of expertise.

Re:Show HN: Transity – Plain Text Accounting by TeMPOraL on Wednesday June 06, 2018 @12:59AM (#17244463)
Somebody should write a proper "accounting for regular people" guide, because I too find those terms confusing - and also completely separated for any experience ever that I had with money. And it only gets worse from there, with "accounts receivable" and "accounts payable". Is that an American thing? I try not to fall into the trap of being proud of my own ignorance; but after many hours of reading introductory accounting articles linked by various accounting software sites, I still don't get any of it.

I'd love a cheat-sheet or plain-English example of how to model the following with GAAP: I'm an individual, I have couple bank accounts, get a salary and occasional invoice, I pay for various stuff, I sometimes use cash. I do not own shares in companies. I want to do budgeting, including some sort of "envelopes" or "virtual accounts" so that I can earmark some money for particular use. I tried to build something like that with Ledger CLI several times now, but I always bounce off the confusion about terminology, and not knowing what goes into "Equity", what into "Liabilities", etc., and why does everything expect me to have "accounts payable" and "receivable"...

Knowing what's the proper, idiomatic representation of such financial system would go a long way towards me understanding what the hell all those terms mean.

Re:Show HN: Transity – Plain Text Accounting by maxerickson on Wednesday June 06, 2018 @08:51AM (#17246642)
You'd have 5 main accounts there.

  Income:Job
  Asset:Bank1
  Asset:Bank2
  Expenses:whatever
  Liabilities:whatever
And then each transaction moves the money from one account to another. Income->Asset, Asset->Expenses, etc. Value moves into the system from income, Expenses are (more or less) transactions where value moves out of the accounting system. You track your salary but probably not the hours you work and that you spent $50 on food (Asset->Expenses:Food) but not the food.

Equity is mostly just the offsetting account for balances that aren't tracked more specifically. So beginning balances are booked against equity instead of coming from some source of income.

Liabilities are amounts that you owe. When you buy something on credit, you are receiving the thing, so you book a transaction (booking an expense against the liability). Then later you book another transaction to pay for the thing (booking a decrease in assets against the liability).

Accounts receivable and accounts payable come up because businesses care about how (and when) they recognize payments and non payments and so on. For personal accounting just put money you owe as a liability and money you are owed as an asset.

Re:Show HN: Transity – Plain Text Accounting by gglitch on Wednesday June 06, 2018 @11:17AM (#17247813)
Thanks for this outline. I've been a happy user of Ledger for several months now, but have been stymied about how to model a scenario in which several family members pay me in advance for a bill we collectively owe that's payable in the future, and in which their payments end up in my checking account. I now see that I should have set up the future sum payment as a local, temporary liability, each family member's deposit payments to me as a local, temporary asset other than my checking account (making my local checking balance diverge from that reported by my bank -- but to my benefit!), then the future sum payment as a transfer from the local temporary asset to the local temporary liability, and bringing all accounts to their correct balances and realigning them with my bank.

So, again, thanks a lot for that last line, which helped me out.

Re:Show HN: Transity – Plain Text Accounting by Jtsummers on Wednesday June 06, 2018 @11:41AM (#17248026)
I'd want to keep my checking account in ledger and real world matching. So either use a virtual account to indicate that some money, while existing in checking, is actually allocated to something else (this is a budget, basically). You can also create asset accounts for what people owe you. Once they pay you you move it from what they owe you to your checking account. For this one, you might have a couple transactions like:

  2018/06/01 Roommate owes me
      Assets:Accounts Receivable       100.00 USD
      Income:Roommate
  2018/06/06 Roommate paid me
      Assets:Checking                  100.00 USD
      Assets:Accounts Receivable
You can drill down another level to add who owes you the money, or perhaps tag it.

The end result is that your checking account is always accurate. Then, as maxerickson says, use virtual accounts to handle mark where the needs to go next or what it's intended for. Also examine ledger's budgeting capabilities for this.

https://www.ledger-cli.org/3.0/doc/ledger3.html#Effective-Da...

Re:Show HN: Transity – Plain Text Accounting by gglitch on Wednesday June 06, 2018 @12:25PM (#17248452)
Thanks for the detailed recommendations! I've read the documentation on virtual accounts but haven't wrapped my mind around them yet. I'll have another go at it.
Re:Show HN: Transity – Plain Text Accounting by maxerickson on Wednesday June 06, 2018 @11:26AM (#17247883)
You could use virtual accounts for that, posting the received funds to your checking account and also to a virtual account that you eventually balance with the purchase (which would also have both real and virtual postings).
Re:Show HN: Transity – Plain Text Accounting by smichael on Wednesday June 06, 2018 @12:54PM (#17248785)
It's easy to confuse "virtual accounts" (imaginary accounts or subaccounts) with "virtual postings" (unbalanced postings), but remember these are different things with different uses. You can post to either kind of account with either kind of posting.
Re:Show HN: Transity – Plain Text Accounting by gglitch on Wednesday June 06, 2018 @12:17PM (#17248365)
Thanks. I've had a hard time understanding the documentation on virtual accounts, but I'll have another look at it.
Re:Show HN: Transity – Plain Text Accounting by mbrock on Wednesday June 06, 2018 @04:22AM (#17245314)
Consider watching this little series on Khan Academy and then sketching out your start of year balance sheet and a month's income statement.

https://www.khanacademy.org/economics-finance-domain/core-fi...

This might clarify the account types (assets, liabilities, equity, income, and expense) as structuring the income/balance reports, and accrual basis accounting as the reason to have "accounts payable/receivable."

Consider also thinking of your accounts as nodes in a directed graph. When you credit account 1 and debit account 2, you draw an edge from 1 to 2, representing a transaction. The credit is the "source" and the debit the "target."

(Double entry means you record a transaction as two updates with opposite charge, so credits and debits are listed separately. This is basically an error-correcting heuristic from 15th century Italy, which is still a good practice.)

So when you send an invoice to a client, that's a transaction. You obtain an asset taken from another entity. So you credit a revenue account and debit an asset account called "accounts receivable" (it's not "cash"). When you receive the payment, you credit accounts receivable and debit cash.

Re:Show HN: Transity – Plain Text Accounting by bokstavkjeks on Wednesday June 06, 2018 @05:31AM (#17245604)
I'll try to cover the accounts payable/receivable parts at least. One of the major points of modern bookkeeping is accrual accounting, which means that we recognize economic transactions independently of the cash transaction. Since the economic transaction occurs before the cash transaction, we can't increase the cash balance so we use a short term receivables account. I realize that this explanation isn't great, so I'll try to provide an example.

Consider that you sell a product worth $1000 on the first of January and you issue an invoice to your customer that is due 30 days later (net 30 days). As of January first the economic transaction has taken place and needs to be recorded to stay consistent with the principles of accrual accounting. As we've provided the customer with a product but haven't received payment yet, we've in reality given the customer a short-term loan of $1000 which has to be recorded. Accounts payable is the overview of all of these "short-term loans" given to our customers. The ledger entry for this transaction would increase revenue and also increase this short term loan as shown below.

January 1:

c: revenue $1000 (income statement)

d: accounts receivable $1000 (balance sheet)

Whenever the customer pays for the product we have to update our balance to reflect that the loan has been paid and that the customer no longer has any outstanding debt to us. To do this we credit (decrease) accounts receivable by $1000 and debit (increase) cash on hand by $1000. Note that the second entry doesn't touch the income statement as the revenue has already been recognized.

January 30:

c: accounts receivable $1000

d: cash $1000

The final balance of our accounts at the end of the 30 day period will be:

revenues: $1000 (credit)

accounts receivable: 0

cash: $1000 (debit)

Accounts payable is the same thing, but in reverse. When purchasing from a supplier on netX terms, we've been given a short-term, interest free, loan which we have to record until we pay it. I hope this helps.

Re:Show HN: Transity – Plain Text Accounting by nucleardog on Wednesday June 06, 2018 @05:23PM (#17251247)
One thing I can suggest is since you're not actually beholden to following any sort of GAAP for your personal book keeping... is it's fine to do whatever works for you. Use your best judgement. Unless you're doing this accounting for the joy of the task in and of itself, then you've got a set of problems you're trying to solve or questions you're trying to answer and following GAAP doesn't necessarily get you any closer to those solutions in any meaningful way.

I'd echo someone else's recommendation to have one place in your hierarchy that has a balance that matches up with each physical account so you can check your work when you've entered all your transactions. Beyond that, you're basically programming a system for processing the math related to your money. You can figure it out.

I'd been muddling my way through for years due to the same inability to find any good "accounting for regular people" before I met my SO who is a CPA. Her response to my accounting methods were basically "It's wrong, but it will work just fine."

Want to allocate the money in an account to some things? Create some subaccounts, move money into them. What kind of account? Asset! Asset all the things! People sending money that's going into your chequeing account to pay future bills? Create a subaccount (you guessed it - asset) and put the money into that. Your chequeing account's balance matches up, that money is separated.

Perfect is the enemy of good.

Re:Show HN: Transity – Plain Text Accounting by deltux on Wednesday June 06, 2018 @03:42AM (#17245101)
I found that this tutorial [1] was really helpful to help me understand how it works, in layman's terms. I followed it with hledger [2], but it should work with any double-entry bookkeeping system. You can also find a lot of resources here [3].

[1] http://www.dwmbeancounter.com/tutorial/Tutorial.html

[2] http://hledger.org/

[3] http://plaintextaccounting.org/

Re:Show HN: Transity – Plain Text Accounting by adrianratnapala on Tuesday June 05, 2018 @06:48PM (#17242776)
Accounting is not my area of expertise, but I have been learning it -- in simple terms -- by doing my personal accounts. When I started, I found these distinctions confusing, but I assumed they were wise. Now I find them arbitrary and annoying, although I am less confused by them.

I suspect there will be a third stage where I will learn their true value. But I also strongly expect that the value lies in them being a common language that other accountancy uses. If so, then they will never be useful in my own personal accounts.

Re:Show HN: Transity – Plain Text Accounting by hosh on Tuesday June 05, 2018 @06:54PM (#17242819)
Some mathematicians had constructed a group (Pacioli Group) to analyze the characteristics of using such a system. One thing a double-entry system can do that a single-entry cannot is to quickly verify the consistency of the transactions. The specific names of "debit", "credit", etc. are jargon. The properties that allow for quick verification works on more complex transactions.

I might use a single-entry ledger for my personal finances (though I prefer the double-entry). I wouldn't run a business on it though.

Re:Show HN: Transity – Plain Text Accounting by adrianratnapala on Tuesday June 05, 2018 @07:35PM (#17243130)
This is going far beyond my own knowledge. I only use double-entry. Or at least I use a style where everything is a transaction that adds up to zero -- there can be more than two accounts in a transaction. I don't even understand single-entry.

[UPDATE: I am now pretty sure there is a serious misunderstanding my paragraph above, but think it is more constructive to note it, than to delete it.]

My main objection was to making account types so so fundamental. From the POV of my account book "Assets:InTheBank" behaves just like "Liabilities:CreditCard". True, the later balance is almost always negative, but it is the minus sign and not the word "Liabilities" that matters.

Similarly for transactions, a plus or a minus in front of a delta is less confusing to me than the equivalent accountant-jargon. But here, for some reason, I have more sympathy for accountants and their jargon.

Re:Show HN: Transity – Plain Text Accounting by adrianratnapala on Wednesday June 06, 2018 @08:04PM (#17252196)
Let me explain my update from yesterday so it doesn't just hang there as a useless tease.

My comment assumed that double-entry accounting meant that every transaction adds up to zero. But cgio links to which claims http://www.ellerman.org/the-math-of-double-entry-bookkeeping... that definition is a common misunderstanding.

What cgio means by double-entry is adding up debits and credits as separate unsigned numbers, as opposed to a single signed one. The fact that the numbers only ever increase can help you verify the books.

Indeed I've experienced the pain of signed numbers first hand when keeping accounts with pen-and-paper. I can't remember how exactly it worked, but it was something to do with how if I had monotonically increasing values, I could have put a strict time bound on where a missing entry had to be.

Re:Show HN: Transity – Plain Text Accounting by hosh on Tuesday June 05, 2018 @11:23PM (#17244134)
I see. Thst makes more sense.

I took an intro accounting class in a community college as well as microeconomics in high school, so I have an inkling where this stuff comes from. I look askance at stuff like "contra assets" too.

But yes: boiled down, those are legacy words indicating positive or negative.

Re:Show HN: Transity – Plain Text Accounting by cgio on Tuesday June 05, 2018 @07:23PM (#17243033)
Further to the sibling reply on Pacioli groups, you might find Ellerman interesting. I copy a link [1] but he has lots of material on his website, including a book. He discusses the group perspective of double entry and gets some extensions on e.g. multidimensional accounting mostly targeted towards his interest in property theory.

[1] http://www.ellerman.org/the-math-of-double-entry-bookkeeping...

Re:Show HN: Transity – Plain Text Accounting by chad_oliver on Tuesday June 05, 2018 @06:27PM (#17242637)
Sure, but that just means they're creating a product for a specific market -- one whose area of expertise isn't accounting or finance. This is something we should encourage, rather than nitpicking the wording.
Re:Show HN: Transity – Plain Text Accounting by gamblor956 on Tuesday June 05, 2018 @06:32PM (#17242669)
Those are extremely basic financial terms. If you (meaning the generic you, not you specifically) can't understand them you really shouldn't be doing your own accounting.

It would be like creating a niche programming IDE for people who don't understand the term "computer" or "programming" or "code."

Re:Show HN: Transity – Plain Text Accounting by adius on Tuesday June 05, 2018 @06:52PM (#17242800)
And that's exactly what e.g. Zapier and Airtable Blocks do ... and quite successfully so.

In specialized communities there is a lot of gatekeeping just by their slang. If I can explain something in plain english without using numerous technical terms, I've mastered the first hurdle to make it more accessible.

Re:Show HN: Transity – Plain Text Accounting by gamblor956 on Tuesday June 05, 2018 @07:26PM (#17243056)
A cursory view of their homepages reveals a large amount of tech "lingo" that require a fair amount of computer savvy, so nothing at all like what I'm describing.
Re:Show HN: Transity – Plain Text Accounting by stevievee on Tuesday June 05, 2018 @06:30PM (#17242657)
I am not nitpicking at all. All of the things the author said are "mumbo jumbo" are fundamental to keeping proper books. Proper bookkeeping is also regulated so it is not just my opinion.
Re:Show HN: Transity – Plain Text Accounting by chris_wot on Tuesday June 05, 2018 @09:51PM (#17243791)
Agreed. If you haven't spent the time to understand what debits and credits are in a double-entry book keeping system, then you really shouldn't be trying to do accounting.
Re:Show HN: Transity – Plain Text Accounting by kungtotte on Wednesday June 06, 2018 @02:51AM (#17244879)
There's a large use case for simple personal bookkeeping that doesn't require double-entry accounting.

Most people have some fixed recurring bills (insurance, rent, subscriptions, etc.), some variable recurring bills (utilities, etc.), standing payments like savings, and monthly spends like groceries.

For them (myself included) something that lets you simply input recurring expenses and your income and show a running tally is pretty much all that's needed, add some simple transaction tracking and you're there. Basically all you really want is two things:

1) Given $2000 at payday, how much of that is available to spend if $X is going towards known expenses.

2) The day before payday I have $Y left in my account. Where did I spend the $2000-$X?

Re:Show HN: Transity – Plain Text Accounting by chris_wot on Wednesday June 06, 2018 @10:21AM (#17247351)
Which means you have to take out money from one account and transfer it into another. Which means that you need to understand that you must debit an expense as it decreases the owners equity credit balance, and then you must understand that it causes a credit on your bank account.

If you don't have this, then you won't be able to work out where you spent your $X amount of money.

Re:Show HN: Transity – Plain Text Accounting by kungtotte on Wednesday June 06, 2018 @01:15PM (#17249000)
I don't need to understand any of that for simple personal finance. A transaction with a negative amount with a to and from field is all that I need.

If I see 15 bucks each month going to "Spotify" I don't have to be a CPA to work out that I spend 15 bucks a month for Spotify...

Re:Show HN: Transity – Plain Text Accounting by chris_wot on Wednesday June 06, 2018 @11:13PM (#17252966)
Which is an expense, and it takes money out of your bank account and into the Spotify expense account.

You have just understood it, intuitively.

Re:Show HN: Transity – Plain Text Accounting by Bromskloss on Wednesday June 06, 2018 @05:19AM (#17245561)
About that, isn't the difference between "debit" and "credit", and between "asset" and "liability", just a minus sign?