CALCULATE BILLINGS - Special Topic BL-3

The purpose of this special topic is to provide detailed information on the process used to calculate billings and to present detailed analyses of all the billing formulas available in Costpoint.

There are many auxiliary issues regarding the initialization of billing information, and you need to clearly understand the Billing Format tables before we discuss the actual calculations performed. Therefore, we have divided this special topic into the following areas:

Invoice Printing and Posting Level

One of the most fundamental decisions in the project billing process is determining the billing level. Some of the factors that should be considered when determining the billing level are the need for consistent billing formulas, and the affect of various contract values, retainages, ceilings, specific billing requirements, and task billing requirements. For example, if your customer requires a separate bill after the completion of certain phases of the project, consider setting up unique tasks for each phase of the project and billing each phase separately. This will require setting up billing at the second level or below.  If various tasks in the project require separate types of bills, such as fixed price or time and materials, you need to set up the project with the billing level at the second level or below to accommodate unique billing formulas at each node of the project because you can assign only one billing formula. These issues are part of the project setup plan; you should carefully evaluate your plan before initializing the project or charging to it.

Bills are printed and calculated at the billing level of the project. All transactions charged to tasks below the level where the billing formula has been assigned will be included in the billing calculation. You can use the Supporting Schedule Headers (Detail Bills) subtask of the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) to enter each project node that for which you would like to print a supporting bill for the lower task levels. You can enter only project levels that are below the billing level.

Bills are posted to the general ledger at the level of the project where the billing formula has been assigned in the Project Billing Info screen. Special Topic BL-2 contains more specific information on the posting process in Costpoint. 

Project Billing Info screen

The Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) is the main screen for the initialization of project billing. Use this screen to choose a billing formula, confirm the customer for the project, select a billing format, identify the billing currency, and establish some controls over the billing for this project.  The level of the project you enter in this screen establishes the billing level for this project.  When you post the bill, the system posts the receivable at the billing level of the project.  If you want detail bills for each lower level task of the project, you can enter them in the Supporting Schedule Headers (Detail Bills) subtask. You cannot bill a project unless you have established a record for it in this screen.

If you are using a transaction-based billing formula, you should set up the Project Billing Info screen before charging any transactions to the project to ensure that all transactions are recorded in the Open Billing Detail table. In a transaction-based billing formula, the invoice for the project is based on the transactions that have been charged to the project. The Open Billing Detail table is populated when transactions are posted to the general ledger. However, transactions are not inserted into the Open Billing Detail table unless you have set up the project in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). In order for the posting programs to insert data into the Open Billing Detail table, the billing formula must be other than "Unit Price Transactions Only" or "Enter Bill Manually." The system uses the Open Billing Detail Table in the calculation of transaction-based billings.  If you do not set up the billing information before you post transactions, you can enter the transactions manually into the Open Billing Detail table or use the Update Open Billing Detail screen (Projects » Billing » Utilities). This utility copies the transactions from the general ledger into the Open Billing Detail table. 

Exercise caution when using the Update Open Billing Detail utility (Projects » Billing » Utilities). This utility does not check whether the transactions already exist in the Open Billing Detail table, nor does it check whether the transactions have already been billed.  Misuse of the utility could result in double billing some transactions. 

You do not need to populate the Open Billing Detail table if you intend to use a manual billing formula.

The Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) is required when using manual billing formulas, but you do not need to set it up before posting transactions to the project. The Open Billing Detail table is not used in the manual billing process. You cannot enter a bill in the manual billing screens unless you have previously set up the Project Billing Info screen. You can enter manual bills in the Edit Manual Bills, Edit Project Product Bills, Edit Milestone/Percent Complete Bills, and Edit Customer Bills screens (all in Projects » Billing » Edit Billings). You should select the formulas "Enter Bill Manually" or "Unit Price Transactions Only" for projects that you intend to bill using one of the manual billing screens.  This will prevent the Maintain Open Billing Detail screen (Projects » Billing » Prepare Billings) from being populated with transactional data that is not needed for billing. The only exception to this occurs if you are using the "Pay When Paid" feature. This feature requires the Open Billing Detail table to determine whether or not the client has paid the bill.  If you wish to use this formula and intend to bill manually, use the "Manual Bills with Unbilled Detail" formula. This formula will allow you to bill manually and populate the Open Billing Detail table. 

You can select a variety of special features for your bills in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). You can have the invoice calculated in a currency that differs from the functional currency of the database, have the invoice calculated on a cash basis, enter information for production of Progress Payment bills, establish retainages, set up scheduled billings, and select a format for your bill.

You must select the format of your bill in this screen. You can set up a unique billing format and assign it to your project, or you can use a standard formula. You can set up these formats in the Generic Billing Formats screen (Projects » Billing » Formats). Generic bills allow flexibility for the bill heading, line groupings, and totals on the bills. Standard formulas are grouped by function code and have some flexibility in the bill heading. See the Generic Billing Formats screen documentation for more information on setting up generic billing formats.

You can set up scheduled bills in the Billings From Schedule subtask of the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). In the subtask, you enter an amount to be billed, a date to bill, and a description. If you run the Calculate Billings screen (Projects » Billing » Calculate Billings) for a fiscal year/period/subperiod that includes the date to bill, the system will produce a scheduled bill with the correct description and amount. When billing by schedule, you should select the "Unit Price Transactions Only" billing formula to prevent the Open Billing Detail table from being populated with unnecessary data.

You can select a discount method to be used when invoices are calculated in the Other Info subtask. There are seven methods of discounts and each has additional setup that must occur to ensure calculation.

Discount Defaults - If you elect to use PLC discounts, certain discount default fields become available.  Using these fields, you can link a T&M project that has been established in the Project PLC Rates screen (Projects » Project Setup » Project Labor) to the project you are setting up. When you save the record, Costpoint copies the Assign PLC to Projects screen (Projects » Project Setup » Project Labor) and the Project PLC Rates using the T&M Project and discount percentage entered.  

If you use this method, Costpoint sums the total funded value for all projects where the Include in Aggregate Volume box is selected and that have the same customer in the Customer field in the Maintain Project Master screen (Projects » Project Setup » Project Master). The resulting funded value is compared to the rows in the Maintain Customer Volume Discounts screen (Projects » Billing » Billing Master) to find the row where the resultant value is between the starting and ending sales volume.  The discount percentage on that row is applied to accounts in the Account subtask.

The calculation for this discount method is identical to the Aggregate Volume by Customer, except the discounts are held by project rather than by customer. This allows you to aggregate the sales volume by customer but give specific discounts by project.  You can enter aggregate project volume discounts at multiple levels of the project. However, the discount record that resides closest to the transaction level project is used, if possible.  If there are transaction accounts within the invoice that are not included in the Accounts subtask at this level, Costpoint checks for discount records at each level of the project (up to the invoice level project) until a record is found that contains the account. If no record is found, no discount is applied to the account.

Maintain ACRN Bills screen

Use of the Maintain ACRN Bills screen (Projects » Billing » Billing Master) is not mandatory, but is beneficial to government contractors subject to Government Requirement, DFARS 204.71 Uniform Contract Line Item Numbering, specifically, standard payment instructions at PGI 204.7108(d)(1) through (6).  This requirement places an obligation upon contractors to invoice at a Contract, Contract Line Item (CLIN), Subcontract Line Item (SLIN), Exhibit Line, or Accounting Classification Reference Number (ACRN) level.  

Access to this screen is controlled by the Enable ACRN Billing check box in the Billing Settings screen (Projects » Billing » Controls).  If this check box is selected, users with the appropriate rights can initialize, review, or change information for an ACRN project.  You should set up this screen after establishing data in the Basic Info screen (Projects » Project Setup » Project Master) and the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) and before running the Calculate Billings and Calculate ACRN Billings screens (both in Projects » Billing » Calculate Billings). You must enter the ACRN billing formula at the same level at which the project billing information was established. This is necessary since ACRN allocation amounts derive from the standard bill amounts.

Once you have established an ACRN Billing record for a project, changing the billing requirement or calculation method may require additional steps to ensure proper calculations.  Contact Costpoint General Phone Support before changing any value in the ACRN calculations.

