Projects:Cost Allocation/Specifications
Cost Allocation - Functional Specifications
Overview
The general ledger gives a high-level of company revenues and expenses. However many companies need a more detailed analysis by cost center or profit center.
Cost centers are usually related to the functional areas of the company, such as management, administration, maintenance, marketing, production, etc. Analytical accounting enables company to analyze the revenues and expenses of each cost center.
Each cost center depends on a person in charge. Analytical accounting enables the person in charge to analyze the revenues and expenses against the budget defined for each cost center.
To enable analytical accounting it is necessary to adopt a system of Cost Allocation.
To generate the Cost Allocation it is necessary to distribute the incomes and charges in the general ledger to the cost centers of the Cost Allocation.
It is common to divide the cost centers into two categories: direct cost centers and intermediate cost centers.
Direct cost centers don't distribute their incomes and charges to others cost centers, they are the final destination of the distribution of incomes and charges.
Intermediate cost centers are cost centers that receive incomes and charges, for example, from an invoice, and then distribute their incomes and charges to other cost centers, usually in a monthly process.
Purpose
The purpose of this project is to define how the cost centers must be implemented in Openbravo ERP to have a Cost Allocation system, based in the distribution of the incomes and charges of the general accounting into the cost centers.
For this purpose, this document defines what the cost centers are and how to distribute the incomes and charges.
Scope
This project only take in consideration the assignments to cost centers and not the assignments that can be made to manufacturing cost centers and Work Orders.
Design Considerations
The cost centers are a new dimension (or dimensions) on the Fact-acct table. The cost centers can also be managed as organizations but this is not mandatory, except for the purpose of management of the security and access to these organizations.
The accounting entries generated by the Cost Allocation are inserted in the same Fact-acct table. A new field will be added in the Fact-acct table to show whether the entry comes from an allocation or not. The new field can be used to show cost allocations from reports.
Assumptions
- Usually only one cost center structure is used in companies using Cost Allocation, but sometimes another additional structure can be used. We will limit the number of possible cost center structures to two, because it is very unlikely that any more than two will ever be required.
- To add a new structure, it is necessary to add an additional field to the fact-acct table.
- We won’t allow iterations in the allocation of costs. These iterations happen when a cost center A allocates to other B and this B allocates again in A. An example is with cost center IT and General Management. Although this can happen, for simplicity and usability reasons, in this version iterations aren’t allowed.
- Any user of the application can impute incomes and expenses to any cost center defined in their organization or in an upper organization.
- The allocation process generates registers in the Fact-acct table. There is no need to control the closing of the allocation process because it doesn’t affect the general ledger and it is an internal accounting process.. Also it is a function granted usually only to the financial director.
Dependencies
All the programs that use dimensions must include the new dimension. Some of these are:
- Budgets must include the dimensions of cost center.
- Accounting process.
- Accounting combinations.
Constraints
See Design Considerations.
Glossary
- Client:
- Cost allocation: the kind of accounting that allows assigning and allocating revenues and expenses to the different cost centers of the company.
- Cost center: it is a part of the organization (usually identified with a functional area) that we use to allocate revenues and expenses.
- Direct cost centers: cost centers that don't distribute theirs incomes and charges to others, they are the final destination of the distribution of incomes and charges.
- Intermediate cost centers: they are cost centers that, after receiving incomes and charges, distribute their incomes and charges to other cost centers, usually in a monthly process.
- Attributes of a cost center: they are the concepts that will be used for assignments and allocations. Examples of attributes are m2, number of employees, number of PC, etc.
- Assignment: the process of assignment of incomes and charges from general ledger to one or several cost centers.
- Allocation: the process of distribution of incomes and charges from an intermediate cost center to one or several cost centers.
- Dimension: the information of accounting contains values for different combination of dimensions, as account number, product, market and cost center. Since we will allow two structures of cost centers to be defined, we will use two dimensions for cost centers (cost center 1, cost center 2).
- Cost center structure: the group of cost centers that are used in each dimension of cost centers. A business unit, legal organization or upper organizations can define up to two structures, one for cost center 1 and another for cost center 2.
Functional Requirements
User roles & profiles
The target users for this project are:
- Administrators: these users have a good knowledge of Openbravo ERP and they are in charge of defining the cost centers and the rules for the distribution of incomes and expenses
- Cost center manager: a user with a good knowledge of general ledger and cost allocation. He can modify the cost centers and he is in charge of execution of the allocation process. This role is usually played by the financial manager.
- Users: typical users of the application.
Business process definition
This project is related to accounting processes.
User stories
Story 1: Cost allocation structure definition
- Ray Carlan is the financial manager of a company that makes electrical appliance. They have three product lines: ovens, refrigerators and washing machines. He wants to know the profit and loses of each product line. For this purpose he defines several cost centers: three direct cost centers for these product lines, and four intermediate cost centers: management, maintenance, IT, marketing.
- Ray defines the rules for allocation of the incomes and expenses to the seven cost centers. For example, he defines the allocation of the electrical invoice based in the surface of each cost center, measured in m2.
- Ray defines the rules for allocation of the expenses of the four intermediate cost centers to other cost centers.
- The figure shows the structure of cost centers, assignments and allocations. Note that in this case, IT doesn’t allocate to Maintenance. Cost center of ovens is allocated directly from IT and also through Management and Marketing.
Story 2 Assignments
Story 2.1: Manual assignment of trip expense
- When Peter Strong, registers a trip expense of 800€, in this case the expense is imputed 300€ to Maintenance Chief and 500€ to Marketing Director.
Story 2.2: Automatic assignment of electricity invoice
- When Peter Strong, accountant of the company, registers the electricity invoice, this expense is imputed to the seven cost centers based in the rule defined by Ray, that he has defined to be imputed based in the surface of each cost center.
Story 3: Allocation of cost centers
- Ray Carlan, at the end of the month, after closing the general ledger for this month, is going to start the automatic cost allocation process for an organization that is business unit, legal entity or a parent of one of these. The allocation is made for all the organizations that depend on this one. This allocation is based in the rules defined for the cost allocation process.
Functional requirements based on business processes
1. Cost allocation structure definition
Num
| Requirement
| Importance
| Status
|
1.1
| Cost center structures
Define cost center structures. A cost center structure has the following information:
- organization: defines which organization can choose the structure.
- identifier
- description
| Must have
| To be planned
|
1.2
|
Cost centers
Define cost centers. A cost center has the following information:
- organization: defines what cost centers can be chosen when imputing or allocating costs
- structure cost center
- identifier
- description
- type (it can be direct cost center of intermediate cost center)
- priority in allocation process
| Must have
| To be planned
|
1.3
|
Cost center structures designation
Designation of one or two cost center structures to an organization, that is, business unit, legal organization or upper organization. In each organization there are two fields to registers these possible structures.
| Must have
| To be planned
|
1.4
|
Attributes of cost centers
An attribute of cost center has the information:
- structure cost center, each structure has its own attributes
- identifier
- description
- unit of measure
Example: In the cost center structure the user defines two attributes :
- square meters of the cost center,
- number of employees.
| Must have
| To be planned
|
1.5
|
Values of attributes for each cost center
For each cost center the user defines the value of each attribute of its cost center structure. It is stored in a numeric field.
It is to have a period control for the values of the attributes for two situations:
- Seasonal expenses and incomes, in which the user to define different values for each period.
- For the validity of the attribute, for example, the next year the user to change the value but save the old one for reference.
It is necessary to include the fields: “valid from period”, and “valid until period”.
The table valueAttribute has the fields:
- cost center attribute
- value
- valid from period
- valid until period
Example, for the previous cost centers, we define the values of the attribute square meters:
Cost center Attribute square meter value
- IT 60
- Management 120
- Marketing 100
- Maintenance 80
- Ovens 300
- Refrigerators 400
- Washing machines 200
If a user wants to define a criteria of assignment or allocation with several attributes, for example, m2 and people, it is necessary to define an attribute with the result of the cross original factors. So for the application it is considered a single attribute.
| Must have
| To be planned
|
1.6
|
Assignment criteria of incomes and expenses
To define the assignments of incomes and expenses, there is need a table assignmentCriteria the following fields:
- Cost center structure
- Product (one of the sources)
- Accounting concept (one of the sources)
- Accounting account (one of the sources), only one of the sources will be filled.
- Manual or automatic assignment
- Attribute
- Procedure; when the process is not based in the value of an attribute, we may need to define a procedure (Java, script, etc.) that performs the distribution.
By default, the assignment is made for all cost centers that has defined the attribute. If the assignment is only for some of the cost centers, then is necessary to define them in the assignmentCriteriaCostCenter, that has the following fields:
- AssignmentCriteria key
- Cost center
When there isn’t any register for an assignmentCriteria, the assignment is made for all the cost centers with that attribute.
When they are used two cost center structures, the assignment is made first for one of the cost center structures, and when this assignment has finished, the second assignment is performed.
For example, we have two cost center structures:
- the structure A, with cost centers A1 and A2,
- the structure B, with cost centers B1 and B2.
The criteria is to impute the expense (a product) of an invoice with the following values:
- by the structure A, 40% to A1, 60% to A2
- by the structure B, 25% to B1 and 75% to B2
For an expense of 100, after the first assignment, we get the records:
After the second assignment, we get the records:
The result is the same that the cross product of the criteria.
| Must have
| To be planned
|
1.7
|
Allocation criteria of incomes and expenses from intermediate cost center
To define the allocations of incomes and expenses from intermediate cost center to other cost center, there is need a table allocationCriteria with the following fields:
- Cost center structure
- Source cost center, it has to be an intermediate cost center
- Product (one of the sources)
- Accounting concept (one of the sources)
- Accounting account (one of the sources), only one of the sources will be filled.
- Attribute
- Procedure; when the process is not based in the value of an attribute, we may need to define a procedure (Java, script, etc.) that performs the distribution.
By default, the allocation is made for all cost centers with lower priority value, that have defined the attribute. If the allocation is only for some of the cost centers, then it is necessary to define them in the allocationCriteriaCostCenter, which has the following fields:
- allocationCriteria key
- Cost center
When there isn’t any register for an allocationCriteria, the allocation is made for all the cost centers, with lower priority, with that attribute.
In the previous example, IT needs to define an allocationCriteriaCostCenter due to the fact that it doesn’t allocate to Maintenance. However, the other 3 intermediate cost centers don’t need to define this table.
Where two cost center structures are used, the allocation may be made first completely for a cost center structure and then for the second structure, or make the allocation for the first criteria for both structures and after that, the allocation for the next criteria.
The process of an allocation implies to accounting entries in the fact-acct:
- Allocation to the target cost centers with the same sign of credit or debit.
- Allocation to the source cost center with the inverse sign of credit or debit, for example, the next table shows the final result of one allocation.
Example: There is one intermediate cost center A, two direct cost centers A1 and A2. The process show the assignment of invoice 1 and salary and the allocation of intermediate cost center A. The allocation balance the cost center A.
| Must have
| To be planned
|
2. Assignment process
Num
| Requirement
| Importance
| Status
|
2.1
|
Status of a document
Additionally to the completed status of a document, it is necessary to add two statuses:
- The status of the assignment, it can be incomplete, open, closed automatically, closed manually.
- The status of the accounting of the assignment. The document can be posted but with or without the assignment. So the values of this status are: No, Yes, Modified.
| Must have
| To be planned
|
2.2
|
Manual assignment
Each line of a document has a tab to define assignments, with the following fields:
- Cost center structure
- Cost center
- Percentage
- Value
When the user enters the percentage, the calculated value is shown. If the user enters the value, the calculated percentage is shown.
A table is needed to store these values. It can be a table for all the documents, or a table for each document. The name of this table is documentLineAssignment.
After, filling all the manual assignments, the user completes the document and this process checks that all the lines with manual assignments have assigned the 100% of their value for each cost center structure. If the system discovers that not all the assignments have been done, it warns that there are incomplete assignments and allow the user to complete or not the document.
A document completed (with assignments completed or not), can be posted. If the assignments are done, the accounting includes the cost center dimensions.
After posting a document, it is possible to change the assignments. To change the assignments the status of the assignment must be changed to open; which is possible if the period is not closed. After finishing the assignments, the status of the assignment must be changed to closed, and this process must check that 100% of the value for each cost center structure has been assigned. The status of the accounting of the assignment is set to Modified, so it needs to be recalculated.
The process of accounting, must detect the documents that have a posting date previous to the assignment closed data, so it must change the accounting to include the cost center dimensions (the general ledger of the document hasn’t changed, so the general ledger accounting remains the same).
| Must have
| To be planned
|
2.3
|
Automatic assignment
When a document is completed, the process looks for the criteria defined for the product, accounting concept or accounting account in the table assignmentCriteria and include these values in the documentLineAssignment.
Example: an invoice of electricity of 2520€ generates the next values:
The values generated by this process can be modified if the status of the assignment is changed to open. When closed, the status changes to closed manually.
| Must have
| To be planned
|
2.4
|
Definition of assignments in documents previous to the accounting process
It is possible to define the assignment in the initial document (requisition, order, shipment, …) and copy these assignments from document to document. For this purpose it is necessary to include the tab of assignments to the lines of the desired documents and in the “copy from” process include these values.
| Nice to have
| To be planned
|
2.5
|
Deletion of assignments
This process allows deleting the assignments of documents with status of closed automatically. The closed manually are not deleted because they have been modified manually.
| Should have
| To be planned
|
3. Allocation of cost centers
The assignment process is a management process, and the data are stored in the documents. The allocation process is an accounting process and modifies only the data in fact-acct. So, it can be deleted and repeated like any other accounting process.
Num
| Requirement
| Importance
| Status
|
3.1
|
Report of assignments incomplete
List the documents that have documents with the assignment status incomplete or open for the dates defined.
| Must have
| To be planned
|
3.2
|
Allocation process
This process executes the allocation of the cost centers after the rules defined in 1.7. The user selects the organization and period to process.
The process must check that all intermediate cost center has at least one cost center of a lower priority.
The process also must check that all the documents have the status closed (automatically or manually) and the status of the accounting of the assignment is yes.
The records are included in the fact-acct.
The first operation is to delete the records of allocation from the fact-acct for this period and organization. The second is to generate them. The order must be done from higher priority to lower priority.
| Must have
| To be planned
|
4. Analysis reports
To analyse the cost allocation, as it is an additional dimension of the fact-acct, the existing reports can be used for this purpose, adding the new dimensions as filter.
Num
| Requirement
| Importance
| Status
|
4.1
|
Budgets definition
In the definition of the budget it is necessary include the new dimensions.
| Should have
| To be planned
|
4.2
|
Budgets report
When the budget reports will be defined and developed, it will necessary to include the cost dimensions. These reports include at least: budget report, budget – real comparison and deviations (including the two cases 1. when the budget is made by period or 2. when the budget is made by year).
| Should have
| To be planned
|
4.3
|
General ledger journal
The new dimensions (cost center structure 1 and cost center structure 2) need to be included in the filter.
| Must have
| To be planned
|
4.4
|
General ledger report
The new dimensions need to be included in the filter.
| Must have
| To be planned
|
4.5
|
Trial balance report
The new dimensions need to be included in the filter. Also it is necessary a check that defines if the allocation accounting entries are considered or not.
The allocation accounting entries are created in the allocation process.
In the intermediate centers, if the allocation accounting entries are considered, the debit will be the same that the credit and the balance will be 0.
| Must have
| To be planned
|
4.6
|
General Accounting Report
The new dimensions need to be included in the filter. Also it is necessary a check that defines if the allocation accounting entries are shown or not.
In this case, usually in the intermediate centers the allocations won’t must be considered and in the direct centers normally the users wants to see direct and allocations of the cost center, so the allocations must be considered, but sometimes not, to see only the direct assignments.
| Must have
| To be planned
|
4.7
|
Break down of an account by cost center
It is a trial balance including the cost center dimensions. For the previous example, the values would be:
| Must have
| To be planned
|
4.8
|
Other allocation cost reports
Others reports may be defined, for example comparison of two cost centers or comparison between periods.
| Nice to have
| To be planned
|
Transactions
- Deletion of assignments
- Allocation process
Analysis tools
- Report of incomplete assignments
- Break down of an account by cost center
Setup
- Cost center structures
- Cost centers
- Attributes of cost centers
- Values of attributes for each cost center
- assignment criteria
- Allocation criteria