Milestone payments split a project fee into amounts due at agreed stages. Tie each payment to a specific deliverable and acceptance step. Agree on the amount, invoice timing and due date for every stage, then track what has been billed and paid.
The difficult part is usually deciding what counts as finished. A contractor may consider a prototype ready while the client is still waiting for a working checkout. If the payment schedule only says “50% complete,” neither side has a useful test for when the next invoice is due.
A workable schedule names the deliverable, the person who accepts it and the evidence of approval. The example below follows a USD 4,000 project through three milestones, showing how to invoice each stage and avoid counting an advance twice. All names, amounts and dates are illustrative.
Choose milestones that can be accepted
Use observable deliverables rather than vague percentages of progress. Describe what the client will receive and how the designated approver will confirm that it meets the agreed scope.
| Vague milestone | Clearer deliverable | Acceptance owner and evidence |
|---|---|---|
| “50% done” | A prototype demonstrating the agreed signup and checkout flows | Client product lead confirms the specified test scenarios in writing |
| “Design complete” | The agreed desktop and mobile design files, including listed revisions | Client design lead approves the identified file version |
| “Launch” | Source files, access details and the agreed handover checklist delivered | Client project owner signs off the checklist |
Name the approver in the agreement. “The client approves” can become a problem when several people provide feedback and none takes responsibility for the decision. Also record where approval will live: an email, a signed checklist or a particular project ticket.
Give the client a review window and agree what happens if that window passes without a decision. Do not silently treat a missed response as acceptance. If the project depends on a client's content or access credentials, identify that dependency before promising a delivery date.
For smaller projects, two or three meaningful stages may be enough. More stages are useful only when each represents work both sides can assess and a payment worth administering.
Build a milestone payment schedule
List the deliverable, acceptance owner, amount, invoice trigger and due date for each stage. Separate the planned review date from the event that makes the stage billable.
In this USD 4,000 website project, the parties agree on a 20% / 50% / 30% split. The named client project owner, Maya Chen, accepts each stage in writing. Each milestone invoice is issued on acceptance and payable seven calendar days after its issue date.
| Stage and deliverable | Planned review | Acceptance and invoice trigger | Share | USD due | Payment deadline |
|---|---|---|---|---|---|
| 1. Approved brief | 3 November 2026 | Maya approves the scope and brief; issue the stage invoice | 20% | 800 | Seven calendar days after issue |
| 2. Accepted prototype | 17 November 2026 | Maya accepts the agreed prototype flows; issue the stage invoice | 50% | 2,000 | Seven calendar days after issue |
| 3. Agreed handover | 1 December 2026 | Maya accepts the files and handover checklist; issue the stage invoice | 30% | 1,200 | Seven calendar days after issue |
| Total | All three stages | 100% | 4,000 |
If Stage 2 is accepted and invoiced on 17 November, its due date is 24 November. If acceptance moves to 20 November and the invoice is issued that day, the same agreed term produces a 27 November deadline. The planned review date alone does not trigger an invoice in this example.
Use explicit dates on the invoices once the trigger occurs. The payment terms examples show how to state the amount, deadline and payment method together. Keep the schedule's original planned dates visible, and record actual acceptance and issue dates separately so that a delay does not erase the project history.

