diff options
Diffstat (limited to 'ledger.texi')
-rw-r--r-- | ledger.texi | 186 |
1 files changed, 186 insertions, 0 deletions
diff --git a/ledger.texi b/ledger.texi new file mode 100644 index 00000000..212ca041 --- /dev/null +++ b/ledger.texi @@ -0,0 +1,186 @@ +\input texinfo @c -*-texinfo-*- +@comment $Id: ledger.texi,v 1.1 2003/09/30 00:09:43 johnw Exp $ +@comment %**start of header + +@setfilename ledger.info + +@settitle Ledger Accouting Tool +@syncodeindex pg cp +@comment %**end of header + +@dircategory Ledger Accouting Tool +@direntry +* ledger: (ledger)The Ledger Accouting Tool. +@end direntry + +@titlepage +@title Ledger Accouting Tool +@author John Wiegley <@email{johnw@@newartisans.com}> +@page +@vskip 0pt plus 1filll +@c @insertcopying +@end titlepage + +@contents + +@ifnottex +@node Top +@top Ledger Accouting Tool + +@c @insertcopying +@end ifnottex + +@chapter Introduction + +@code{ledger} is an accouting tool that has the chutzpah to exist. It +provides not one bell or whistle for the money, and returns the user +back to the days before user interfaces were even a twinkle on their +father's CRT. + +What it does do is provide a double-entry accouting ledger with all of +the flexibility and muscle of its modern day cousins---without any of +the fat. Think of it as the bran muffin of accouting tools. + +To begin with, you need to start keeping a ledger. This is the basis +of all accouting, and if you don't know how to do it, now is the time +to learn. The little booklet that comes with your checkbook is a +ledger, so we'll describe double-entry accouting in terms of that. + +A checkbook ledger records debits (subtractions, or withdrawals) and +credits (additions, or deposits) with reference to a single account: +your checking account. Where the money comes from, and where it goes +to, are simply described in the memo field where you write the person +or the company's name. The ultimate aim of keeping a checkbook ledger +is so you know how much money is available to spend at all times. +That is really the aim of all ledgers. + +What computers add is the ability to walk through all of those +transactions and tell you things about your spending habits; let you +devise budgets to get control over your spending; squirrel away money +into virtual savings account without having to physically move the +money around; etc. As you keep your checkbook ledger, you are +recording a lot of information about your life and your habits, and +sometimes that information can tell you things you aren't even aware +of. That is the aim of all good accouting tools. + +The next step up from a checkbook ledger is a ledger that covers all +of your accounts, not just your checking account. In this ledger, you +write not only who the money goes to---in the case of a debit---but +where the money is coming from. In the checkbook ledger, its assumed +that all of the money is coming from your checking account. But in a +general ledger, you have to write two-lines: The source and target. +There must always be a debit from some account for any credit made to +anyone else. This is what is meant by ``double-entry'' accouting. + +For example, let's say you have a checking account and a brokerage +account, and that you can write checks from both of them. Rather than +keeping two checkbooks, you decide to use one ledger for both. Once +you get the hang of this, you'll be ready to use one ledger for all of +your accouting needs, which gets you to the point of this +introduction. + +So in your general ledger, you need to pay Pacific Bell Telephone for +your monthly phone bill. The cost is $23.00. In a checkbook ledger, +you would write out a line that credits your account with Pacific Bell +by $23 as follows: + +@example +9/29 100 Pacific Bell $23.00 $77.00 +@end example + +Very simple: You've written check #100 for $23 to Pacific Bell, which +leaves your balance in checking at $77. + +But in a general ledger, you need to say where the money is coming +from. A general ledger entry would look like this: + +@example +9/29 100 Pacific Bell $23.00 $223.00 + Checking $-23.00 $77.00 +@end example + +What does all of this mean? The first line shows a credit (or +payment) to Pacific Bell to the tune of $23.00. Then, because there +is no one ``balance'' in a general ledger, we've written in the total +balance of your payments to the account ``Pacific Bell''. This was +done by looking at the last entry for ``Pacific Bell'' in the general +ledger, adding $23.00 to that amount, and writing in the total in the +balance column. + +Secondly, the money is coming from your ``Checking'' account, which +means a debit (or withdrawal) of $23.00, which will leave the ending +balance in your ``Checking'' account at $77.00. + +The transaction itself must balance to $0: $23 goes to Pacific Bell, +$23 comes from Checking: there is nothing left over to be accounted +for. The money has in fact moved from one account to another. This +is basis of double-entry accounting: That money never pops out of +existence, it is always described as a transaction between +accounts---as a flow from one place to another. + +Keeping a general ledger is the same as keeping two separate ledgers: +One for Pacific Bell and one for Checking. In that case, each time +you write a credit into one, you write a corresponding debit into the +other. This makes it much easier to write in the running balance, +since you don't have to go looking back for the last time an account +was referenced, but it also means having a lot of ledger books if you +deal with multiple accounts. + +Enter the beauty of a computerized accouting tool. The purpose of +@code{ledger} is to make general ledger accouting simple by keeping +track of the balances for you. Your only job is to enter credit/debit +pairs and make sure they balance. If a transaction does not balance, +@code{ledger} will display an error and ignore the +transaction.@footnote{In some special cases, it will automatically +balance the entry for you.} + +Your usage of @code{ledger} will have two parts: Keeping the ledger, +and using the @code{ledger} tool to provide you with information +summaries derived from your ledger's entries. + +@chapter Keeping a ledger + +The most important part of accounting is keeping a good ledger. If +you have a good ledger, tools can be written to work whatever +mathematically tricks you need to better understand your spending +patterns. Without a good ledger, no tool, however smart, can help +you. + +The @code{ledger} program aims at making ledger entry as simple as +possible. Since it is a command-line tool, it does not provide a user +interface for keeping a ledger. If you like, you may use +@code{gnucash} to maintain your ledger, in which case the +@code{ledger} program will read @code{gnucash}'s data files directly. +In that case, read the @code{gnucash} manual now, and skip to the next +chapter. + +If you are not using @code{gnucash}, but a text editor to maintain +your ledger, read on. @code{ledger} has been designed to make data +entry as simple as possible, by keeping the ledger format easy, and +also by automagically determining as much information as possible +based on the nature of your entries. + +For example, you do not need to tell @code{ledger} about the accounts +you use. Any time @code{ledger} sees a debit or a credit to an +account it knows nothing about, it will create it. If you use a +commodity that is new to @code{ledger}, it will create that commodity, +and determine its display characteristics (placement of the symbol +before or after the amount, display precision, etc) based on how you +used the commodity in the transaction. + +Here is the Pacific Bell example from above, given as a @code{ledger} +transaction: + +@example +9/29 (100) Pacific Bell + Expenses:Utilities:Telephone $23.00 + Assets:Checking $-23.00 +@end example + +As you can see, it is very similar to what would be written on paper, +minus the computed balance totals, and adding in account names that +work better with @code{ledger}'s scheme of things. + +@chapter Using @code{ledger} + +@bye |