A charge code should tell the employee where the work belongs
A charge code is the identifier an employee selects to assign labor to a direct contract activity, intermediate objective, or indirect activity. The code is not merely a label for invoicing. It is an input to labor distribution, project reporting, payroll reconciliation, cost accumulation, and—in some contracts—voucher support.
DCAA guidance says employees should have a maintained listing of project numbers and descriptions in the work-authorization system. The nature of the work determines the proper distribution of time, not the availability of funding, the contract type, or a manager's preferred budget result.
Separate the accounting structure from the employee-facing list
Finance may need contract, task order, CLIN, project, organization, labor category, and general-ledger dimensions. An employee should see the smallest unambiguous list needed to record the work. Exposing hundreds of similar codes without descriptions transfers system-design work to the person least able to resolve it.
Keep the underlying dimensions available for reporting, but give the employee a readable name, customer or program context, authorized period, and enough description to distinguish similar work. Search, favorites, and recent codes reduce clicks; they do not replace clear authorization.
Define direct and indirect codes consistently
FAR 31.202 says direct costs of a contract should be charged directly to that contract, and costs identified with other final cost objectives should not be moved to the government contract. FAR 31.203 describes indirect costs as costs remaining after direct costs are identified, accumulated in logical groupings and allocated using an appropriate base.
Your accounting policy determines the consistent treatment in like circumstances. A software vendor should not invent that policy. Configure time codes only after the controller or qualified GovCon accounting adviser has defined direct activities, indirect pools, service centers where relevant, and the treatment of paid leave, training, business development, bid and proposal, and administration.
Never use a different code because funding is low
A funding warning is a management signal, not permission to move labor. If an employee performed work for a nearly exhausted CLIN, the time record should reflect that work. Management then decides whether to stop work, seek authorization, revise staffing, or take another contractually appropriate action.
The dangerous pattern is a message such as ‘use the other task until funding arrives.’ That instruction disconnects the labor record from the work performed. Keep funding alerts visible to program and finance leaders, while keeping the employee's charge-code decision tied to actual work.
Choose the right level of contract detail
SF 1408 asks whether the accounting system identifies costs by contract line item and unit when the proposed contract requires it. That does not mean every contractor must force every employee to select every financial dimension on every entry.
Map the employee-facing code to the level at which labor must be accumulated and managed. If funding and reporting operate at the CLIN or task level, a contract-only time code may hide an exhausted workstream. If the contract does not require lower-level identification, unnecessary selections create errors without adding control.
Control code creation, change, and closure
Every active code should have a purpose, owner, effective period, and reporting mapping. Use a short approval process for new codes, test the accounting and project mappings, communicate the change, and close the code when authorization ends.
Closing a code should prevent new entries without erasing historical records. If late time or a valid correction must reach a closed objective, route an authorized exception that preserves the reason and approval instead of reopening the code for everyone.
Charge-code warning signs
Review the configuration and actual usage every period. These patterns deserve investigation because they often reveal unclear authorization or a weak employee experience.
- Generic codes such as ‘project work’ that combine several cost objectives
- Employees with access to every contract and indirect code
- Duplicate codes with nearly identical names and no description
- Time moved after a budget review without a documented correction reason
- Codes that remain active after a project, task, or employee authorization ends
- Frequent use of an administrative holding code that finance reallocates later
- Different direct-versus-indirect treatment for the same activity in like circumstances
What the system should be able to show
For a selected employee and date, retrieve the codes they were authorized to use, the description visible at entry, the time recorded, later authorization changes, and any correction that moved labor. For a selected code, retrieve its owner, active period, assigned people, recorded hours, and reporting mapping.
That evidence supports the process; it does not prove the accounting treatment is correct. Review the final code structure and allocation policy with people responsible for the complete accounting system.