In this OFBiz tutorial I will walk through the process of setting up OFBiz accounting. It starts with building your Chart of Accounts (CoA). As you might already know, OFBiz comes with sample CoA. In case you find it overwhelming, I have listed below a simpler version of a CoA that will get you started.

<entity-engine-xml>
<glAccount glAccountId="1000" accountName="Cash in Bank and on Hand" accountCode="Cash in Bank and on Hand" glAccountClassId="CASH_EQUIVALENT" glAccountTypeId="CURRENT_ASSET" postedBalance="0.0"/>
<glAccount glAccountId="1200" accountName="Accounts Receivable" accountCode="Accounts Receivable" glAccountClassId="CURRENT_ASSET" glAccountTypeId="ACCOUNTS_RECEIVABLE" postedBalance="0.0"/>
<glAccount glAccountId="1210" accountName="AR Unapplied Payments" accountCode="AR Unapplied Payments" glAccountClassId="CURRENT_ASSET" glAccountTypeId="ACCREC_UNAPPLIED" postedBalance="0.0"/>
<glAccount glAccountId="1400" accountName="Inventory" accountCode="Inventory" glAccountClassId="INVENTORY_ASSET" glAccountTypeId="INVENTORY_ACCOUNT" postedBalance="0.0"/> <glAccount glAccountId="1700" accountName="Accumulated Depreciation" accountCode="Accumulated Depreciation" glAccountClassId="ACCUM_DEPRECIATION" glAccountTypeId="FIXED_ASSET" postedBalance="0.0"/>
<glAccount glAccountId="2000" accountName="Accounts Payable" accountCode="Accounts Payable" glAccountClassId="CURRENT_LIABILITY" glAccountTypeId="ACCOUNTS_PAYABLE" postedBalance="0.0"/>
<glAccount glAccountId="2001" accountName="AP Unapplied Payments" accountCode="AP Unapplied Payments" glAccountClassId="CURRENT_LIABILITY" glAccountTypeId="ACCPAYABLE_UNAPPLIED" postedBalance="0.0"/> <glAccount glAccountId="2002" accountName="Uninvoiced Item Receipts" accountCode="Uninvoiced Item Receipts" glAccountClassId="CURRENT_LIABILITY" glAccountTypeId="CURRENT_LIABILITY" postedBalance="0.0"/>
<glAccount glAccountId="2010" accountName="Sales Tax Payable" accountCode="Sales Tax Payable" glAccountClassId="CURRENT_LIABILITY" glAccountTypeId="CURRENT_LIABILITY" postedBalance="0.0"/>
<glAccount glAccountId="3000" accountName="Owners Equity And Net Worth" accountCode="Owners Equity And Net Worth" glAccountClassId="EQUITY" glAccountTypeId="" postedBalance="0.0"/> <glAccount glAccountId="4600" accountName="Merchandise Sales" accountCode="Merchandise Sales" glAccountClassId="REVENUE" glAccountTypeId="" postedBalance="0.0"/>
<glAccount glAccountId="4830" accountName="Sale Discounts" accountCode="Sale Discounts" glAccountClassId="CONTRA_REVENUE" glAccountTypeId="" postedBalance="0.0"/>
<glAccount glAccountId="4840" accountName="Sales returns and Allowances" accountCode="Sales returns and Allowances" glAccountClassId="CONTRA_REVENUE" glAccountTypeId="" postedBalance="0.0"/>
<glAccount glAccountId="5100" accountName="Merchandise Cost" accountCode="Merchandise Cost" glAccountClassId="COGS_EXPENSE" postedBalance="0.0"/>
<glAccount glAccountId="5150" accountName="Shipping Cost" accountCode="Shipping Cost" glAccountClassId="COGS_EXPENSE" postedBalance="0.0"/>
<glAccount glAccountId="5400" accountName="Depreciation Expense" accountCode="Depreciation Expense" glAccountClassId="DEPRECIATION" glAccountTypeId="" postedBalance="0.0"/>
<glAccount glAccountId="7300" accountName="Office Expense" accountCode="Office Expense" glAccountClassId="SGA_EXPENSE" glAccountTypeId="" postedBalance="0.0"/>
<glAccount glAccountId="7340" accountName="Mesc Expense" accountCode="Telephone Expense" glAccountClassId="SGA_EXPENSE" glAccountTypeId="" postedBalance="0.0"/>
</entity-engine-xml>

If you are planning to accept credit cards from your customers then you should consider adding the following GL Accounts:

<entity-engine-xml>
<glAccount glAccountId="1220" accountName="AR Merchant Account Visa M/C" parentGlAccountId="1200" accountCode="AR Merchant Account Visa M/C" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
<glAccount glAccountId="1230" accountName="AR Paypal" parentGlAccountId="1200" accountCode="AR Paypal" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
<glAccount glAccountId="1240" accountName="AR Bank Checks" parentGlAccountId="1200" accountCode="AR Bank Checks" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
<glAccount glAccountId="1250" accountName="AR Google Checkout" parentGlAccountId="1200" accountCode="AR Google Checkout" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
<glAccount glAccountId="1260" accountName="AR American Express" parentGlAccountId="1200" accountCode="AR American Express" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
 <glAccount glAccountId="1270" accountName="AR Discover" parentGlAccountId="1200" accountCode="AR Discover" glAccountClassId="CURRENT_ASSET" glAccountTypeId="MRCH_STLMNT_ACCOUNT" postedBalance="0.0"/>
</entity-engine-xml>

This simple list of GL Accounts will get you started, but you will obviously need to put together a plan with your accountant or otherwise make the final decision for yourself on the GL Accounts that are best suited for your own business. In my next post, I’ll walk you through the process of assigning GL Accounts to the business entity and thereafter how to setup GL Account defaults to enable automatic GL posting of Payments, Invoices, Inventory and related activities. Good luck.

– Anil


DATE: Nov 11, 2010
AUTHOR: Anil Patel
Accounting Management, OFBiz Tutorials, eCommerce, OFBiz Tutorial, ofbiz accounting, OFBiz, Anil Patel