# How to Invoice a Fixed-Price Project With a Deposit (Without Billing Anything Twice)

> About Dora: Dora is the AI account manager for teams that do client work. An agentic client portal: Dora briefs every request and gets it signed off, and your team or your own AI agents do the work.

Edin Abazi · Published 2026-11-13 · Updated 2026-11-13

> A fixed-price project is one total, so split it cleanly. Send a deposit invoice at kickoff that shows the full project price and the upfront amount, then send a final invoice at delivery that credits the deposit and bills only the balance. Keep the project's hours off every other invoice so nothing is billed twice.

Nothing sours a good launch like a final invoice that makes the client squint. The number isn't the one they remember, there's a line called "upfront payment" nobody can match to anything, and now you're explaining math by email instead of celebrating. A fixed price should be the easy case, and it is, once you decide the split before kickoff.

Here's the short version. To invoice a fixed-price project with a deposit, send a deposit invoice at kickoff that shows the full project price and the upfront amount, then send a final invoice at delivery that credits the deposit and bills only the balance. Keep the project's hours off every other invoice so nothing is billed twice.

This walkthrough takes about 20 minutes and works at a beginner level. You'll get a four-step split, invoice wording, worked numbers and a checklist. Before you start, have three things ready: a signed scope or statement of work, an agreed fixed price, and your company details and payment instructions.

## Why a fixed price makes invoicing tricky

A fixed price is one number. Say it's $10,000. The deposit and the final invoice are two slices of that number, and together they have to equal $10,000, not a dollar more.

That sounds obvious until you're sending the second invoice at 6pm on delivery day, with half the details in your head.

### One price, two invoices

