While most software vendors understand their programs and most convey how to use them, many fall short when it comes to understanding the masonry business and its demands. If you have been using a general accounting system, like QuickBooks by Intuit, you may have come to the conclusion that something was missing.
Changing your accounting system is a big deal and you need to thoroughly shake down the proposed system before you buy kick the tires so to speak by setting up a job and processing some transactions. The number one mistake is to rely on what the software vendor said the program does. Be sure to shop for your software first and then buy the hardware that will run your system.
Know your costs upfront, including the cost of the software, future software upgrades, installation costs, training, annual support and other fees that may be involved. A reference from a mason contractor currently using the software would also be beneficial.
Access to information is the name of the game, and as such, the accounting software needs to be Internet-enabled or even web-based. Owners and management are on the move and need to be able to access crucial data regarding their company, such as production, sales, etc., from anywhere. As your company grows, you may need to distribute the workload geographically; as society changes, you may also have to cater to those people that may need or want to work remotely. Also, as time passes, your suppliers will eventually want to send those darn invoices to you electronically. Why not? Beats entering them and it would give you more time to chase down those elusive "signed," or should I say "unsigned," delivery tickets.
Look for a fully integrated, database driven, multi-user, multi-company, divisional, Windows-based system that has the same look and feel throughout. The database underneath should come with a report writing capability. Software purchased will not have all of the reports that you may be accustomed to but if the data resides in the database in the correct format, it should be very easy for your software vendor to add those custom reports for a small price. Reports should be effectively date-driven so that you can go back to any time period and re-run those old reports that somehow got lost.
Security is an issue. A good system will allow you to customize the login for each user. In other words, if the user shouldn't have access to payroll, then payroll should not display as an option for them to select. What the user sees is what the user has access to. Blocking options from displaying also helps create a simpler looking screen for those users that may have trouble navigating the system.
The various accounting modules should have no closing and update routines that have to be executed before going on to the next accounting period. Each accounting module needs its own accounting period and closing the period should be as simple as flagging the period as being closed so that no more transactions can be posted to that period by the user. It's also nice to be able to flag a job as being closed so that no more transactions can be posted to that job. Closing the GL General Ledger period should prevent postings from all accounting modules regardless of their individual status.
The various accounting modules will also require numerous rates to be entered such as employee/employer tax rates, employee wage rates, insurance rates, billing rates, union wage rates, union fringe benefit rates etc. The best way to deal with all of the rate changes that take place throughout the year is to enter them into the system as they come in. All rates should therefore be entered into the system based on an effective date.
Having said all of the above, now let's take a look at the core accounting software modules that you will need to get started.
Accounts Payable (AP)
Since most of us are not receiving invoices electronically, the invoice entry program should be looked at closely. This program should allow for easy entry and distribution of an invoice to Job Cost (JC) and General Ledger. The general ledger distribution should default to entries that have been predefined for the job elsewhere in the system. If being used in conjunction with the Purchasing module (recommended), the invoice entry program needs to check the invoice unit prices against the purchase order unit prices and not just check to see if the purchase order dollar amount has been exceeded. It is far easier to resolve a unit price issue at the beginning of a job rather than a purchase order dollar discrepancy at the end of a job.
Oftentimes, material is bought on an "as needed" basis, so you need to have the ability to enter a purchase order with unit prices only. It is for this reason that it may not be realistic for your accounting system to send committed costs over to the job cost module.
The invoice entry program should also recalculate the sales tax involved since many vendors undercharge and overcharge at times. Underpaying sales tax can result in additional taxes, interest and penalties down the road. The invoice entry program should also allow you to enter the different levels of sales tax such as state tax, local tax and special assessments by job. This allows you to later generate reports for sales tax reimbursement on tax-exempt jobs.
Other points of importance:
- You should be able to disburse funds from multiple bank accounts.
- There should be a method of selecting out only those invoices you wish to pay, discounts being automatically calculated for you.
- As for voiding a check or an invoice, this should be automatically done by the system simply by specifying the check or invoice number.
- An invoice adjustment program would also be nice nobody is perfect.
- The AP system should track non-employee compensation (1099s).
The person doing payroll should never have to worry about what taxes are to be withheld for each employee. Since all tax calculations are based on where the employee lives and where the employee is working, the payroll system should have no problem calculating the taxes automatically, both on an employee and employer level.
The payroll system should accrue labor burden items such as taxes, insurance and fringe benefits. For owner controlled insurance programs (OCIP) or contractor controlled insurance programs (CCIP) there should be the facility to turn off the insurance accrual at the job level. Oftentimes there is a requirement to report your monthly payroll related to OCIP/CCIP projects. For this reason, there should be the facility to easily retrieve and report the payroll by classification for the OCIP/CCIP projects.
Some other things to consider:
On your wish list may also be an automatic accrual of that portion of a week's payroll that crosses into the next accounting period.
At the end of the year, there should be no closing of the year before being allowed to process payroll transactions for the next year.
If you process a lot of expenses for your employees, you may want to add those types of reimbursements to the net payroll check, eliminating the need to cut an additional AP check.
If you operate in multiple states, and your employees work in multiple states during the course of the year, check out the way the payroll system handles unemployment tax for those individuals. Some states will not require you to pay additional unemployment tax if the employee already earned the base wage amount in a previous state. In other words, wages earned in other states can sometimes be used when computing the taxable wage base in another state.
Check out the various programs that may come with the system for handling payroll adjustments. This process should be made easy since in the construction world we constantly deal with layoff checks, adjustments due to underpayment, voids and re-issues of checks, etc.
Check out the various reports that come with the system and be sure that there is a certified payroll report. There should also be reports to facilitate reporting of taxes weekly, monthly, quarterly, annually, etc.
Some information, such as W-2s, may have to be filed on magnetic media. Some states are moving toward the electronic filing of reports via the Internet.
"Direct Deposit" is a nice feature for your employees that choose this method of payment.
When writing checks, you need to be able to write out of multiple bank accounts.
It's nice when checks come off the printer grouped by the last job each person worked, facilitating the distribution of those checks.
If your company hires fulltime mechanics and you plan on adding an Equipment module, you may also need the option to charge their time to the pieces of equipment that they worked on.
Find out how the payroll system tracks employee advances and what happens when an employee's deductions exceed the net payroll amount due them.
Accounts Receivable (AR)
Contract billing may be part of AR or may be a separate module. Either way, the two are interrelated. Typically you will prepare most of your repeat billings at the same time each month. As such, it's nice to be able to run a report of all those "open" jobs you need to bill. When generating this report, the system should select out all those jobs that have a backlog remaining to bill and all those jobs that still owe you money. This report will be informational in that it should provide the date that the billing is due, the billing projection through date, the number of copies, etc. This way, you will not miss billing a job and you will get your bills in on time.
The Billing section should allow you to create your original schedule of values. Change orders should be added to your schedule of values automatically when they are approved in the system. Each monthly billing should remain within the Billing section to allow for easy modification should the general contractor revise the billing. It would also be nice if, when changing a previous billing, those changes automatically roll forward to all subsequent billings.
When setting up your next billing, all previous billing amounts should automatically be pulled in and the amount you bill for each line item on your schedule of values should be generated by simply changing the percent complete for that line item.
As for retainage, besides the simple 10 percent and five percent calculations on billings, the system needs to calculate retainage as a percentage of the contract value. For example, in some cases, once the job is more than 50 percent complete, retainage gets held at, for instance, five percent of the contract for the duration of the job. In some cases, retainage is reduced to a certain percentage after a certain overall percentage of completion on the job has been reached. For example, retainage gets reduced to five percent of billings, once the job is 50 percent complete.
The cover page that accompanies the schedule of values, that is a statement of your original contract amount, change orders, revised contract amount, billed to date, retainage, previous earned amount to date, current payment due, etc., varies by general contractor. Therefore, besides some standard templates, your software vendor should be able to customize the cover pages pertaining to GCs that have their own forms they require you to use.
Once the billing is done, the sale is recorded. When recording the sale, besides the obvious accounting effective date, there should also be a provision for specifying an aging date. This accommodates revising sales in the current accounting period when a prior accounting period has been closed, and ages the sale properly.
A nice aging report is a necessity and besides the typical Current, 30-60 day, 60-90 day and over 90 day columns, the aging report should also display the actual number of days old for each open receivable.
There should also be a provision for recording all of your contacts for each job such as a person's name, billing address, phone, fax, e-mail, etc., and for recording your comments regarding phone conversations when trying to collect monies due.
The interface of AR to the General Ledger should be automatic and should default to what has been set up at the job level. And the cash receipts entry program should allow you to record deposits against multiple bank accounts and provide for the ability to credit job cost directly.
General Ledger (GL)
The general ledger module is pretty basic in that it merely captures the transactions that are generated from all of the other accounting modules. If you do not require a lot of detailed transactions within certain accounts, the software should provide for summary posting capabilities from the various modules that interface with it.
At the end of the fiscal year there should be a procedure to automatically close all the income and expense accounts to retained earnings. There should be no limit to the number of accounting periods that you wish to create within a fiscal year or the number of fiscal years kept on file. If your fiscal year does not coincide with the calendar year, make sure the software handles that.
Some systems will come with financial report writing software. If generating in-house statements then be sure to check this part of the program out. It is also nice to have the ability to set up a journal entry as recurring. Finally, you should be able to set up budgets for your expense accounts and generate reports comparing budget to actual costs.
Job Cost (JC)
good job cost module is crucial to your business! Not only does it track your work in progress, but it can also provide critical historical information at bid time. Job cost should allow you to define "cost accounts" to track budgets and accumulate costs for all your major labor categories, such as block, brick, grout, layout, punch out, remedial work, time and material, etc. Productive cost accounts like block, brick and grout should accumulate productive/non-productive labor hours so that actual "production" can be determined. There should be no limit to the number of cost accounts that can be defined.
If you are looking to generate production reports daily, you will need to make sure that your payroll system provides for the daily recording and posting of time to job cost. You will need a program to make adjustments to job cost directly through the job cost module for accruals, your outsourced payroll if you are outsourcing payroll and various other miscellaneous adjustments that come up.
Besides labor type cost accounts, you also need to be able to set up cost accounts for the material, bond, subcontract costs, fuel, equipment rental, scaffolding rental, travel and lodging, and other categories. Within the material cost account, the types of material (quantities and dollars) being purchased should be tracked. Within the equipment rental cost account, the types of equipment being rented should be tracked.
Tracking job cost by phase is also nice for those jobs that have distinct and separate phases running totally separate crews. While you may be making money on Phase One, you may be losing money on Phase Two. Everything mixed into the same job distorts the picture.
Like the general ledger, the job cost module captures transactions from the various other modules within the accounting system. Whether it's an AP invoice or a PR transaction, the job cost system needs to capture all detail! Purging AP, PR and the other accounting modules should have no effect on the level of detail still available in job cost.
You should also have the ability to archive job cost detail by job. This facilitates the restoring of all transactions for a job and the re-running of job cost reports for that day down the road when a warranty problem, or such, surfaces. Check out the available reports within the job cost module to make sure they report the data in a format that is useful to management. Look for reports that show production, budgeted dollars, costs, projected costs, budgeted quantities, quantities installed, quantities purchased, and so forth.
Once the core modules are up and running smoothly, you may want to consider taking a step further by interfacing AP with other software modules such as Purchasing (recommended), Inventory, Equipment and Subcontracts. Another essential module to look for would be one to track all of your time and material billings and other items priced during the course of the job for which you need to pursue those all elusive change orders.
In closing, you will not find a system that addresses everything mentioned within this article but by being informed, you should be able to ask the right questions, weed out those software packages that just won't work for our masonry industry and set your software vendor on the path to finding you the solutions that you require.
Masonry: A Unit-Based Business
Michael Ridgway is Chief Executive Officer of Smart Products & Services, a company specializing in accounting software and accounting services for the masonry industry. He began his computer programming career some 20 years ago and has worked solely within the masonry industry for the last 18 years. He can be reached via e-mail at: mike@SmartProductsAndServices.com.
Return to Table of Contents