Illustrative schedule. Remaining amounts assume each stage has been paid in full and no changes or credits have been agreed.
The percentages are a commercial choice, not a default you must use. Agree on a split that reflects the work and the parties’ funding needs. If work requires money before the first deliverable can be accepted, document an advance separately and state how it reduces later amounts due.
Invoice the stage without billing it twice
Give each stage an invoice reference and show any payment already received. A milestone invoice should identify the project, stage, accepted deliverable, approval record and amount being billed.
For example, the description on the second invoice could read:
Project WEB-26-014 — Stage 2: accepted website prototype. Approved by Maya Chen on 17 November 2026. Stage amount: USD 2,000. Invoice MP-002, issued 17 November 2026; payment due 24 November 2026. This invoice covers Stage 2 only.
That description gives the person paying the bill a way to match it to an approval. Add the agreed payment instructions and any required purchase order reference before sending.
Track the full project price separately from invoices already issued. After Stage 1 is paid and Stage 2 is invoiced, the record could look like this:
| Stage | Invoice reference | Agreed USD | Billed USD | Paid USD | Billed but unpaid USD | Not yet billed USD |
|---|---|---|---|---|---|---|
| Approved brief | MP-001 | 800 | 800 | 800 | 0 | 0 |
| Accepted prototype | MP-002 | 2,000 | 2,000 | 0 | 2,000 | 0 |
| Agreed handover | Not issued | 1,200 | 0 | 0 | 0 | 1,200 |
| Total | 4,000 | 2,800 | 800 | 2,000 | 1,200 |
At this point, USD 3,200 of the project price remains unpaid. Only USD 2,000 has been billed and is awaiting payment; USD 1,200 has not yet been billed. Keeping those figures separate avoids treating future work as an overdue invoice.
Apply an advance once
Write down whether an advance covers the first milestone or is credited against a later stage. Those are different arrangements.
Suppose the client pays USD 400 before work begins, with both sides agreeing that it counts toward the USD 800 first stage. After that stage is accepted, show the USD 800 stage value, the USD 400 advance already received and USD 400 still due. Do not request another USD 800. After the remaining USD 400 arrives, Stage 1 is fully paid and USD 3,200 remains across the other two stages.
If the agreement instead applies the USD 400 advance to the final stage, show that allocation in the project record. The final USD 1,200 stage would then have USD 800 left to collect. The advance remains part of the USD 4,000 total in either arrangement; it is never an extra charge on top.
Use the invoice or adjustment document appropriate to your accounting process, with a clear reference to the advance. Keep the original payment record so someone reviewing the project later can follow the calculation.
Handle changes and incomplete deliverables
Confirm a changed scope or amount before updating the remaining schedule. Preserve the original agreement and record what changed, who approved it and which future invoices it affects.
| Situation | What to confirm | How to update the record |
|---|---|---|
| Additional scope | New deliverable, price, acceptance owner and timing | Add an approved change reference and recalculate the project total and remaining amounts |
| Partial acceptance | Which items are accepted, which are unfinished and whether a partial charge is agreed | Record any agreed amount against the same stage and identify what remains billable |
| Delayed delivery or review | Cause of the delay, revised review date and effect on the payment trigger | Keep the original dates, record the revised plan and apply the agreed deadline rule |
If the parties approve USD 600 of additional handover work, the example project becomes USD 4,600. If the first two stages have already been paid in full, USD 1,800 remains: the original USD 1,200 handover stage plus the approved USD 600 addition. Record the addition rather than silently changing the old invoice.
For partial acceptance, avoid treating “most of the prototype works” as a price calculation. Identify the accepted items and agree whether to invoice part of the stage. If USD 1,200 of the USD 2,000 stage is agreed, billed and paid, USD 800 of that stage remains unbilled until the next agreed trigger. A partial invoice does not reduce the total stage price unless the parties also agree to reduce the scope or price.
If a change is disputed, resolve the specific deliverable or charge against the original agreement. Keep any undisputed amounts and deadlines visible while the issue is being addressed.
Choose a payment route after the milestone is approved
An agreed milestone sets the business trigger. The payment product handles the approved transfer. Agree on currency and acceptable methods when setting the project terms, then check the actual receiving details and fees before releasing each payment.
For international teams, AllScale’s contractor payment solution describes payment runs that a business reviews and approves before funds move. That payment approval is separate from accepting a prototype, design file or handover. The project parties still decide whether the deliverable meets their agreement.
On the billing side, AllScale Invoice provides a payment-request workflow. Include a clear stage description and use the payment options available for the specific invoice. A payment request does not itself certify that a milestone has been accepted.
Once payment is sent, link the transaction reference to the milestone invoice. Update the paid amount when receipt is confirmed and calculate the remaining project balance. Keep approval evidence, the invoice and payment confirmation together.
Frequently asked questions
Should milestones be based only on dates?
Use the deliverable and acceptance condition as well as any planned date. A date alone may not explain whether the work is ready to be invoiced. State separately when the stage can be invoiced and how its payment deadline is calculated.
How do I avoid charging a deposit twice?
Record the deposit as already paid and show how it is applied to the agreed schedule. Check the remaining balance after every stage. If an advance is allocated to the final stage, keep that credit visible until the final invoice is prepared.
Can the schedule change during the project?
Keep the original record and confirm the revised scope, amounts and triggers with both sides before issuing the next invoice. Recalculate the total and the remaining amounts so that the revised schedule accounts for payments already received.
Does AllScale automatically approve project deliverables?
AllScale handles the payment workflow. The parties agree on deliverables and approve project stages before releasing the payment. Approval of a payment run should follow the business’s own review of the work and invoice.
Put the agreed stage on the invoice
Use a contractor invoice template to document the accepted stage, its amount and the payment deadline. Keep the invoice description specific enough for the approver and the person paying it to recognize the same piece of work.
When you are ready to execute approved payments across borders, explore contractor payments with AllScale.