Before you can calculate an ACRN billing, the invoice must be selected.

The Maintain ACRN Bills screen has several purposes:

Complete this subtask after you have added the ACRN or ACRN/Line Item data in the table window.

Additional maintenance of this screen is required only when adding a new account or account range.

Maintain Project WAWF Information screen (Projects » Project Setup » Project Master)

Wide Area Workflow (WAWF) is a secure web-based system set up by the Department of Defense (DoD) for electronic invoicing, receipt, and acceptance. You can electronically submit invoices and government inspection and acceptance documents. Using web-based applications, government contractors and authorized DoD personnel can generate, capture, and process receipt and payment-related documentation. Authorized DoD users are notified of pending actions by e-mail and presented with a collection of documents required to process the contracting or financial action. The system uses Public Key Infrastructure (PKI) to electronically bind the digital signature to provide non-refutable proof that the user has electronically signed the document. More importantly, WAWF helps to mitigate interest penalty payments caused by lost or misplaced documents. The WAWF website is https:\\wawf.eb.mil.

You can use the WAWF screens in Costpoint to prepare batch files to be transmitted to WAWF via File Transfer Protocol (FTP).

The Maintain Project WAWF Information screen (Projects » Project Setup » Project Master) serves as the WAWF master record for each project.  This record can exist only at the invoice level of the project, and there can be only one record per invoice project. Once you have entered a CAGE Code in the Maintain WAWF Billing Settings screen, entering the same code in this screen defaults the DoDAACs (DOD Activity Address Codes).  The application includes this information in the FTP file so that the file routes correctly through the WAWF payment system.    

If you are submitting an invoice to Mechanization of Contract Administration Services (MOCAS), be sure to select the MOCAS Pay System check box. A MOCAS file is built differently than a non-MOCAS file.  For example, sales tax and discounts cannot be billed to MOCAS and quantities must be in whole numbers.  If the MOCAS Pay System check box is selected, be sure that the Payment Office entered is a MOCAS payment office.  

Invoice amounts must be grouped by CLIN/SLIN, Fee/Charges (other charges), Allowances (Discounts), or Taxes.  Because of this, you must select a CLIN Mapping Method that allows the billed amounts to be grouped together.  There are two mapping choices:

After you determine which type of invoice to generate, you must specify the source from which the Create WAWF Billing Files application should retrieve the data for this invoice project. The available file sources are Standard Bills, Progress Payment Bills, or Project Product Bills.  If the file source selected is Progress Payment Bills, the only invoice type available is Progress Payment. All other invoice types are available for standard bills and project product bills.

Please be aware that the Create WAWF Billing Files screen (Projects » Billing » Print Billings) retrieves the data from the billing edit tables. Do not post your bills until you have generated your WAWF FTP files.  

There are also subtasks available for each invoice type that you can use to store additional information that is required for the generation of the FTP file, but is not available in the billing edit tables.  See "Wide Area Workflow" Special Topic BL-11 for more information.

Billing Header Records

The system updates the Billing Edit Invoice Header table with a record for the billing level and all levels that have been identified in the Supporting Schedule Headers (Detail Bills) subtask of the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). This allows you to print invoices at levels different from the one at which the invoice was posted. If your project is billed and posted at the top level, but your client needs to see schedules detailing costs at the transaction level, you need to identify necessary supporting task levels in the Supporting Schedule Headers (Detail Bills) subtask of the Project Billing Info screen. This will allow you to print supporting bills using the data in the billing header records. 

Because multiple records can exist for the same billing amount, it is necessary, for supporting schedule purposes, to distinguish between records existing in the Billing Edit Invoice Header and those that store invoices and amounts actually billed. Only records for invoices and amounts actually billed must be selected by the billings posting program, or else multiple postings will occur for the same costs billed. For this reason, the system uses a flag to distinguish records that exist for actual invoicing from those that exist solely for supporting schedules. This field, the Supporting Schedule Only flag, is updated by the Calculate Billings screen (Projects » Billing » Calculate Billings). This flag is located in the BILL_EDIT_INVC_HDR table.  If you add a record to the Billing Edit Invoice Header table for invoicing, this flag has a value of N. If you add records for supporting schedules, the flag has a value of Y. The program selects only records where this flag is N for posting.

Another situation may exist where multiple customers are invoiced against one specific project. This situation occurs primarily when customers share funding on a specific project. In this instance, multiple customers are added to the Customer(s) subtask of the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). Each customer is assigned a percentage of responsibility for the project, which represents the percentage of costs for which the customer will be invoiced. When billings are computed, billable costs on a project are summarized. The system applies the customer percentages against the project total to arrive at an invoice amount for each customer.

However, costs are stored on the Billing Edit Detail file by transaction. To print and post for multiple customers, the system adds a record to the Billing Edit Invoice Header for each customer. This record indicates the percentage of responsibility and the amount invoiced to each customer. The record also indicates the total invoice amount for the project. For example, assume three customers share $1000 of billable costs across a project. The percentage of responsibility is 30%, 30% and 40%. A record is added to the Billing Edit Invoice Header for each customer. This record indicates the invoice amount for each customer, as well as the total invoice amount of $1000.

Updates To Billing Edit Detail For Cost-, Hours-, and Unit-Based Formulas

The posting programs update the Open Billing Detail for projects with transaction-based billing formulas. The Calculate Billings screen (Projects » Billing » Calculate Billings) copies allowable transactions in this table into Billing Edit Detail. Transactions include costs, units, and hours. The link between the two tables is the "Billing Transaction Key," a multi-field key that uniquely identifies individual transactions.

Transactions can be partially billed. In order to be able to partially bill transactions for a given project, you must select the Allow Transactions To Be Partially Billed check box in the Project Billing Info screen. If you do not select this check box, transactions must be billed entirely, or not at all. In the calculation of allowable amounts, transactions that cannot be partially billed are disallowed entirely once a ceiling is reached.

Cost-Based Formulas

Cost-based formulas include: Cost Plus Fee on Cost and Cost Plus Fee on Hours.

For cost-based formulas, values for each transaction are evaluated in the following manner:

  1. In the Project Billing Info screen you can select the Allow Transactions To Be Partially Billed check box if you would like to bill partial transactions.  Leave this box clear if you only want to bill transaction totals.  If transactions cannot be partially billed, then, for each transaction, the Write Off and Hold amounts are summarized in Open Billing Detail. This summary amount is compared to the transaction amount. If the transaction amount is greater than the sum of those fields, the difference is the amount of this transaction eligible for billing.

  2. The second option is Allow Transactions To Be Partially Billed. If this check box is selected in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup), partial transactions are also taken into consideration when arriving at allowable costs. Values for partial transactions are evaluated in the following manner:

The Write Off, Hold, and Previously Billed amounts are summarized in the Maintain Open Billing Detail screen (Projects » Billing » Prepare Billings). If the transaction amount is greater than the sum of those fields, the difference is the amount of this transaction eligible for billing.  If a write-off or hold amount has been entered in the Maintain Open Billing Detail screen, the amount to bill will display in the Amt to Bill field. If amount Amt on Hold or Write Off Amt has not been entered, then the Amt to Bill will be zero, and the Transaction Amt will be used by the Calculate Billings screen (Projects » Billing » Calculate Billings).

You can set cost ceilings at the summary or detail account level, or at multiple project levels. Only ceilings set at project levels equal to or lower than the level of the invoice project ID are observed, however. For example, you set up a three-level contract. The project is billed at the second level, and costs are charged at the third level. Ceilings set at the second or third level are observed when allowable costs are determined for billing purposes. However, ceilings set and costs incurred at level one of the project are ignored.

  1. Next, the program must calculate allowable costs. To determine allowable costs, the program sums eligible billing amounts in Open Billing Detail by Project/Org/Account combination. The program compares cost ceilings set by account to Inception-to-Date (ITD) amounts billed in the Maintain Project Bill Summary screen (Projects » Billing » Billing History). Cost ceilings with a ceiling code value of "B" or "A" are observed. The excess of ceiling amounts over amounts billed is the amount remaining to bill. The program compares this amount to the sum of currently billable transactions. If the transactions currently billable are less than the ceiling, all transactions are billed. If transactions exceed the cost ceiling, the program uses the following equation to determine which are allowable:

