Monday, May 28, 2012

Allocating Payroll in Dynamics GP

Steve has rightly shamed me in posting here on our blog.  I could give you all a litany of reasons why I have been so busy lately both personally and professionally, but it would bore you to tears!  So I am just going to do what needs to be done, which is actually write a post :)

I have been working on an implementation that just went live two weeks ago, and we are now moving ahead in to phase 2 which is payroll.  Exciting stuff, I know.  But I had a conversation with the client last week that reminded me some basics when it comes to allocation options for payroll.  First, let me give you a background on what I mean by allocations in payroll.

Let's say that I have an administrative employee, who needs to be allocated to other departments.  This tends to fall in to two categories in terms of how the calculation needs to work:

  • Allocate by hours worked, which would be the most exact on a payroll by payroll basis, but requires that this information be collected and recorded.
  • Allocate based on a fixed percentage/logic, which would generally be less exact but does not require hours to be tracked/entered by department.

When allocating by hours worked, it is a fairly straightforward process.  For example, if I needed to allocate an hourly employee to two different departments, I would record the two time entries individually as follows in Payroll Transaction Entry (Transactions-Payroll-Transaction Entry):

By default, both of these transactions would be recorded for Angela's home department, Installation (INST).  But if we click the Department lookup, we can select a different department as shown below.

So, now the 30 hours will be recorded for the Sales department.  The process is just a bit different for salaried employees.  Generally, you don't need to record transactions for salaried employees- only if they are taking vacation, sick, or holiday time.  But in order to allocation a portion of their salary to another department, we would enter a transaction as follows:

When you select a Salary pay code for a transaction, the Payroll Salary Adjustment window will open automatically.  When allocation, we are interested in the options to Reallocate Hours and Reallocate Dollars.  If you select either of these options, you can then enter either a number of hours or a dollar amount to allocate to the department entered on the transaction.  And, just like with hourly employees, the department will default to the employee's home department but it can be changed using the Department lookup. Allocations like these can be set up in a recurring batch, for example if a salaried employee's hours are reallocated the same way for every pay period.

Let's say that you want to use the second method above, where the allocation is based on a fixed percentage and not broken out by hours as we just outlined.  Allocating by fixed percentages can be handled using Fixed Allocation Accounts in combination with your Payroll Posting Accounts setup.  So, first, you would need to set up a Fixed Allocation Account to store the percentages and accounts used in the allocation (Cards-Financial-Fixed Allocation):

The Fixed Allocation Account itself must be a unique account number, and then under Distribution Account you enter the posting accounts and percentages to be used.  Once you have the Fixed Allocation Account setup, you would need to use it in your Payroll Posting Accounts Setup (Microsoft Dynamics GP-Tools-Setup-Posting-Payroll Accounts):

So, in the case of the screenshot above, we are allocating Gross Wages.  We have specified that for the ADMIN department, any wages that use the SALY pay code will post to our fixed allocation account 000-5109-000.  Now, as you can imagine, if you have different allocation breakdowns (which would required different fixed allocation accounts) then you need to consider how you can set up your payroll posting accounts to route the wages to the proper fixed allocation account.  For example, you might have differnet percentages based on department or based on pay code or based on position.

Hope this was a helpful reminder of allocation options related to payroll in Dynamics GP.  Please share your own clever tips and tricks for allocating!

Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.


Unknown said...


If I can make a shameless plug for our "Employee Accounts and Splits" product without offending ... we have a product that will handle the allocation without having to create an allocation account. In addition to some other features, the "splits" functionality allows you to automatically create the Payroll Salary Adjustments based on percentages. You can also extend this functionality to split the associated payroll expenses (like benefits expense and employers tax expense). Feel free to check it out:


Christina Phillips said...

Thanks for the info, I will definitely keep it in mind!

Anonymous said...

I have a question for you on allocations to another company database in GP.
I have a client that needs to allocate expenses to another company in GP based on the department that the employee works in. Have you come up with any 'automatic' way, other than to run a report (perhaps Smartlist) which could then be exported to Excel and then re-imported as an intercompany entry?

Christina Phillips said...

Sorry, Heidi, I haven't. I mean, aside from moving the companies in to a single DB (using Multi Entity from Binary Stream). I suppose you could play around with having those amounts post to specific GL accounts, and then clearing them in an IC entry?

Unknown said...

We have several wage accounts within a Department and a Benefit Account. The program seems to be calculating correctly, but is allocating the Benefits from one of the Wage Accounts to the default Debit Account (Admin Wages). The Account mask looks like this '?-??-??-??' and the last 5 digits are blank.