Bigger systems handle this with billing schedules. [Microsoft's Dynamics 365 Project Operations documentation](https://learn.microsoft.com/en-us/dynamics365/project-operations/prod-pma/project-invoicing) describes fixed-price projects as invoiced through billing schedules, using an on-account setup, either per project or per project contract. That's one enterprise system's approach, not a universal rule. But the idea travels well: the total stays fixed, and the schedule decides which slice gets billed when.

You don't need that software to borrow the thinking. You need a plan written down before work starts.

So, the quick answer to how to issue an invoice with a deposit: send a stand-alone deposit invoice before work begins, then credit it on the final invoice. As [SumUp's guide to invoicing with a deposit](https://www.sumup.com/en-us/invoices/invoicing-essentials/how-to-invoice-with-a-deposit/) points out, a deposit invoice has to account for money you've already received.

I call the whole approach the **four-step deposit and final invoice split**:

1. Set the total fee and the payment terms at signing.
2. Send the deposit invoice at kickoff, showing the full project value.
3. Record the deposit as a credit against the total.
4. Send the final invoice at delivery for the remaining balance, and reconcile before sending.

It suits agencies, studios, consultancies, dev shops and freelancers, anyone selling a defined piece of work for one price.

### Where double billing sneaks in

Picture a studio with a monthly retainer client. The team also builds that client's $10,000 website as a fixed-price project. Everyone logs hours against the client, and the monthly invoice sweeps up every billable hour, including the 40 hours spent on the website.

Then delivery day arrives. Someone bills the $5,000 balance from memory. The client has now paid for those 40 hours in the monthly invoice and again inside the fixed fee.

Nobody did anything dishonest. Two billing routes just touched the same work.

The fix is boring and reliable: fixed-price work gets its own invoices, and its hours stay off everything else. That's the point of view behind the rest of this guide. A fixed price is one number, the deposit and final are two slices of it, and the goal is a final invoice the client reads once and pays.

## Step 1: Agree the total, the split and the terms at signing

Most invoicing trouble at delivery is really a signing problem. If the split isn't written down when the client says yes, you'll negotiate it later, when you have less bargaining power and they have more questions.

Spend ten minutes here and the next three steps get easy.

### Choosing the deposit percentage

Pick a deposit percentage first. According to [Invoicemonk's deposit invoice guide](https://invoicemonk.com/en/blog/deposit-invoice-template-guide), a deposit invoice typically requests 25 to 50 percent of the project total before work begins. That's a typical range, not a rule.

How do you choose inside it? Think about two things:

- **Your upfront cost.** If you'll buy fonts, stock, plugins or hire a contractor in week one, lean higher.
- **Client risk.** A new client you found last week is a different call from a client of four years.

Half and half is common because it's easy to explain. A 30 percent deposit is just as valid if it fits how you work.

### Wording to put in the agreement

Write the terms into your agreement, not just into an email. [Stripe's explainer on 50% advance payment invoices](https://stripe.com/resources/more/50-percent-advance-payment-invoice-format-explained) offers example contract wording: the client pays a 50% advance after signing, and the remaining balance is due within 14 days of receiving the invoice.

Here's a version you can adapt:

> The total fixed fee for this project is $10,000. A 50% deposit of $5,000 is due after signing and before work begins. The remaining $5,000 is due within 14 days of the final invoice, issued when the deliverables are handed over.

Treat the 14 days as an example, not a standard. Use whatever terms you can actually live with.

Then decide whether the deposit is refundable, and write that down too. If work has started and the client walks away, what happens to the deposit? Pick an answer now. It's a much friendlier conversation before anyone is upset.

If you're building the agreement from scratch, a [statement of work template](https://dora.work/templates/statement-of-work-template) gives the price its edges. If you're unsure whether you need a contract on top of it, [the difference between a SOW and a contract](https://dora.work/answers/sow-vs-contract-difference) is a quick read. Want to sanity-check the price itself? The [project quote calculator](https://dora.work/tools/project-quote-calculator) helps you price a fixed-fee job before you quote it.

### Keep extras out of the fixed fee

A fixed fee only works if it has edges. The first "small change" that gets absorbed teaches the client that the edges are soft, and that's how [scope creep](https://dora.work/glossary/what-is-scope-creep) starts.

Say in the agreement that anything outside the written scope is priced separately as a change order. Then it can be approved and billed on its own, without blurring the fixed fee or the deposit math.

A quick signing checklist:

1. The scope or SOW lists what's included.
2. The total fixed price is stated once, clearly.
3. The deposit percentage and amount are written down.
4. The balance and its due date are written down.
5. The refund terms are written down.
6. Extras are priced separately.

If you want a broader list of what to collect before work starts, the [client onboarding checklist for agencies](https://dora.work/blog/client-onboarding-checklist-agencies) covers it.

## Steps 2 and 3: Send the deposit invoice and track it as a credit

Now the first invoice goes out. This is where I'd push back on a very common habit: billing the deposit as a vague "upfront payment" and sorting out the math at the end.

Don't. Put the full project price, the deposit percentage and the balance on the deposit invoice itself. Clients rarely dispute a number they saw at kickoff, and your final invoice becomes a simple subtraction.

The tradeoff is a few extra minutes now. That's cheaper than an awkward conversation at delivery.

### What the deposit invoice should say

Start with the label. In a [SitePoint community thread](https://www.sitepoint.com/community/t/what-does-a-deposit-invoice-look-like/3212), one freelancer describes billing a 20% deposit on a $100 project as a $20 invoice with the description "Project - 20% Deposit". The numbers are tiny, but the habit is right: say what the invoice is, in the invoice.

Then show the full value. Invoicemonk's guide notes that a deposit invoice must show the full project value, so the client sees the deposit as part of a bigger, agreed number. A good deposit invoice includes:

- A clear title, such as "Deposit Invoice" or "50% Deposit"
- The project name
- The total fixed price
- The deposit amount due now
- The balance remaining and when it's due
- An invoice number, issue date and due date
- Your payment details

### A sample 50 percent deposit invoice

If you're wondering what a 50 percent deposit invoice should say, here's a layout you can copy:

| Line | Amount |
|---|---|
| Project: Marketing website redesign | |
| Total fixed price | $10,000.00 |
| **50% deposit due now** | **$5,000.00** |
| Balance remaining after this invoice | $5,000.00 |

Under the table, add a line of plain text: "Balance of $5,000.00 will be invoiced on delivery and is due within 14 days of that invoice. Deposit is non-refundable once work has started." Swap in your own terms.

Set the deposit invoice's due date before the start date, not on it. If the project begins Monday, the invoice should be due before then. Otherwise "starts Monday" quietly turns into "starts whenever the invoice gets paid".

### Tracking the deposit until delivery

Here's step 3, and it's mostly a mindset: the deposit is money already received against the total. It isn't a separate fee, and it isn't a bonus.

One way to picture it comes from billing videos about cost-plus work. [This walkthrough on cost-plus deposits](https://www.youtube.com/watch?v=R9YE1dho7Wg&t=114) shows a deposit being held and then applied to a future invoice for the same customer. Cost-plus billing isn't fixed-price, so take it as an analogy only. But the idea is the same: the money sits as a credit until the final invoice uses it up.

In practice, that means three small habits:

- Mark the deposit invoice paid the day the money lands.
- Note the paid amount against the project, so the final invoice can pull it in.
- Leave the deposit out of any other invoice you send that client.

How a deposit is recorded in your books is a question for your accountant and your local rules. Dora doesn't sync with accounting tools, so the clean handoff is a CSV export of your invoices, which I'll come back to below.

With Dora, you give a request a fixed price and invoice it on its own. You can bill a deposit of any percent when work starts, then the rest at the end. Because the request is invoiced separately, its hours stay off the monthly invoice. That keeps the retainer or hourly invoice clean. Details on how that works are on the [invoicing feature page](https://dora.work/features/invoicing).

## Step 4: Send the final invoice and avoid double billing

Delivery day. The work's done, the client's happy, and the last thing you want is a puzzle. If you've followed steps 1 to 3, this invoice is a subtraction problem.

### The final invoice, line by line

Here's the worked example. The project is $10,000 and the client paid a $5,000 deposit.

| Line | Amount |
|---|---|
| Project: Marketing website redesign | |
| Total fixed price | $10,000.00 |
| Less deposit paid (invoice #1042, paid Mar 3) | -$5,000.00 |
| **Balance due** | **$5,000.00** |

Add a due date. Using the example from Stripe's guide, that's 14 days from the date the client receives the invoice. If you issue it on March 28, it's due April 11. Make sure the date is on the invoice itself, not just in the agreement.

Notice what the client sees: the same $10,000 they saw at kickoff, the deposit they remember paying, and a balance that matches. There's nothing to explain.

Change orders go on their own lines or their own invoice. If the client approved a $1,200 extra during the project, it shouldn't be tucked into the fixed price. Keep it visible and separate, ideally with a recorded [approval](https://dora.work/features/approvals) so everyone remembers saying yes.

### Pre-send checklist for double billing

Run this before you hit send. It takes two minutes, and it's the whole point of this guide.

1. **Confirm delivery.** The [project deliverables](https://dora.work/glossary/project-deliverables-definition) are handed over, and the client has what the agreement promised.
2. **Confirm the deposit is marked paid.** If it's still showing as unpaid, fix that first.
3. **List the total, less the deposit.** Use the exact figures from the deposit invoice.
4. **Check that no hours appear elsewhere.** Look at the client's monthly or hourly invoices for this project's time.
5. **Check that no estimates appear elsewhere.** Approved change orders should be billed once, on their own.
6. **Reconcile the totals.** Deposit plus balance should equal the fixed price, to the cent.
7. **Add the invoice number and due date.** Then send.

If you're a studio that also bills a retainer, step 4 is the one that saves you. Your [retainer agreement](https://dora.work/glossary/retainer-agreement-definition) and your fixed-price project should never share the same hours.

Fixed-price hours still matter, though, just not on the invoice. If you track time, you can see afterward whether the fixed price was profitable. [Time tracking](https://dora.work/features/time-tracking) in Dora can be set per client as internal (kept to the team) or billable, and clients only ever see billed hours, never your internal time.

In Dora, the team edits the draft, issues it with a number, a due date and a PDF, and emails it to the client. When it's overdue, Dora sends up to two reminder emails. Clients pay the way they do today, for example by bank transfer using the details on the invoice, and your team marks the invoice paid. Dora doesn't take payments itself.

## Common mistakes, plus a milestone variant for longer projects

Most invoicing mistakes on fixed-price work are small. They just land at the worst moment, when the client is deciding how they feel about the whole project.

### Five mistakes that cause awkward emails

1. **A deposit invoice without the full project value.** The client sees "$5,000 upfront" and has to remember what it's for. Show the total, as [Invoicemonk's guide](https://invoicemonk.com/en/blog/deposit-invoice-template-guide) recommends.
2. **Billing hours on top of the fixed fee.** If you track billable hours, keep the project's time out of the invoices that bill them. A fixed fee covers the work. Hours on top is the same work twice.
3. **Unclear due dates and refund terms.** "Pay when you can" isn't a term. Put the date on the invoice and the refund rule in the agreement.
4. **Forgetting to mark the deposit paid.** If the deposit shows as outstanding, your final invoice either double-charges or needs a manual fix. Mark it paid the day it lands.
5. **A vague label.** "Payment 1" tells nobody anything. A label like "Project - 20% Deposit", the way that [SitePoint example](https://www.sitepoint.com/community/t/what-does-a-deposit-invoice-look-like/3212) does it, tells everyone what they're looking at.

Here's a small proof case, framed honestly as a worked example and not a customer result. The baseline is a $10,000 website project billed with a loose "upfront payment" and a final invoice assembled from memory, with hours also landing on the monthly invoice.

The change: a 50% deposit invoice of $5,000 at kickoff showing the $10,000 total, then a final invoice showing $10,000 less $5,000 paid, due in 14 days, with the project's hours kept off the monthly invoice. The outcome you're aiming for is a final invoice that reconciles on first read, with no corrections and no double-billed hours.

To see whether it works for you, measure it over your next 5 projects. Track three things in a simple sheet or in your invoice history:

- Invoice corrections per project
- Days from delivery to payment
- Client questions about the amount

If those numbers drop, the extra minutes at kickoff paid for themselves.

### Splitting into milestones

Two slices won't suit every job. A longer build for a studio might run in phases, and a single balance at the end can leave you funding months of work.

That's where a billing schedule comes in, the same idea Microsoft's documentation describes for fixed-price projects. You split the total into more slices, each tied to a milestone. Here's an illustration, a 40/30/30 split on $10,000:

| Milestone | Share | Amount |
|---|---|---|
| Kickoff deposit | 40% | $4,000 |
| Design approved | 30% | $3,000 |
| Launch | 30% | $3,000 |

The rules stay the same. Each invoice shows the total price, what's been paid so far and what's due now. The last invoice should land at exactly $10,000 across all three.

The 40/30/30 split is just an example. Choose milestones the client can recognize, like "design approved" or "launch", not dates that drift.

A caveat before you copy anything: the examples in this guide come from a mix of vendor guides, documentation and community forums. Check your local tax rules and your own contract terms before using any of them.

## Setting this up in Dora

If you'd rather not rebuild this by hand each time, here's how it works in Dora. Invoicing is off until you turn it on, and it's included on every plan.

Start with setup. You choose your company currency (USD by default, and you can override it per client), an invoice number prefix, the days until due, your company details, how clients pay, and your rates. You can also set an optional tax rate per client.

Then, for a fixed-price job:

1. Give the request a fixed price.
2. Invoice the deposit when work starts. It can be any percent.
3. Invoice the rest at the end.

The request's hours stay off the monthly invoice, so nothing gets billed twice.

Once you issue an invoice, your client sees it on an Invoices page in their portal. You can mark it paid or unpaid, void it, or send it again. When your accountant asks for the numbers, there's a CSV export.

Other client work carries on as normal around it. Your monthly retainer, the estimates your client approved that month and billable hours land on the monthly invoice without re-typing. The fixed-price work just takes its own route.

Pricing the project comes first, of course. If you haven't settled the number yet, run it through the [project quote calculator](https://dora.work/tools/project-quote-calculator) before you send the quote.

Ready to stop rebuilding invoices by hand? Start free with Dora: your first client is free, and invoicing is included on every plan. How do you split your fixed fees today: half and half, or something else?

## FAQ

### How do I issue an invoice with a deposit?

Send a separate deposit invoice before work starts. It should show the full project value and the deposit due now. Then credit that deposit on the final invoice, so the client only pays the balance.

### How much deposit should I ask for on a fixed-price project?

[Invoicemonk](https://invoicemonk.com/en/blog/deposit-invoice-template-guide) describes 25 to 50 percent as the typical range. Where you land depends on your upfront costs and how much risk the project carries. A first-time client on a big build usually calls for more than a long-standing client on a small one.

### What should the wording on a 50% deposit invoice be?

Title it clearly, for example "50% Deposit". Show the total project price, the deposit due now, the balance on delivery and the due date. [Stripe's example](https://stripe.com/resources/more/50-percent-advance-payment-invoice-format-explained) has the balance due within 14 days of receiving the final invoice, but use terms that suit you.

### How do I include a deposit on the final invoice?

Show the total price, subtract the deposit already paid, and show the balance due. Keep the deposit invoice number on that line so it's easy to trace. [SumUp's guide](https://www.sumup.com/en-us/invoices/invoicing-essentials/how-to-invoice-with-a-deposit/) makes the same point: account for money you've already received.

### How is a deposit recorded in accounting?

Often as money received before the work is done, rather than revenue yet. The exact treatment depends on your accountant and your local rules, so check with them. Dora doesn't sync with accounting tools, but you can export your invoices as a CSV for your accountant.

### Can I bill extra changes on top of a fixed price?

Yes. Bill them as separately approved estimates or change orders, so they don't blur the fixed fee. Your deposit and final invoice stay clean, and the extra work has its own approval and its own line.

## References

1. [Project invoicing](https://learn.microsoft.com/en-us/dynamics365/project-operations/prod-pma/project-invoicing)
2. [How to Invoice With a Deposit | SumUp](https://www.sumup.com/en-us/invoices/invoicing-essentials/how-to-invoice-with-a-deposit/)
3. [Deposit Invoice Template: How to Request Upfront ...](https://invoicemonk.com/en/blog/deposit-invoice-template-guide)
4. [50% advance payment invoice format explained - Stripe](https://stripe.com/resources/more/50-percent-advance-payment-invoice-format-explained)
5. [What does a deposit invoice look like?](https://www.sitepoint.com/community/t/what-does-a-deposit-invoice-look-like/3212)
6. [Cost-Plus: Deposits](https://www.youtube.com/watch?v=R9YE1dho7Wg&t=114)

## Questions

### How do I issue an invoice with a deposit?

Send a separate deposit invoice before work starts that shows the full project value and the deposit due now. Then credit that deposit on the final invoice so the client pays only the balance.

### How much deposit should I ask for on a fixed-price project?

Invoicemonk describes 25 to 50 percent of the project total as the typical range, not a rule. Where you land depends on your upfront costs and how much risk the project carries.

### What should the wording on a 50% deposit invoice be?

Title it clearly, such as 50% Deposit, and show the total project price, the deposit due now, the balance and its due date. Stripe's example has the balance due within 14 days of receiving the final invoice, but use terms that suit you.

### How do I include a deposit on the final invoice?

Show the total price, subtract the deposit already paid, and show the balance due. Keep the deposit invoice number on that line so it's easy to trace.

### How is a deposit recorded in accounting?

It is often treated as money received before the work is done, rather than revenue yet. The exact treatment depends on your accountant and local rules, so check with them.

### Can I bill extra changes on top of a fixed price?

Yes, bill them as separately approved estimates or change orders so they don't blur the fixed fee. The deposit and final invoice stay clean, and the extra work gets its own approval and line.

## Sources

- [Project invoicing](https://learn.microsoft.com/en-us/dynamics365/project-operations/prod-pma/project-invoicing)
- [How to Invoice With a Deposit | SumUp](https://www.sumup.com/en-us/invoices/invoicing-essentials/how-to-invoice-with-a-deposit/)
- [Deposit Invoice Template: How to Request Upfront ...](https://invoicemonk.com/en/blog/deposit-invoice-template-guide)
- [50% advance payment invoice format explained - Stripe](https://stripe.com/resources/more/50-percent-advance-payment-invoice-format-explained)
- [What does a deposit invoice look like?](https://www.sitepoint.com/community/t/what-does-a-deposit-invoice-look-like/3212)
- [Cost-Plus: Deposits](https://www.youtube.com/watch?v=R9YE1dho7Wg&t=114)

[Try Dora free](https://dora.work/sign-up): your first client is free, forever.