The program first looks at the fiscal year, period, and subperiod in which each cost was incurred. Costs incurred are allowed from earliest to latest subperiod incurred. For example, assume that the Open Billing Detail contains unbilled costs from 1995, periods 1, 2, 3, and 4. Costs are evaluated from period 1 first in the determination of allowable costs. Costs incurred in period 4 are evaluated last.

However, there may be situations where a ceiling is reached in the middle of a subperiod. Within a given fiscal year, period, and subperiod, costs are next evaluated based on transaction amount. Costs are allowed in ascending transaction amount. Therefore, smaller transaction amounts are considered before larger ones. Assume a cost ceiling was reached in period 4, subperiod 1. The program evaluates transactions within this subperiod based on amount. Transactions from smallest to largest are allowed until the ceiling is reached.

If you are partially billing transactions, a partial transaction may be allowed to arrive at a cost ceiling. Therefore, part of a transaction may be considered billable, and part of it may be considered over ceiling. In this situation, the billable amount copied into Billing Edit Detail is reduced by the portion of the transaction that has been disallowed. If partial transactions are not billed, the entire transaction being evaluated at the time the ceiling is reached is disallowed.

Allowable costs are determined before transaction updates to the Billing Edit Detail table. In other words, transactions are summed and evaluated in Open Billing Detail against cost ceilings. If transactions are partially billed, fully allowable transactions are copied into Billing Edit Detail. If only part of a transaction is allowable, only that portion is copied into Billing Edit Detail. Transactions over ceiling remain in Open Billing Detail. If transactions are not partially billed, the entire transaction used to arrive at the cost ceiling is disallowed and, therefore, is not copied into Billing Edit Detail.

Additional fields are then updated in Billing Edit Detail. Write off amounts, and amounts on hold, are also copied into Billing Edit Detail. Therefore, for every billable transaction, Billing Edit Detail stores the part of that transaction that has been previously billed, written off, placed on hold, or is currently billed. The sum of these fields is the total transaction amount. The project ID that incurred the transaction and the invoice project ID, or project level to which the invoice is posted, are both stored for each transaction.

  1. Next, the program updates Billing Edit Detail with non-transaction-based amounts. These amounts include burdens, fee, fee over ceiling, costs over ceiling, and retainage amounts.

Burden.  Burden amounts are the first non-transaction cost element calculated. The program groups allowable costs (and hours, if hours-based pools exist) by Project/Org/Account/FY/Period and Subperiod. It multiplies these allowable costs/hours by the provisional rate in the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup). The burden amounts are stored by Project/Org/Account/FY/Period/Subperiod and pool numbers in the Billing Edit Detail table. If burden ceilings exist for billing purposes, they are taken into consideration as part of this calculation. Burden ceilings are set by project, fiscal year, account and pool. If burden ceilings are set for billing purposes, they contain a ceiling code of "B" or "A." The program compares the provisional rate to the burden ceiling rate. It multiplies the lower of the rates by the transaction amounts to arrive at a burden amount. It then adds a record to the Billing Edit Detail for burden amounts. It adds a record for each Project/Org/Account/FY/Period and Pool.

Fee.  Next, the program calculates fee amounts. Fee calculations and updates occur in two phases. The program first calculates fee for direct costs. Once allowable costs have been determined, fee is applied. The program uses the fee percentage from the billing formula as the initial starting point when determining a fee rate. Next, fee overrides are taken into consideration. Fee overrides are set by account for both direct and burden costs. The program observes this override when computing billings if the override contains a ceiling code of B or A, Overrides may increase or decrease fee calculations.

Once the fee rate is determined, the program multiplies it by the sum of transactions to arrive at a billable fee amount. Records are added to the Billing Edit Detail table for fee on direct costs. The records are grouped by Project/Org/Account/ FY/Period and Subperiod. The second phase of the calculation involves the calculation of fee on burden costs. If you have set a fee override for a given cost pool, the program uses the fee override rate to determine fee amounts on burden costs for that pool.

However, fee overrides set on direct accounts are also taken into consideration in the calculation of fee on associated burdens. For example, fee on direct travel costs is limited to 2%. Assume that travel costs are burdened with G&A. The fee calculated on the G&A applied to that travel is also limited to 2%.

Therefore, a situation may exist where a fee override percentage is set for a cost pool, but another override may be set for an element of that cost pool. In this instance, the override that applies a lower fee rate is used. For example, you set a fee override on the G&A pool of 3%. You set a cost fee override on travel accounts of 2%. Travel is burdened with G&A. In this instance, travel and its associated burdens (G&A) have been identified with a fee override percent of 2%. However, G&A has additionally been identified with a fee override of 3%. The program applies the lower of the two fee overrides (2%).

Once the fee rate is determined, the program multiplies it by the burden amount to arrive at a billable fee amount per pool. Records are added to the Billing Edit Detail for fee on burden costs. These records are grouped by Project/Org/Account/ FY/Period/Subperiod and Pool number.

Fee Over Ceiling and Costs Over Ceiling. Next, the program applies total contract fee ceilings for both contract and funded values. Contract and funded fee ceilings are set in the Project Total Ceilings screen (Projects » Project Setup » Project Ceilings). If the ceiling amount has a code of B or A, the program uses the ceiling for billing purposes. The fee calculated on the current invoice is combined with the fee billed to date in the Maintain Project Bill Summary screen (Projects » Billing » Billing History) to obtain the Inception-to-Date (ITD) fee. If the total ITD fee computed exceeds the fee ceiling, the program will add a record to the Billing Edit Detail for over fee ceiling amounts. This record reduces the invoice by the amount over ceiling. The record is inserted into the Billing Edit Detail table at the level of the project where the ceiling was placed.  Please note that the ceiling will be taken into consideration only if it is placed at or below the billing level of the project. The program adds allowable fee to allowable direct costs and burdens to arrive at a current billable amount. ITD amounts billed are summed in Maintain Project Bill Summary and added to current billable amounts. The program compares this amount to the Contract Value and Funded Value ceilings set up in the Project Total Ceilings screen. If the amount has a ceiling code of B or A, the program uses this value as a total billing ceiling amount. If the total billing computed exceeds the billing ceiling, the program adds a record to the Billing Edit Detail for over ceiling total amounts. These ceilings are evaluated only if they have been placed at or below the billing level. The over ceiling records are inserted into the Billing Edit Detail table at the level of the project where the ceiling was placed.

Retainage Amounts. The final step is to calculate retainage amounts. Retainage is an amount that is withheld from the billing by an arrangement with the customer. It is usually stated in the form of a percentage of the contract or funded value. Retainage can be calculated on fee amounts, T&M labor, or billing amounts. For cost-based invoices, retainage must be calculated on fee or billing amounts. Additionally, retainage can be withheld on each invoice, or from the final invoice. You enter the formula and percentage used in retainage calculations in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) at the Invoice Project level. A record is added to Billing Edit Detail for the retainage amount. This record is added at the Invoice Project level.

Hours-Based Formulas

Hours-based formulas include: Loaded Labor w/Fee plus Non-Labor w/Burden w/Fee, Labor Cost times Multiplier plus Non-labor times multiplier (Cost), Cost times Multiplier plus Non-labor times multiplier (Hours), Loaded Labor plus Non-labor Plus Burden on Non-labor, Loaded Labor Plus Non-labor w/Burden w/Fee, Loaded Labor Rate, Loaded Labor Rate Plus Non-labor, Loaded Labor w/Burden w/Fee Plus Non-labor w/Burden, and Rate Schedule times Multiplier Plus Non-labor times Multiplier w/Fee.  If you want to use these formulas, you need to set up Project Labor Categories (PLCs). These formulas will not calculate properly without the PLCs. They are based on hours incurred times a labor rate. 

