Common Cents is a web-based personal finance and accounting system written by P. Eric Huber (aka Moonlight Design) based on an earlier DOS-based (clipper) version first written in 1992. The goal of Common Cents is to provide not only a way to track and reconcile bank account registers, but also to track expense, capital and income account balances through double-entry transactions.


A list of features provided by Common Cents is listed below:

  • Multiuser capable. One administrator controls master list of accounts and setup of new users.
  • Register Maintenance. Registers are setup by individual users (a register is equivalent to a bank, savings or credit card account)
  • Account Maintenance. Each user selects applicable accounts from the master list and optionally assigns each asset or liability account to a register.
  • Transaction Entry. Transactions are entered by type (ie: Check purchase, Debit Card purchase, Credit Card purchase, Adjustment, etc). Each transaction type is a grouping by which transactions are remembered. When you create a new transaction definition, you give it a description and associate a credit and debit account with it. When you return to perform this type of transaction again, you select the definition and then just provide the date and amount. How that amount is applied (account to debit and credit), is already done for you.
  • OFX Import. Transactions can also be imported from OFX file (Microsoft Money format). You must have an OFX file to begin with. Then it is just a matter of processing (or skipping duplicates) each record received. Imported transactions must also be linked to internal transaction definitions as well, but over time, the system will remember transaction types from merchants and limit definition records to be selected from.
  • Automatic Transactions. Automatic or reoccuring transactions can be setup (through agent script setup as a cron job). These transactions can also automatically track varying portions of a fixed payment amount (ie: A monthly mortgage payment with a fixed escro amount and a varying interest portion - based on monthly or daily interest accrual)
  • Budget breakdown capability. Ability to setup a breakdown for main income received. When you record your paycheck, you enter the amount of the check, and the system breaks it down for you automatically based on how you set it up. Breakdown can be setup as fixed amounts or percentage of total, or combination of both. Part of the budget setup includes defining an account which serves as a catch-all account for any remaining balance once everything else has been allocated.
  • Register Reconciliation. Registers are reconciled to bank statements received. Transactions are marked and checked against the statement ending balance. If register is in balance, then all transactions are marked with an "R" to indicate reconciled.
  • Posting Transactions. Once registers are reconciled, transactions can be posted to accounts. Once posted, the transaction no longer appears in the register for viewing.
  • Trial Balance Report. The trial balance report lists all accounts with balances in order of account number. The total debits should equal the total credits. Each account can be clicked on to show the unposted transactions effecting the balance of that account.
  • Income/Expense Graph. The income and expense graph is a bargraph portraying YTD income and expenses for each month.
  • Expense Breakdown Graph. The expense breakdown report shows a pie chart indicating the breakdown of expenses for a particular month. Accounts are also listed as links and can be clicked to "drill-down" to detail transactions for that specific account and month
  • Account History Graph. The account history report shows a YTD bar graph view of a particular account. Each month of the year is also listed as a link which can be clicked to "drill-down" to detail transactions for that specific month and account.


Invoice Cents. This module was setup to track time spent doing web development (or any other) work for clients. It has the ability to setup client info and custom hourly rates for each client. Transactions are entered as hours worked or fixed amounts. Invoices are generated and e-mailed to clients as PDF attachments. Invoices are then sent to queue for aging. When payments are received, then processed from aging queue and sent to Common Cents as budgeted breakdown income transaction.

Music Cents. This module was setup to track payments for music lessons. Families are setup individually with start dates and monthly payment amounts. One or more student records can be created for each family. Checks are entered as a batch with each check being broken down by type (ie: an $80 check might be $40 for books and $40 for tuition). Once all checks are entered, the batch is processed and sent to Common Cents as a budgeted breakdown income transaction. Payment categories can be setup, however, to override budget breakdown in certain circumstances (ie: I want all money collected for books to be put into an asset account "Prepaid Piano Books"). The payment log report shows the months paid for all families in the current "school" year.

Copyright © 2004 - Moonlight Design. All Rights Reserved.