Tuesday, 8 May 2012

Really Simple Accounting

Hi everyone!

I’m just working through the process of documenting the high-level requirements for a very basic accounting/book-keeping function within OfficeBooks.  These are my thoughts.  I’d appreciate your input.

The Goal:  
To generate automated one-sided entries to a profit and loss statement (for business taxes)

So, we’d need to create an accounts list (initially a suggested list provided by OfficeBooks) that can be modified by the user (although some core accounts, like revenue, should be protected from deletion).  The account information would include:  account name, account description and account type (revenue, expense and, inventory)

Allow users to link contacts to an account.  All customer contacts would automatically default to revenue.  This could be changed by the user if they added another revenue type account.  For suppliers the user would choose from the drop down list, inventory should be the first account available to be chosen.
Revenues are added to the profit and loss at time of order shipment (it’s the most standard way of recognizing revenue), inventory and expenses are updated and added when purchase orders are received.  Retail and other vendor and customer tax accounts are updated through the sales order and purchase order process.

Vendor invoice prices that are different from the purchase order need to be dealt with on a case by case basis.  The purchase order would be updated to the payment amount by the user.
Inventory values would be driven by the purchase order amount on a first in, first out basis.  The cost should not be updated by the user on the inventory screen in order to be sure the integrity of the data is maintained.

Miscellaneous Entries, Credit Cards and Bank Statements
This can be handled one of two ways, the first is to stick all the receipts and bank statements into a folder and bring it to your accountant with the profit and loss statement you created above, or second create a miscellaneous entry capability.

The entry would be very similar to a journal entry (voucher) which would have a type (credit card, bank statement, cash…) and date as titles.

The journal should be in a table format allowing multiple lines of data entry.  The only information required would be account from the drop down menu and amount in the next column.  There could be as many entries as required in the single table for credit card, then a table (entry) for bank statement or cash.

The outstanding question is with respect to cost of goods sold.  It seems that if we have value in inventory and every time we ship something it goes as an item then we could add up each of the items by their cost to get cost of goods sold.  It is probably a lot more difficult from a programming perspective and may be difficult to attain.

There are also concerns around the ability to make a profit and loss statement but not a balance sheet which is part of the tax requirements in terms of stating cash position, asset values (inventory and capital) and parts of liabilities.