The system calculates hours-based formulas using data in the Maintain Open Billing Detail (Projects » Billing » Prepare Billings) and Project Billing Info (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) screens. The Open Billing Detail table is populated by the posting programs and by the Load Labor Rates process (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The posting programs insert hours incurred, labor category, amount, account/org information, FY/Pd/Supd information, and other transaction details into the Open Billing Detail table. The Load Labor Rates process inserts the labor rate information into the Open Billing Detail table. The program uses the data in this table, along with some data in the Project Billing Info screen, when calculating bills. 

The following processes take place when the system calculates an hours-based bill:

  1. Write Off and Hold hours are summarized in Open Billing Detail. The program compares these hours to the total transaction hours. If the transaction hours are greater, the difference is hours eligible to be billed.

You can also partially bill transactions. If you select the Allow Transaction To Be Partially Billed check box in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup), partial transactions are also taken into consideration when arriving at allowable costs. Write Off, Hold, and Previously Billed Hours are summarized in Open Billing Detail. If the transaction hours are greater than the sum of those fields, the difference is hours eligible to be billed.

  1. Next, the system calculates allowable hours. To determine allowable hours, the hours in Open Billing Detail are summed by Project/Org/Account. Hours are allowable if they are less than the hours ceilings set in the Project Hours Ceilings, Project Employee Hours Ceilings, or Project Vendor Hours Ceilings screens (all in Projects » Project Setup » Project Ceilings).  When you set ceilings in these screens, they apply to both billings and revenue. Ceilings are set by employee, vendor, or labor category. You can also set ceilings at multiple project levels. Only ceilings at project levels equal to or lower than the project level of the invoice posting level are observed, however. For example, you set up a three-level contract. You post the invoice at the second level, and costs are charged at the third level. When determining allowable hours, the system observes ceilings set at the second or third level. Ceilings set at level one of the project are ignored. If a ceiling is set for an employee, and an additional (higher) ceiling is set for the labor category of that employee, the employee ceiling takes precedence. For example, assume an employee is limited to charging 100 hours to a project. His labor category may charge 250 hours to the project. When calculating allowable hours, the system considers hours in excess of 100 charged by this employee to be over ceiling.

The hours of other employees may be used in the calculation of allowable hours for this labor category; however, this employee's hours will not be considered allowable. In other words, the program determines allowable hours by employee as the first phase of the calculation. Allowable hours by labor category are determined in the second phase of the calculation.

  1. The excess of ceiling amounts over amounts billed is the amount remaining to bill. The program compares this amount to the sum of currently billable hours. If the transactions currently billable are less than the ceiling, all hours are billed. If hours exceed the cost ceiling, the following equation is used to determine which are allowable:

The program first looks at the fiscal year, period, and subperiod in which the hours were incurred. Hours incurred are allowed from earliest to the latest subperiod incurred. For example, assume that the Open Billing Detail contains unbilled hours from 1995, period 1, 2, 3, and 4. Hours are evaluated from period 1 first in the determination of allowable costs. Hours incurred in period 4 are evaluated last.

However, there may be situations where a ceiling is reached in the middle of a subperiod. Within a given fiscal year, period, and subperiod, hours are next evaluated based on transaction size. Hours are allowed in ascending transaction size order. Therefore, smaller transactions are considered before larger ones. Assume a ceiling was reached in period 4, subperiod 1. The program evaluates transactions within this subperiod based on number of hours. Transactions from smallest to largest are allowed until the ceiling is reached.

If you are partially billing transactions, a partial transaction may be allowed to arrive at a cost ceiling. Therefore, part of a transaction may be considered billable, and part of it may be considered over ceiling. In this situation, the billable hours copied into Billing Edit Detail are reduced by the portion of the transaction that has been disallowed. If partial transactions are not billed, the entire transaction being evaluated at the time the ceiling is reached is disallowed.

  1. The program determines allowable hours before updating the Billing Edit Detail table. In other words, transactions are summed and evaluated in Open Billing Detail against cost ceilings. If transactions are partially billed, fully allowable transactions are copied into Billing Edit Detail. If only part of a transaction is allowable, only that portion is copied into Billing Edit Detail. Transactions over ceiling remain in Open Billing Detail. If transactions are not partially billed, the entire transaction used to arrive at the cost ceiling is disallowed and therefore is not copied into Billing Edit Detail. This is done so that the over ceiling transaction can be billed if the ceiling amount is increased.

Additional fields are then updated into Billing Edit Detail. Write off hours, and hours on hold, are also copied into Billing Edit Detail. Therefore, for every billable transaction, Billing Edit Detail stores the part of that transaction that has been previously billed, written off, placed on hold, or is currently billed. The sum of these fields is the total transaction amount. The project ID that incurred the transaction and the Invoice Project ID, or Project level at which the invoice is posted, are stored for each transaction.

Billing Edit Detail also needs to be updated with the T&M billing rates. The system stores the billing rate in the Open Billing Detail table once you have run the Load Labor Rates screen (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The appropriate labor rate is copied into Billing Edit Detail. The program multiplies the rate by allowable hours to arrive at billing amounts.

  1. Next, the program updates Billing Edit Detail with non-transaction-based amounts. These amounts include burdens, fee, fee over ceiling, costs over ceiling, and retainage amounts.

Burdens. Burden amounts are the first non-transaction cost element calculated. The program groups allowable non-labor costs (hours, if using hours-based pools) by Project/Org/Account/FY/ Period and Subperiod. Burdens are applied to the allowable costs (hours) by pool. Burden amounts are stored in the Billing Edit table by Project/Org/Account/FY/ Period/Subperiod and pool number. If burden ceilings exist for billing purposes, they are taken into consideration as part of this calculation. Burden ceilings are set by project, fiscal year, account, and pool.

You can set burden ceilings in the Project Burden Cost Ceilings screen (Projects » Project Setup » Project Ceilings). Burden ceilings are applied for billing purposes only if you enter a ceiling code of B or A.  The program compares the provisional rate in the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup) to the burden ceiling rate. It multiplies the lower of the rates by the transaction amounts to arrive at a burden amount. A record is added to the Billing Edit Detail table for burden amounts. A record is added for each Project/Org/Account/FY/Period, and Pool number combination.

Fee.  Next, the program calculates fee amounts. Fee calculations and updates occur in two phases. The program first calculates direct costs. Once allowable costs have been determined, fee is applied. The fee percentage from the billing formula is the initial starting point in the determination of a fee rate. Fee overrides are next taken into consideration. Fee overrides are set by account for both direct and burden costs. This override is observed when billings are computed if the override contains a ceiling code of "B." Overrides may increase or decrease fee calculations.

Once the fee rate is determined, the program multiplies it by the sum of transactions to arrive at a billable fee amount. A record that is grouped by Project/Org/Account/ FY/Period and Subperiod combination is added to the Billing Edit Detail. The second phase of the calculation involves the calculation of fee on burden costs. The fee percentage from the billing formula is the initial starting point in the determination of a fee rate for burdens as well.

A fee override may have been set for a given cost pool. In this situation, the program uses the fee override rate to determine fee amounts on burden costs for that pool. However, fee overrides set on direct accounts are also taken into consideration when calculating fee on associated burdens. For example, assume fee on direct travel costs is limited to 2%, and that travel costs are burdened with G&A. The fee calculated on the G&A applied to that travel is also limited to 2%.

Consequently, a situation may exist where a fee override percentage is set for a cost pool, but an override is also set for an element of that cost pool. In this instance, the program uses the override that applies a lower fee rate. For example, a fee override is set on the G&A pool of 3%. A cost fee override is set on travel accounts of 2%. Travel is burdened with G&A. In this instance, travel and its associated burdens (G&A) have been identified with a fee override of 2%. However, G&A has additionally been identified with a fee override of 3%. The lower of the two fee overrides (2%) is applied.

Once the fee rate is determined, the program multiplies it by the burden amount to arrive at a billable fee amount per pool. A record is added to the Billing Edit Detail for fee on burden costs that is grouped by Project/Org/Account/FY/ Period/Subperiod and Pool number combination.

