NeatDue

Invoice template for developers

Bill software work the way it is actually scoped — by the hour, by fixed fee, or by milestone — with line items a non-technical client can approve. Edit it below and export the PDF.

From (you)

Bill to

Items

Free PDFs include a “Made with NeatDue” watermark.

Preview

INVOICE

DEV-2026-001

Bill to

Issue Date:Sep 6, 2026Due Date:Sep 13, 2026
ItemQtyRateAmount
Backend API — milestone 2 of 4: authentication and billing1$3,200.00$3,200.00
Deployment support and code review6$95.00$570.00
Subtotal$3,770.00
Total Due$3,770.00

Notes

Milestone invoiced on client acceptance of the linked deliverable. Payment terms: net 15. Hourly work is billed in 15-minute increments and logged in the shared tracker.

Made with NeatDue

Want to reuse this next month?

Create a free account to save this invoice, keep clients on file, and skip the re-typing. Your draft comes with you.

Create free account

Developer invoices go wrong in two predictable ways: the client cannot tell what they are approving because every line is jargon, or a milestone gets invoiced before anyone agreed it was finished. Both are avoidable with a bit of structure.

Pick a billing model and make the invoice match it

Hourly. Show the period, the total hours, and the rate. Attach or reference a time log the client can open. Bill in small increments — 15 minutes is standard — and round consistently. Hourly is honest about uncertainty, but it caps your income at your available hours.

Fixed fee. One deliverable, one price, agreed before you start. The invoice can still list the components so the client sees the shape of the work, but the number does not move because you were fast or slow.

Milestone. A fixed-fee project cut into stages, each with its own acceptance criteria and its own payment. This is the model most worth defaulting to for anything longer than a couple of weeks: you are never more than one milestone out of pocket, and the client sees progress tied to money.

Retainer. A recurring block of capacity — hours or a scope of support — billed on a fixed date each month. State the cap, the overage rate, and the rollover rule.

Write outcomes, not tasks

The person approving your invoice is often not the person you talk to about code. Give them lines they can evaluate: "Checkout flow live in production", "Search returns results in under 200ms", "Admin can export a CSV of orders". Your branch names and pull requests hold the detail; the invoice holds the result.

Tie every milestone to an acceptance

For each milestone, the contract should say what has to be true for it to count as delivered — a feature demoable on staging, a test suite passing, a document signed off. When that condition is met, get a short written confirmation, then invoice with the milestone named and dated. If you invoice on your own say-so and the client disagrees, you are now negotiating with your own money on the table.

Handle expenses and third-party costs separately

Cloud bills, paid APIs, font or asset licences, and contractor time you are passing through belong on their own lines with documentation, not inside your fee. Mark clearly whether a cost is billed at face value or with a handling margin, and agree that in advance.

Set terms that fit a small shop's cash flow

Net 15 is a reasonable default for independent developers; net 30 is common with larger clients and worth pricing in. Whatever you choose, write it as a date, name any late fee, and for milestone projects consider requiring the previous milestone to be paid before the next one starts.

Working with overseas clients

Much contract development is cross-border. Agree the invoicing currency up front and stick to it, so exchange-rate movement is the client's concern and not a monthly renegotiation. Put the bank details an international transfer needs on the invoice — IBAN and BIC, or an ACH and wire routing, plus your address as the account holder — and state who absorbs the transfer fee. If both you and a client in the same tax area are registered for VAT or GST, check whether a reverse-charge note and both registration numbers belong on the invoice. Sales-tax and VAT rules shift with each country and with your registration status, so take this as background and not tax or legal advice for your specific case.

When hours are questioned

If a client disputes a timesheet, the fix is not to argue over the total but to have the detail ready before they ask. Keep your time log in a tool the client can see, note what each block of hours produced, and reference the log on the invoice. A dispute over "40 hours" is hard; a dispute over a logged, described list of tasks rarely gets started.

Before you send

Set your lines above and download the PDF. A free NeatDue account keeps client records and invoice numbers in order between projects.

Frequently asked questions

Should I bill hourly, fixed-fee, or by milestone?

Hourly suits open-ended or exploratory work where scope is unclear. Fixed-fee suits a well-defined deliverable and rewards you for working efficiently. Milestone billing splits a fixed-fee project into paid stages, which keeps cash flowing and limits how much unpaid work you carry at once.

What should a line item say so a non-technical client understands it?

Name the outcome, not the task. 'User login and password reset working end to end' lands better than 'implement auth middleware'. Keep the technical detail for your commit history and the shared tracker.

Do I invoice before or after a milestone is approved?

After. Define what 'done' means for each milestone in the contract, get the client's sign-off on the deliverable, then issue the invoice referencing it. Invoicing before acceptance is how disputes start.

How do I bill ongoing maintenance or a support retainer?

Use one line per period — 'Support retainer — October, up to 10 hours' — with a stated rate for hours beyond the cap and a note on whether unused hours roll over. Bill it on a fixed day each month so the client can budget for it.

Can I charge for scoping calls and estimates?

A short initial call is usually free. A detailed technical discovery that produces an architecture document or a written estimate is billable work, and you should say so before you start it.

Related

Save your clients and reuse this every month

A free NeatDue account keeps your sender details and clients on file, numbers invoices for you, and drops the watermark on Pro. Your draft from the generator above comes with you.