# Project Milestone Billing Worksheet for Machine Builders

> Source: https://netray.co/tools/project-milestone-billing-worksheet-machine-builders
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Plan the payment schedule of a machine project with percent per milestone, retention, tax, cash due and margin by milestone.

## Category

cost-finance

## Industry

Industrial Machinery

## Audience

- Controller
- OEM project manager
- Finance manager
- Sales manager

## Tool

**Kind:** worksheet

**Mode:** editable

**Currency:** $

**Columns:**

#### Milestone

**Key:** milestone

**Type:** text

#### Trigger

**Key:** trigger

**Type:** select

**Options:**

- Order acceptance
- Design approval
- Material received
- FAT passed
- Shipment
- Delivery
- SAT passed
- Warranty end

#### Planned date

**Key:** date

**Type:** date

#### Invoice amount

**Key:** amount

**Type:** number

**Format:** currency

#### Retention %

**Key:** ret_pct

**Type:** number

**Unit:** %

#### Retention held

**Key:** retention

**Type:** number

**Expr:** amount * ret_pct / 100

**Format:** currency

#### Tax %

**Key:** tax_pct

**Type:** number

**Unit:** %

#### Tax

**Key:** tax

**Type:** number

**Expr:** amount * tax_pct / 100

**Format:** currency

#### Cash due

**Key:** payable

**Type:** number

**Expr:** amount - retention + tax

**Format:** currency

#### Cost incurred by milestone

**Key:** est_cost

**Type:** number

**Format:** currency

#### Margin earned

**Key:** margin

**Type:** number

**Expr:** amount - est_cost

**Format:** currency

**Rows:**

**Milestone:** Down payment

**Trigger:** Order acceptance

**Date:** 2026-11-02

**Amount:** 200000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 15000

**Milestone:** Design approval

**Trigger:** Design approval

**Date:** 2027-01-15

**Amount:** 150000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 120000

**Milestone:** Pre-shipment after FAT

**Trigger:** FAT passed

**Date:** 2027-05-10

**Amount:** 350000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 340000

**Milestone:** Delivery to site

**Trigger:** Delivery

**Date:** 2027-06-05

**Amount:** 150000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 60000

**Milestone:** Acceptance after SAT

**Trigger:** SAT passed

**Date:** 2027-07-20

**Amount:** 100000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 40000

**Milestone:** Retention release

**Trigger:** Warranty end

**Date:** 2028-07-20

**Amount:** 50000

**Ret pct:** 0

**Tax pct:** 0

**Est cost:** 5000

**Totals:**

#### Contract value

**Key:** amount

**Agg:** sum

**Format:** currency

#### Retention held

**Key:** retention

**Agg:** sum

**Format:** currency

#### Tax

**Key:** tax

**Agg:** sum

**Format:** currency

#### Cash due

**Key:** payable

**Agg:** sum

**Format:** currency

#### Total cost

**Key:** est_cost

**Agg:** sum

**Format:** currency

#### Total margin

**Key:** margin

**Agg:** sum

**Format:** currency

**Summary:**

#### Gross margin on contract

**Key:** gm_pct

**Expr:** if(gt(sum_amount,0), sum_margin / sum_amount * 100, 0)

**Format:** percent

**Primary:** true

#### Average milestone size as percent of contract

**Key:** first_pct

**Expr:** if(gt(sum_amount,0), avg_amount / sum_amount * 100, 0)

**Format:** percent

**Notes:** Enter milestone amounts that sum to the contract value. Use the retention column only if the contract holds back a percentage on a milestone; a separate retention release row (as in the example) is an alternative. Compare cost incurred against billed amounts to spot milestones that leave you cash-negative.

## Content

**Intro:** Machine projects run for months and cost is incurred far ahead of the final payment. This worksheet lays out the billing milestones next to the cost you expect to have incurred, so you can see cash exposure and margin by milestone before you sign.

**Sections:**

#### How to use the worksheet

**Body:** List each billing milestone from the contract in order, with its trigger, planned date and invoice amount. Set retention and tax percentages where they apply, and enter the cost you expect to have incurred by that point. The sheet computes retention held, tax, cash due and margin earned for each row, plus totals and the overall gross margin. Edit the dates when the project schedule changes and export to Excel for finance and the project manager.

**Bullets:**

- Match trigger names to the contract wording exactly.
- Use cumulative cost to date if that is easier; keep it consistent.
- Enter tax only if it is billed on the invoice in your jurisdiction.
- Add rows for variation orders as they are approved.

#### Designing the payment schedule

**Body:** A common pattern for custom machinery is a down payment at order, a design approval milestone, a larger payment after FAT or before shipment, and a final payment after site acceptance, sometimes with a retention released after warranty. The goal is to keep cumulative billing at or above cumulative cost so the customer finances the project and not you. Compare the billed total against the cost incurred at each milestone: a negative gap means you are funding the project, which has a cost of money.

#### Triggers and evidence

**Body:** Define each trigger with evidence: a signed design approval, a FAT report, a shipping document, a SAT certificate. Disputes about whether a milestone was reached are the most common reason payments are late. For milestones that rely on the customer, such as site readiness, include a long-stop date after which the invoice may be issued anyway. In an ERP, milestone billing plans in sales or project modules automate invoice creation when the milestone is confirmed.

#### Common mistakes

**Body:** The usual errors are back-loading payments so that most cash arrives after SAT, accepting an open-ended acceptance clause, and forgetting that the retention is revenue you may not collect for a year or more. International contracts add letters of credit, bank guarantees and currency risk, all of which have cost. Ignoring sales tax or withholding tax timing can also create unpleasant surprises. Review the schedule with finance before it goes into the proposal.

**Cta:** If milestone invoices are created manually from spreadsheets, Netray can help connect project status in your ERP to billing plans so invoices follow evidence.

**Faq:**

#### What is a typical milestone split for a custom machine?

**Answer:** There is no standard, but a common structure is 20 to 30 percent at order, 30 to 40 percent on design approval or material milestones, 30 to 40 percent at FAT or shipment, and the rest at acceptance. Retention of 5 to 10 percent is often held until after warranty. Always negotiate by cash exposure.

#### How is retention different from a deposit?

**Answer:** A deposit is paid in advance to fund the project. Retention is part of the contract value held back by the customer until a condition is met, usually acceptance or the end of warranty. Retention is a receivable at risk, so track it separately and consider a bank guarantee in exchange.

#### What if the customer delays the milestone?

**Answer:** Include contract terms that allow invoicing after a long-stop date when the delay is caused by the customer, and record the delay. Without such terms, project cost keeps accruing while billing waits. Keep evidence of requests and notices in case of a claim.

#### Can ERP automate milestone billing?

**Answer:** Most ERPs offer billing plans or project milestones that create invoices when a milestone is released. The work is in defining triggers and approvals so release is controlled. Start by mapping your contract milestones to the ERP's billing plan or project task structure.

## Search terms

milestone billing template, project milestone payment schedule, progress billing worksheet excel, machine builder payment terms template, milestone invoicing schedule, equipment payment milestones FAT SAT, contract payment schedule template, retention billing worksheet

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