Fee Over Ceiling and Costs Over Ceiling.  Next, the program applies total contract fee ceilings. You can set up contract and funded value fee ceilings in the Project Total Ceilings screen (Projects » Project Setup » Project Ceilings). If the ceiling amount has a code of B or A, the ceiling is used for billing purposes. The program determines the Inception-to-Date (ITD) fee by adding the previously billed fee amount in the Maintain Project Bill Summary screen (Projects » Billing » Billing History) to the fee currently billable. It compares this amount to the fee ceiling to determine the allowable fee. If the total ITD fee computed exceeds the fee ceiling, a record is added to the Billing Edit Detail for over fee ceiling amounts. The program applies fee ceilings only if they are set up at the billing level or below. Fee ceilings above the billing level are ignored. If an over fee ceiling is encountered, a record will be inserted to the Billing Edit Detail table at the level of the project where the ceiling was placed.

The program adds allowable fee to allowable direct costs and burdens to arrive at a current billable amount. ITD amounts billed are summed in Maintain Project Bill Summary and added to current billable amounts. The program compares the total billing amount to the Contract and Funded Values set up in Project Total Ceilings screen (Projects » Project Setup » Project Ceilings). If the amount has a code of B or A, this value is used as a total billing ceiling amount. If the total billing computed exceeds the billing ceiling, the program adds a record to the Billing Edit Detail for over ceiling total amounts. If the ceiling is removed or increased, the amount that has not been billed can be included on the next billing.

The over ceiling record is inserted into Billing Edit Detail at the level of the project where the ceiling was placed in the Project Total Ceilings screen.

Retainage Amounts. In the final step, the program calculates retainage amounts. Retainage can be calculated on fee amounts, T&M labor, or billing amounts. Additionally, retainage can be withheld on each invoice, or from the final invoice. For T&M invoices, retainage can only be calculated based on T&M labor, and must be calculated on each invoice. To calculate retainage, the program uses the formula and percentage in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) at the Invoice Project level. A record is added to Billing Edit Detail for the retainage amount. This retainage record is added at the invoice project level.

Unit-Based Formulas

The only exclusively unit-based formula is Unit Transactions Only. When you use this formula, only units will appear on the bill; however, units can be included on any T&M type billing. You can bill hours and non-labor costs as well as units if you use any of the loaded labor formulas. You must be sure to charge the units in the Enter Unit Usage screen to an account that has been assigned a Function Code of UNITS in the Project Account Groups screen (Projects » Project Setup » Controls). The program will not perform the unit calculations unless this function code is used.  The calculations for unit-based billings are outlined below.

  1. For unit-based transactions, Write off and Hold units are summarized in the Open Billing Detail table. The program compares these units to the total transaction units. If the transaction units are greater, this is the number of units eligible to be billed.

You can partially bill transactions by selecting the Allow Transactions To Be Partially Billed check box in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup), and the partial transactions are taken into consideration when arriving at allowable costs. Values are evaluated in the following manner:

Write Off, Hold, and Previously Billed Units are summarized in the Open Billing Detail table. If the transaction quantity is greater than the sum of those fields, the difference is the number of units eligible to be billed.

  1. Next, the program calculates allowable units. Eligible units that have been calculated using the formula outlined in the previous section are summarized by Project/Org/Account/CLIN. Unit Ceilings are entered in the Link to Items subtask of the CLIN Information screen (Projects » Project Setup » Unit Pricing). Ceilings are entered in the table by CLIN and are taken into consideration for billings if they contain a ceiling code of B or A.

Units used for the month are entered and posted from the screens in the Units Usage menu in Costpoint Billing. If the Post To Billings check box is selected in the Enter Unit Usage screen (Projects » Billing » Units Usage), Units Used will update the Open Billing Detail table. The account entered in the Enter Units Usage screen must have a Function Code of UNITS (in the Project Account Groups screen (Projects » Project Setup » Controls)) in order to be billed using unit price calculations.  If the account entered in the Enter Unit Usage screen has a Function Code of NON-LABOR, the cost associated with the units will be billed. Units must be posted to the Open Billing Detail table to be included in billing calculations. Units in the Open Billing Detail table are summarized by Project, CLIN, and Item. Inception-to-Date (ITD) units billed are summarized in the Maintain Project Bill Summary table. The program compares ITD units billed to the total unit ceiling set in the Link To Items subtask of the CLIN Information screen (Projects » Project Setup » Unit Pricing) to obtain allowable units.

The excess of ceiling units over ITD units billed is the number of units remaining to bill. The program compares this number to the sum of currently billable units in the Open Billing Detail table. If the units currently billable are less than the ceiling, all units are billed. If units are in excess of this ceiling, they are disallowed in the reverse order in which they were used. In other words, units are allowed on a First In, First Out basis up to the ceiling, and are therefore disallowed on a Last In, First Out basis, depending on the unit usage date. The allowable number of units is finally derived, based on the date and the ceiling.

If you are partially billing transactions, a partial unit transaction may be allowed to arrive at a cost ceiling. Consequently, part of a transaction may be considered billable, and part of it may be considered over ceiling. In this situation, the number of billable units copied into Billing Edit Detail is reduced by the portion of the transaction that has been disallowed. If partial transactions are not billed, the entire transaction being evaluated at the time the ceiling is reached is disallowed.

The program determines allowable units before performing transaction updates to the Billing Edit Detail table. In other words, transactions are summed and evaluated in the Open Billing Detail table against unit ceilings. If transactions are partially billed, the fully allowable transactions are copied into Billing Edit Detail first. If only part of a transaction is allowable, that portion is copied into Billing Edit Detail. Transactions over ceiling remain in the Open Billing Detail table. If transactions are not partially billed, the entire transaction used to arrive at the cost ceiling is disallowed and therefore is not copied into the Billing Edit Detail table. This allows units to be billed if the unit ceiling is removed or increased in a future period.

  1. The program then updates additional fields in the Billing Edit Detail table. Write Off units, and units on Hold, are also copied into the Billing Edit Detail table. Therefore, for every billable transaction, the Billing Edit Detail table stores the part of that transaction that has been previously billed, written off, placed on hold, or is currently billed. The sum of these fields is the total transaction amount. The project ID that incurred the transaction (or source project ID) and the invoice project ID, or project level at which the invoice is posted, are stored for each transaction.

  2. Next, the program looks at the Project Unit Pricing screen (Projects » Project Setup » Unit Pricing) for unit pricing information. The Project/CLIN and Item used for pricing information is the Project/CLIN and Item to which units used were charged. If Project/CLIN pricing is not used, pricing information from generic product price catalogs is used for the Item and Revision to which units used were charged.

Unit pricing may be fixed for all units (total pricing), or it may be incremental (incremental pricing). Select either the Incremental or Total option in the Project Settings screen (Projects » Project Setup » Controls) to determine the type of unit pricing. If you use incremental pricing, you can set price increments by date, or by number of units. If the unit price is fixed for all units, the program multiplies this price by the allowable units to arrive at a billing amount.

If unit pricing is incremental, the program first looks at the date range of the price increments. Once it finds the correct date range to use, it looks next to the quantity for the unit price. It multiplies the number of allowable units less than or equal to the maximum units at that price by the corresponding price to arrive at a billing amount for that group of units. The unit price is also stored in the Billing Edit Detail file.

Sales tax for units billed is also accrued by the Calculate Billings screen (Projects » Billing » Calculate Billings). Unit transactions in the Open Billing Detail table store the sales tax code of the state associated with the units used in that transaction. The base amount used in the sales tax calculation is the price per unit multiplied by the number of units. The program multiplies this amount by the sales tax rate from the Sales Tax table for the designated sales tax code. The sales tax amount and code are stored in the Billing Edit Detail table.

  1. Next, the program updates the Billing Edit Detail table with non-transaction based amounts. These amounts include costs over ceiling, and retainage amounts.

The program sums the billing amounts and compares them to the Contract Value and Funded Value from the Project Total Ceilings screen (Projects » Project Setup » Project Ceilings). If the amount has a code of "B" or "A," this value is used as a total billing ceiling amount. If the total billing computed exceeds the billing ceiling, a record is added to the Billing Edit Detail for over ceiling total amounts. The program updates the Billing Edit Detail screen at the level of the project where the ceiling was set in the Total Project Ceiling screen.

