# Line item coding in Sage 300 for builders

Sage 300 has line item coding built in. A builder's job cost report is only right if every A/P invoice reaches the correct project and GL segment or optional field. One wrong job code moves cost from one project to another and hides a loss.

## Why it matters for builders

- One supplier invoice often covers several jobs. A hardware or hire statement may carry 15 lines for 6 different projects.
- Subcontractor claims mix labour, materials, variations and retention. Each part needs its own code and GST treatment.

## For builders in Sage 300

- Tick Project and Job Costing on the invoice and give every detail a contract, project and category. An invoice is either all job related or all not job related. Split a bill that mixes job costs and overheads into two invoices.
- Each job detail has a billing type. It tells Project and Job Costing whether to bill the cost on to the customer. You can change it only on billable projects that use an Item invoice type. Cost plus projects set it for you.
- Posting a job related invoice updates the project. It also journals Work-In-Progress against Payables Control in General Ledger.
- If you hold back retainage, enter it on each detail with a percentage or amount plus the retention period. The Retainage option shows only when Retainage Accounting is turned on for Accounts Payable.

## What Sage 300 does on its own

On the Details tab of A/P Invoice Entry each line takes a G/L account, distribution code or distribution set. The vendor group sets the default method. Tax is distributed on the Taxes tab and the batch will not add until Undistributed Amount is zero.

- Manual coding.
- Vendor group defaults set one method per group, with per-vendor overrides.

Distribution codes and distribution sets save a repeatable multi-account split.

What you need and the setup steps: https://www.pulsify.tech/line-item-coding-for-sage-300/

## Example

Example Hire Co sends one invoice for plant hire used on two jobs.

- Excavator 5 tonne, job 214, 4 days: $2,000.00 (Coded to job 214, cost code 3100 plant hire)
- Scissor lift, job 188, 2 days: $900.00 (Coded to job 188, cost code 3100 plant hire)
- Fuel and cleaning fee, job 214: $180.00 (Coded to job 214, cost code 3190 sundries)

Each line is coded to its own job and cost code, so job 214 shows $2,180 of cost and job 188 shows $900 before GST.

## Common mistakes

- Coding a whole invoice to one job to save time, then correcting it at month end.
- Using different cost codes for the same type of cost on different jobs, so job reports cannot be compared.

## Step-by-step guides for Sage 300

- How to enter a vendor invoice with line items in Sage 300: https://www.pulsify.tech/how-to/enter-a-supplier-bill-with-line-items-in-sage-300/
- How to code one A/P invoice to several GL account codes in Sage 300: https://www.pulsify.tech/how-to/code-one-bill-to-several-accounts-in-sage-300/
- How to set a default GL account for each vendor in Sage 300: https://www.pulsify.tech/how-to/set-a-default-account-for-each-supplier-in-sage-300/
- How to bulk change account codes on vendor invoice records in Sage 300: https://www.pulsify.tech/how-to/bulk-change-account-codes-on-bills-in-sage-300/
- How to code a vendor invoice with mixed GST lines in Sage 300: https://www.pulsify.tech/how-to/code-a-bill-with-mixed-gst-lines-in-sage-300/

## What Pulsify adds

Pulsify reads each line and suggests its GL account and tax class and tax authority from how that vendor was coded before. Pulsify connects to Sage 300. We set up the connection for you. More: https://www.pulsify.tech/automated-line-item-coding/

## Common questions

### Can a Sage 300 invoice mix a job cost and an office cost?

No. The details on one invoice must be all job related or all not job related, so enter two invoices. Every job detail needs a contract, project and category. Posting then updates the project and the Work-In-Progress account.

### Should retention be coded separately?

Yes. Keep retention held on its own line or account so you can see how much you owe each subcontractor and release it at practical completion. Mixing it into the cost line hides the balance.

### Can Sage 300 split one invoice across several GL accounts?

Yes. Add one detail line per account or distribution code on the Details tab. The invoice cannot be added until Undistributed Amount is zero.

## Sources

- https://cdn.na.sage.com/docs/en/customer/300erp/2023/open/Sage300_AccountsPayable_UserGuide.pdf
- https://www.ato.gov.au/businesses-and-organisations/preparing-lodging-and-paying/reports-and-returns/taxable-payments-annual-report/work-out-if-you-need-to-lodge-a-tpar/building-and-construction-services

Source: https://www.pulsify.tech/line-item-coding-in-sage-300-for-builders/ (last checked 2026-10-19)
