End-of-Project Invoice Checklist
An end-of-project invoice checklist is a structured review you run before issuing the final invoice on a project — confirming that all hours are logged, all deliverables are handed off, all approved extras are included, and the invoice matches what the client expects. Running the checklist takes under 30 minutes. Skipping it takes significantly longer when the client disputes the total.
Why final invoices go wrong
The failure modes at project end are predictable:
Unlogged hours. Someone on the team handled an extra revision call, a quick client question, a deployment issue. It was never logged because it felt too small to track. Across a project, these gaps add up.
Approved extras that never made it to the invoice. A client requested a feature outside the original scope; you said yes and charged for it. But the invoice only shows the original line items because no one added the extra. You have done the work and not billed it.
Deliverables that weren't formally signed off. You hand over the files and send the invoice. The client comes back two weeks later claiming the project isn't finished. If there's no sign-off step, the dispute is your word against theirs.
Expenses that weren't tracked. Stock assets, software subscriptions bought for the project, subcontractor fees — all legitimate costs, all billable if the contract allows it. Missing them on the final invoice is leaving money on the table.
Invoice total that surprises the client. Usually caused by all of the above: the client expected a number based on the original estimate, but the invoice is larger because of extras and expenses they half-remember approving.
The end-of-project invoice checklist
Run this before the invoice goes out. In order:
- 1
Pull the full time log for the project
Export or review all logged hours from kickoff to now, sorted by date. Look for gaps: are there weeks with suspiciously low hours? Days where work happened but no entries exist? Fill gaps before closing the log.
- 2
Confirm all deliverables are complete and handed over
Match each deliverable against the original scope. Everything promised should be in the client's hands or formally signed off. If something is outstanding, note it explicitly in the invoice as remaining work rather than treating the project as closed.
- 3
Review the scope change record
Go through every approved change request or scope addition since kickoff. Each approved extra that was not in the original contract should appear as a line item. If you approved extras verbally without written confirmation, decide now whether to include them with a note or absorb the cost.
- 4
Add all reimbursable expenses
Stock assets, licensed fonts, software purchased for the project, subcontractor invoices passed through to the client. Match each against the contract's expense terms. If the contract is silent on expenses and you have not pre-agreed them, do not add them to this invoice.
- 5
Calculate the outstanding balance
Start with the agreed project fee, subtract any deposit or retainer payments already received, add approved extras and reimbursables. The result is the final invoice total.
- 6
Verify bank or payment details haven't changed
If you issued the deposit invoice months ago, confirm the payment details on both ends are still current before sending the final invoice.
- 7
Set payment terms that fit the project end
Final project invoices typically warrant shorter terms than ongoing retainers. Net 7 or Net 14 is common at project close. State the due date explicitly on the invoice, not just "Net 14" — "Due by [date]" removes ambiguity.
- 8
Send with a brief project summary
A two or three sentence cover note listing what was delivered signals that you know what you built, reminds the client of the scope they approved, and creates a natural opening for a referral or retainer conversation.
How to handle common late-invoice disputes
"I didn't approve that extra."
If you have a written record (email, message thread, change order), share it. If you don't, absorb it and start using written approvals from now. The pain of absorbing one undocumented extra usually cures informal approval practices.
"The total is higher than I expected."
Walk through the invoice line by line. "This line is the original project fee. This line is the [specific extra] we added on [date]. This line covers the [expense] we discussed in the [email/call]." If the extras were legitimately approved, the conversation should end there.
"Can I pay this off in instalments?"
This request at project end usually means the client is in a cash squeeze. You can agree to it — just document it. A verbal "I'll pay half now, half next month" that never materialises is worse than not having the conversation. State the instalment schedule in a follow-up email.
"Can you wait until we review the deliverables?"
If deliverables weren't formally signed off before you sent the invoice, this is a reasonable ask. The fix is in checklist step 2 — sign off before invoicing, not after.
What the final invoice should contain
A clean end-of-project invoice includes:
- Invoice number and date
- Client name and address
- Your business name and address
- Project description (one line: what was built or delivered)
- Line items: original project fee, itemised approved extras, reimbursable expenses — each on its own line with a brief label
- Credits: any deposits or prior payments, shown as a deduction
- Total due and payment due date
- Payment instructions: bank transfer details, or a payment link if you use one
Keep it clean. A final invoice with 20 line items and no grouping is harder to audit and more likely to generate questions. Group logically: project work, extras, expenses, credits.
How Ascend closes out a project
The gap that makes end-of-project invoicing painful is usually the same gap: hours tracked in one place, project scope and changes in another, invoicing in a third. When those three records don't match, the audit before the final invoice is manual and error-prone.
In Ascend, time is logged against the client record as work happens. When the project closes, the hours are already there — no export, no spreadsheet reconciliation. The final invoice pulls from the same record that holds the time log. Scope-change tracking and reimbursables can be noted against the same project via the Ascend database.
Ascend is in early access. The free tier covers one client end to end — useful for testing this workflow on your next project closeout.
See how time tracking and invoicing connect in Ascend.
Frequently asked questions
What should an end-of-project invoice include?+
The original project fee, itemised approved scope additions, any reimbursable expenses, less any deposits or payments already received. Each major item should be its own line with a brief description. Include the due date explicitly — not just payment terms — and payment instructions.
When should I send the final project invoice?+
After deliverables have been handed over or formally signed off, and after you have reviewed the full time log and scope change record. Sending before sign-off invites disputes about whether the project is actually finished.
How do I invoice for scope changes at project end?+
Each approved scope change should appear as a separate line item on the final invoice, with a brief description of the work and the agreed fee or hourly total. If the change was verbal and undocumented, decide whether to include it with a note or absorb it — then implement a change-request process for future projects.
What payment terms should I use for a final project invoice?+
Shorter than your standard retainer terms. Net 7 or Net 14 is common at project end. State the actual due date on the invoice, not just the terms, so there is no ambiguity about when payment is expected.
What do I do if the client disputes the final invoice?+
Walk through the invoice line by line with documentary backup: the original contract, written approval for each extra, expense receipts. If you can't support a line item in writing, consider whether to hold it or absorb it and move on. Most disputes resolve quickly when records are clean.
How do I handle outstanding work at project close?+
If something is genuinely incomplete, note it on the invoice as remaining work — either as a pending line item or in the invoice description. Do not invoice for work that is not done, and do not obscure that work remains. Being explicit prevents the invoice from being treated as acceptance of a finished project when it is not.
Next step
How to Transition a Client from Project to Retainer
The cover note on a closed project is the natural opening for the retainer conversation. Here's how to make the move.
Close every project with a clean record.
Ascend logs time against the client as the work happens and generates the final invoice from the same record — no reconciliation required. The free tier covers one client end to end.
Start with Ascend free