The final step is to calculate retainage amounts. Retainage can be calculated on fee amounts, T&M labor, or billing amounts. Additionally, retainage can be withheld throughout the project, or from the final invoice. For unit-based invoices, retainage can be calculated only on total billing amounts. For retainage calculations, the program uses the formula and percentage from the Project Billing Info screen at the invoice project level. A record is added to the Billing Edit Detail for the retainage amount; this record is added at the invoice project level only.

Invoice Formats

When you initialize the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup), you must establish billing formats and link them to projects being invoiced. The calculate billings process uses these formats to summarize and format invoice line items. Costpoint currently supports two types of Billing Formats: Govt 1035 Billing and Generic Billing formats. The 1035 format supports government invoicing format requirements. There are three types of 1035 formats: Cost, T&M, and Govt Form 1443 standard invoices. If you select a 1035 format for a project, no further initialization is necessary.  The Govt Form 1443 format should only be selected if your billing formula is Progress Payment.

If Generic Billing formats are needed, you must first initialize them in the Generic Billing Formats screen (Projects » Billing » Formats). This process involves identifying invoice line types (cost, units, hours etc.), and transaction groupings and lines. You also identify line items within primary break or subtotal groups. You link accounts to the lines where the account totals should be included. You can have direct costs shown on the lines alone or the line can include direct costs as well as burden, fee, and cost of money amounts. Additionally, you establish header information and the printing options for T&M and Unit Billing Formats. If burden is separately stated on a separate line, you can suppress the burden rate.

Once you have determined Generic Billing formats, you assign them to projects based on billing requirements. Invoice formats are assigned at the billing level of the project.  Any detail bills included in the Supporting Schedule Headers (Detail Bills) subtask can be printed using the invoice format selected for the billing level if you select the Include Detail Invoices check box in the Post Standard Bills screen (Projects » Billing » Post Billings). If the Govt 1035 Billing Format option is selected , the S_BILL_FRMT_TYPE column will be updated with a value of "1035" and the Billing Format Code will be set to null in the PROJ_BILL_INFO table. You can select a Cost, T&M, or Govt form 1443 formats, and the Government 1035 Type field will be updated in the PROJ_BILL_INFO table.

If you select a generic format, the S_BILL_FRMT_TYPE column in the PROJ_BILL_INFO table is updated with a value of "GENRIC."  The BILL_FRMT_CD column is updated with the generic billing code selected. You must also select the account level to which to costs should roll up. In this situation, the system uses the following predetermined billing format group numbers to group costs:

Costs are summarized and printed by these groupings at the account level specified. On a standard 1035, no line item detail is identified, with the exception of burden amounts. For burden amounts, costs are grouped by the combination of pool number and sequence number to arrive at line items. The pool and sequence number are concatenated to arrive at a unique line number. For example, three costs pools exist, with pool numbers of 1 (Fringe), 3 (Overhead), and 7 (G&A). The processing sequence number for Fringe is "1," for Overhead is "2," and for G&A "3." The line numbers created on the 1035 are 11, 23, and 37. A line is printed on the invoice for each pool amount, with a subtotal for total indirect costs.

For transactions, accounts at the level specified are identified with labor and non-labor groupings based on the function code assigned in the Account Group Setup table.

If a T&M 1035 format is selected, additional detail is provided for direct labor. Within the Direct Labor format group, additional line detail is generated. Lines are created for each unique combination of labor category and billing rate. For example, assume two labor categories exist for a given project: Project Manager and Senior Engineer. The billing rate for the Senior Engineer has been increased during the period covered by this invoice. Labor costs have been incurred by this labor category under both billing rates. In this situation, three lines will be printed on the invoice. The first contains the hours, billing rate, and billing amount for the Project Manager labor category. The second and third lines identify the hours, billing rates, and billing amounts for hours incurred under each of the billing rates for the Senior Engineer.

If a Generic Billing Format is assigned, then you must enter a format code in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). The billing format code in stored in the BILL_FRMT_CD column in the PROJ_BILL_INFO table. Costs are summarized by the groups and lines identified by that format. Charges at the account level are rolled up to their assigned lines. For groups assigned a Line Type of COST in the Generic Billing Formats screen (Projects » Billing » Formats), one line prints on the billing for each cost line. For groups assigned a Line Type of HOURS, additional breaks occur by labor category and billing rate. For groups assigned a Line Type of Units, breaks occur by CLIN/Catalog, Item, Revision, Price, and Sales Tax Code. So although one line may exist for a given billing format, if a line type of UNITS or HOURS is assigned, multiple lines are printed based on the break groups identified.

If no format group or line number is found for a billable amount, costs are assigned a group of OTHER and a line number of "0."  If you find this problem when you are reviewing your bills in the Edit Standard Bills screen, you can go to the Detail subtask and determine which accounts make up the OTHER line.  After you have this information, you can change your Generic Billing format to include the missing accounts.

When billings are computed, billing line and format information is stored in the Billing Edit Detail table. The program looks at the project and account to which transactions were charged. It then looks at the billing format that corresponds to the format code stored in the Project Billing Info table. It identifies the group, line number, and line type assigned to the account to which transactions were charged. The group, line number, and line type assigned to the account charged are stored in the Billing Edit Detail table for each billable amount. The group and line label are also stored. This facilitates recreation of an invoice, in that transactions previously billed and stored in Billing Detail History can be summarized by these fields.

Invoice Billing Formulas

When you add records to the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup), you must assign a billing formula to the record. Transaction-based formulas are those that include billings based on costs, loaded labor (T&M), or units. If you select a transaction-based formula, the Open Billing Detail table will be updated with transaction detail when you post journals; however, not all journal postings update the Open Billing Detail table. Only journals that contain transaction-based items update this table. Transaction-based journals include: Accounts Payable, Labor Distribution, Journal Entries, Cost Pools, and Units Usage.

In summary, the program looks to the Project Billing Info table at the level at which the invoice is posted. If a transaction-based formula exists, transaction-based journals will update the Open Billing Detail table. The journals update Open Billing Detail for this project and all of its related lower-level projects.

You can use three types of formulas in the calculation of billings.

  1. The first is a cost-based formula. Cost-based formulas burden direct costs with indirect costs and fee. Records stored in Billing Edit Detail are assigned a Transaction Type of COST in the Maintain Open Billing Detail screen (Projects » Billing » Prepare Billings). Burden and Cost ceilings for billing purposes are considered, and provisional rates are applied.

  2. The second type of formula bases calculations on hours multiplied by a loaded billing rate. The program multiplies hours from Open Billing Detail by billing rates stored in the Labor History table to arrive at billing amounts. Records stored in the Billing Edit Detail table are assigned a Transaction Type of HOURS. Ceilings on hours by Employee and Labor Category are considered.

  3. The third type of formula bases calculations on units multiplied by a designated unit price. The program multiplies units posted through unit usage by unit prices stored in the CLIN Price Schedule or Product Price Schedule tables. Records stored in Billing Edit Detail are assigned a Transaction Type of UNITS. Ceilings on units are considered.

The following sections describe the computations for each billing formula in detail. The billing formula is applied to all levels of the project that fall below the invoice level. The system will display an error message if you attempt to set up a billing record on the same project tree where a billing record has already been established. Use the following descriptions to evaluate the billing formula that meets the specifications of your project.

Cost Incurred Plus Fee on Cost

This transaction-based formula bills direct costs, burden applied to the direct costs, and a fee percent applied to both direct costs and burden. The system uses the direct costs in the OPEN_BILLING_DETL table to calculate the invoice. The system posts the direct costs to the OPEN_BILLING_DETL table when costs are posted to the general ledger. These direct costs are compared to any direct cost ceilings that have been set up in the CEIL_DIR_CST table for the project. The system will limit the amount of direct cost that is included in the calculation of the invoice if the amounts in OPEN_BILLING_DETL and BILLING_SUM exceed the direct cost ceiling amount in the CEIL_DIR_CST table. These ceilings will be evaluated only if S_RBA_CD in the CEIL_DIR_CST table is set to "A" or "B." This calculation results in allowable direct costs. 

The rates in the YTD Prov or Pd Prov column of the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup) are applied to the allowable direct costs and hours (if you are using hours-based pools). The column used depends on your selection of year to date or current period burdening methods in the Corporate Settings subtask of the Project Settings screen (Projects » Project Setup » Controls). If burden ceilings exist in the Project Burden Cost Ceilings screen (Projects » Project Setup » Project Ceilings), the system will compare them to the provisional rates in the Pool Rates subtask of the Cost Pools screen. The lower of these two rates will be used to calculate the burden that appears on the invoice. The result of this calculation is allowable burden (indirect) cost. Then the system applies the fee to the direct and indirect costs. The fee amount is stored in the Project Billing Info screen. 

If a fee override exists in the OVRIDE_FEE_ON_BURD table, it will be used to apply the burden on the direct and indirect costs.  This will happen only if the S_RBA_CD is B or A.  The last step in the calculation process is application of total project ceilings.  The Calculate Billings screen (Projects » Billing » Calculate Billings) checks for ceilings on Contract and Funded values for total project, cost, and fee. The system combines the total amount to be billed in the BILL_EDIT_DETL with the total amount billed in the BILLING_SUM table to compute the inception-to-date billed.  If the inception-to-date billed exceeds that ceiling, the excess is computed as an over ceiling amount and the total billing is reduced. The system will apply this ceiling only if it finds a code of B or A in the Project Total Ceilings screen (Projects » Project Setup » Project Ceilings).

Cost Incurred Plus Fee on Hours

This transaction-based formula bills direct costs, burden applied to the direct costs, and a fee on hours incurred.  The system uses the direct costs in the OPEN_BILLING_DETL table to calculate the invoice. The system posts the direct costs to the OPEN_BILLING_DETL table when costs are posted to the general ledger. The system compares these direct costs to any direct cost ceilings set up in the CEIL_DIR_CST table for the project.  The system will limit the amount of direct cost used in the calculation of the invoice if the amount in OPEN_BILLING_DETL and the amount previously billed in the BILLING_SUM table exceed the direct cost ceiling amount in the CEIL_DIR_CST table. These ceilings will be evaluated only if the S_RBA_CD in the CEIL_DIR_CST table is set to B or A.  This calculation results in allowable direct costs.

The rates in the provisional column of the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup) are then applied to the allowable direct costs and hours (if you are using hours-based pools). If burden ceilings exist in the CEIL_BURDEN_CST screen, the system will compare them to the provisional rates in the Pool Rates subtask of the Cost Pools screen. The lower of these two rates will be used to calculate burden that appears on the invoice. These ceilings will be evaluated only if the S_RBA_CD in the CEIL_BURD_CST table is set to B or A. The result of this calculation is allowable burden (indirect) cost. 

Next, the system applies the fee. The fee amount per hour that is to be multiplied by hours incurred is stored in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). The last step in the calculation process is application of total project ceilings. The Calculate Billings screen (Projects » Billing » Calculate Billings) checks for ceilings on Contract and Funded values for total project, cost and fee. The system calculates the total invoice, cost, and fee ceilings by summing the calculated amounts on the current invoice and adding the previous invoice amount from the BILLING_SUM table. This results in inception-to-date total, cost, and fee billed. If the application finds a code of B or A, the ceiling is applied. 

Enter Bill Manually

Use this formula if you plan to enter your invoice using the Edit Project Product Bills, Edit Manual Bills, or Edit Milestone/Percent Complete Bills screens (all in Projects » Billing » Edit Billings). If you select this formula, no data will be posted to the OPEN_BILLING_DETL table. You must set up the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) for your project even if you will be selecting a manual invoice. You cannot enter a record in the manual billing screens unless there is a record for the project in the Project Billing Info screen.  For more information on manual bills, see the individual screen documentation.

Loaded Labor Rate W/Fee Plus Non-Labor W/Burden W/Fee

"LLR W/Fee Plus Non-Labor W/Burden W/Fee" is a Time & Materials or hours-based formula. To calculate the labor portion of the invoice, this formula multiplies allowable hours by loaded labor rate and applies the fee to the total. The system determines the allowable hours by summing the hours in the OPEN_BILLING_DETL table and comparing the hours by PLC to the ceilings in the Project Total Ceiltings, Project Hours Ceilings, Project Employee Hours Ceilings, and Project Vendor Hours ceilings screens (all in Projects » Project Setup » Project Ceilings). If the inception-to-date hours for the project are less than the ceilings entered in the ceilings screens, the system will calculate the hours as allowable. The hours in the OPEN_BILLING_DETL table are inserted during the labor posting processes. The allowable hours are multiplied by the billing rate in the OPEN_BILLING_DETL table. The billing rate is inserted into the OPEN_BILLING_DETL table by the Load Labor Rates process (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The allowable hours multiplied by the billing rate are then multiplied by the labor fee entered in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup).  Non-Labor costs or hours (if you are using hours-based pools) in the OPEN_BILLING_DETL table are multiplied by provisional rate in the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup) to obtain the burden amount. The system calculates the fee by multiplying the non-labor plus burden by the non-labor fee rate found in the Project Billing Info screen.  

Labor Cost Times Multiplier plus Non-labor times Multiplier (Cost)

This formula's calculation is similar to a loaded labor rate. When you use this formula, the system multiplies the direct cost transactions in the Maintain Open Billing Detail screen (Projects » Billing » Prepare Billings) by the labor multiplier rate entered in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). Project Labor Categories are not necessary for this formula. You can customize the multiplier rate for specific accounts in the Maintain Multiplier Overrides screen (Projects » Project Setup » Revenue Setup). Similar to a loaded labor rate, the multiplier rate is used in lieu of any burdens or fees. The multiplier rate is applied to direct costs only; burdens and fees are not subject to the multiplier calculation. However, the calculated multiplier amounts are classified as FEE Transaction Types in the Edit Standard Bills (Projects » Billing » Edit Billings) and Maintain Billing History (Projects » Billing » Billing History) screens. Note that you cannot use a multiplier rate greater than "9.9999," which equates to "999.99%." The billing format should look like a "Loaded Labor Rate" format (for example, HOURS line types for labor accounts, COST line types for non-labor accounts). Similarly, the system summarizes the non-labor costs from the OPEN_BILLING_DETL table and multiplies the result by the non-labor multiplier from the Project Billing Info screen. 

Labor Cost times Multiplier plus Non-labor times Multiplier (Hours)

This billing formula's calculation is similar to a loaded labor rate formula. When you use this formula, the system multiplies labor and non-labor amounts by markup rates entered in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). Similar to a loaded labor rate, the markup rate is used in lieu of any burdens or fees. The system applies the markup rate to direct costs only; burdens and fees are not subject to the markup calculation. However, the calculated markup amounts are classified as "FEE" Transaction Types in the Edit Standard Bills (Projects » Billing » Edit Billings) and Maintain Billing History (Projects » Billing » Billing History) screens. To use this formula, you must enter Project Labor Categories (PLCs) with all labor hours. The system calculates the labor portion of this formula by multiplying the direct labor hours by the labor rate in the OPEN_BILLING_DETL table. The A rate type is used for each PLC. Even if a PLC is assigned another rate type, the program will calculate labor using the A rate type. After multiplying the hours by the PLC A rate type, the system multiplies the result by the labor multiplier rate in the Project Billing Info screen. The system calculates the non-labor portion of this formula by multiplying the non-labor amounts from the OPEN_BILLING_DETL table and by the non-labor markup rate found in the Project Billing Info screen. You can customize the markup rate for specific accounts in the Maintain Multiplier Overrides screen (Projects » Project Setup » Revenue Setup). Note that you cannot use a markup rate greater than "9.9999," which equates to "999.99%." The billing format should look like a "Loaded Labor Rate" format (for example, HOURS line types for labor accounts, COST line types for non-labor accounts).

Loaded Labor Plus Non-labor Plus Burden On Non-labor

This Time and Materials formula uses loaded labor rates, non-labor costs, and burden on non-labor costs to calculate the invoice. You must use Project Labor Categories (PLCs) in all labor entry when using this formula. The labor rates used with this formula contain all profit and markup amounts because no fee or additional markup is allowed with this formula. The system calculates the labor portion of the bill by multiplying the hours incurred in the OPEN_BILLING_DETL table by the labor rate also stored in the OPEN_BILLING_DETL table. The labor rates are loaded in the OPEN_BILLING_DETL table by the Load Labor Rates process (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The non-labor portion of the bill contains non-labor amounts from the OPEN_BILLING_DETL table. The system calculates the burden by applying the provisional rates in the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup) to the non-labor costs or hours (if you are using hours-based pools). 

Loaded Labor Plus Non-labor w/Burden w/Fee

This time and materials formula uses loaded labor rates, non-labor costs, burden on non-labor costs, and fee on non-labor costs to compute the invoice. This formula requires the use of PLCs in all labor entry.  Since there is no additional markup on the labor costs, the labor rate should cover all profit and indirect cost amounts. The Calculate Billings screen (Projects » Billing » Calculate Billings) multiplies the hours in the OPEN_BILLING_DETL table by the associated labor rate for the PLC. The labor rates are loaded into the OPEN_BILLING_DETL table by the Load Labor Rates screen (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The system calculates the non-labor portion of the bill by extracting the non-labor amounts from the OPEN_BILLING_DETL table. These non-labor costs are burden with the provisional rates in the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup). An additional fee is added to the non-labor costs.  You can enter the desired fee in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup).

Loaded Labor Rate

This time and materials formula uses loaded labor rates only. There is no pass-through of non-labor costs, fees, or burdens. This formula requires PLCs with all labor entry. The labor rates assigned should be enough to cover all profit and indirect costs. To calculate the bill, the system multiplies the labor hours incurred by the loaded labor rates. The hours are taken from the OPEN_BILLING_DETL table. The hours are inserted into the OPEN_BILLING_DETL table by the posting programs. The loaded labor rates are inserted into the OPEN_BILLING_DETL table by the Load Labor Rates process (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings).   

Loaded Labor Rate Plus Cost Incurred On Non-labor (T&M)

This time and materials formula uses loaded labor rates and non-labor cost pass-through. It does not apply markup, fees, or burden to the non-labor costs. This formula requires the use of PLCs in all labor entry. The labor rates assigned to the PLCs should include any fees or profit desired. The Calculate Billings screen (Projects » Billing » Calculate Billings) multiplies the hours incurred from the OPEN_BILLING_DETL table by the loaded labor rates. The incurred hours are inserted into the OPEN_BILLING_DETL table by the posting programs. The loaded labor rates are inserted into the OPEN_BILLING_DETL table by the Load Labor Rates process. The system calculates the non-labor portion of the bill by inserting the non-labor costs in the OPEN_BILLING_DETL table into the BILLING_EDIT_DETL table. 

Loaded Labor Rate w/Burden w/Fee plus Non-labor w/Burden w/Fee

This time and materials formula uses loaded labor rates with burden and fee as well as non-labor amounts with burden and fee. This formula requires the use of PLCs in all labor entry.  Since burden and fee are added to both labor and non-labor costs, the loaded labor rates can include only the desired profit. The Calculate Billings screen (Projects » Billing » Calculate Billings) multiplies the hours incurred from the OPEN_BILLING_DETL table by the loaded labor rates. The hours incurred are inserted into the OPEN_BILLING_DETL table by the posting programs. The loaded labor rates are inserted into the OPEN_BILLING_DETL table by the Load Labor Rates process (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). Burden rates for both labor and non-labor are taken from the Pool Rates subtask of the Cost Pools screen (Projects » Cost and Revenue Processing » Cost Pool Setup). Enter the fee amount for both labor and non-labor in the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup). All non-labor costs are from in the OPEN_BILLING_DETL table. There are also inserted into this table by the posting programs. 

Manual Bills with Unbilled Detail

When you use this formula, transactions populate Open Billing Detail even though the formula is a fixed formula. If you select this option, you will probably do a Manual bill, Milestone bill, or Project Product bill for this type of project. With this formula, you can use the Adjustments in Open Billing Detail screen (Projects » Billing » Prepare Billings) to transfer or write off transactions. Because transactions populate the Maintain Open Billing Detail screen (Projects » Billing » Prepare Billings), you can make adjustments for fixed-price billings. You can also compute billable value on unbilled transactions by selecting the Transactions with zero bill rate check box in the Calculate Billings screen (Projects » Billing » Calculate Billings).

Progress Payment

See Special Topic BL-6 for more information on this billing formula.

Rate Schedule Times Multiplier Plus Non-Labor Cost Times Multiplier

This formula is similar to loaded labor. This flexible, transaction-based formula allows you to bill labor using different types of hourly rates on the same invoice. The labor calculation consists of the following:

This formula requires the use of PLCs in all labor entry. The allowable hours are taken from the OPEN_BILLING_DETL table. The loaded labor rates are inserted during the Load Labor Rates screen (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings). The non-labor amounts are taken from the OPEN_BILLING_DETL table. The multiplier rates are stored in the Project Billing Info screen.

Unit Price Transactions Only

This formula produces an invoice that contains only units to be billed. If you select this formula, the OPEN_BILLING_DETL table will not be populated with transactions from any of the posting programs except Post Unit Usage (Projects » Billing » Units Usage).  In order for the Post Unit Usage screen to populate the table, you must select the Post To Billings check box in the Enter Unit Usage screen (Projects » Billing » Units Usage) when entering the units. For more information on billing units, please see Billing Special Topic BL-5. You should also use this formula if you wish to bill scheduled bills only.

Calculate ACRN Billings screen (Projects » Billing » Calculate Billings)

Use this screen to calculate your ACRN bills, using information you have set up in the Maintain ACRN Bills screen and the standard bill amounts from the Calculate Billings screen (Projects » Billing » Calculate Billings).  Once you have calculated ACRN bills, you can review them in the Maintain ACRN Bills screen (Projects » Billing » Billing Master) or the Print ACRN Billing Edit Report (Projects » Billing » Print Billings).

Calculate ACRN bills after posting all transactions for the period to be billed and running the Calculate Bills application.

Set up the following applications before executing the Calculate ACRN Bills screen:

  1. Set up project information in the Basic Info screen (Projects » Project Setup » Project Master).

  2. Set up the Project Billing Info screen (Projects » Billing » Billing Master or Projects » Project Setup » Revenue Setup) with a transaction-based formula.  You cannot use Enter Bill Manually, Manual Bills with Unbilled Detail, or Progress Payment.

  3. Set up an active record in the Maintain ACRN Bills screen at the same project level as in the Project Billing Info record.  Select a Billing Requirement and Calculation Method.  Enter at least one active row in the table window with an ACRN or ACRN/Line Item value and its associated ACRN Value. If Billing Requirement is ACRN Only w/Account Mapping or ACRN/Line Item w/Account Mapping, enter the appropriate accounts in the Accounts subtask.

  4. Post transactions for the given period.

  5. Run the Update Cash Basis Information screen (Projects » Billing » Prepare Billings), if necessary.

  6. Run the Load Labor Rates screen (Projects » Cost and Revenue Processing » Revenue Processing or Projects » Billing » Prepare Billings), if necessary.

  7. Run the Calculate Bills screen.

  8. Make necessary edits to standard bills in the Edit Standard Bills screen (Projects » Billing » Edit Billings).

  9. Run the Calculate ACRN Billings screen.

Access to this screen is controlled by the Enable ACRN Billing check box in the Billing Settings screen (Projects » Billing » Controls). If this check box is selected, users with the appropriate rights can calculate ACRN bills for active ACRN projects set up in the Maintain ACRN Bills screen (Projects » Billing » Billing Master).

Use of the Calculate ACRN Billings screen is not mandatory, but is beneficial to government contractors subject to Government Requirement, DFARS 204.71 Uniform Contract Line Item Numbering, specifically, the standard payment instructions at PGI 204.7108(d)(1) through (6).  This requirement places an obligation upon contractors to invoice at a Contract, Contract Line (CLIN), Subcontract Line (SLIN), Exhibit Line or an Accounting Classification Reference Number (ACRN) level.