PRJ-03Service / PSAUser

How to Create and Complete Project Milestones in CrmLeaf

All editions. Core feature - no add-on required. BOQ utilisation figures in the milestone invoice preview require the Manufacture add-on module.

Part 4 · Orders, Dispatch and Projects6 min readIncludes a Service / PSA lens

Availability: All editions. Core feature - no add-on required. BOQ utilisation figures in the milestone invoice preview require the Manufacture add-on module.

Overview

A milestone is a costed stage of a project. It carries a title, a cost with its currency and its dates, groups the tasks that deliver that stage, and is marked complete or incomplete. Milestones are also a billing point: once complete, a milestone can be invoiced directly, so project-based businesses can bill as work is delivered rather than only at the end.

How It Works

You add milestones under a project, attach tasks to them, then mark each one complete as the stage is delivered. A completed milestone becomes available for invoicing.

Add milestone Attach tasks Deliver Mark complete Invoice the milestone

  • A milestone holds a title, a cost and currency, and its dates. Its state is complete or incomplete.
  • Tasks are grouped under milestones, so the milestone reflects the work beneath it.
  • A completed milestone can be invoiced directly. The amount comes from the underlying billable work, not from a flat milestone price.
  • Milestones feed the project card view counts and appear in the Gantt and roadmap views.

Who Can Use This Feature?

User

  • Add milestones with their cost, currency and dates.
  • Attach tasks to a milestone.
  • Mark a milestone complete or return it to incomplete.
  • Raise an invoice from a completed milestone.

Access depends on the modules and role assigned by your Administrator.

Prerequisites

  • The project exists and you can see it under your permission scope.
  • A client is attached to the project, if the milestone will be invoiced.
  • The currency you want to cost the milestone in is configured for the account.
  • The tasks that deliver the stage exist, or you will create them under the milestone.

For Users

Step 1: Open the project's milestones

Open the milestones for the project you are planning. You can also work with milestones from within the project record.

Step 2: Add the milestone

Select Add, enter the title, the cost and currency, and the dates, then select Save. Name milestones after the deliverable the client recognises, not after internal activity.

Step 3: Group the tasks under the milestone

Create or Edit the tasks that deliver the stage and attach each one to the milestone, so you can see how much of the milestone remains.

Step 4: Mark the milestone complete

When every deliverable in the stage is done, set the milestone to complete. Check first that time and material on the underlying tasks have been recorded and approved, because these are what the milestone invoice bills.

Step 5: Invoice the completed milestone

Raise the invoice from the completed milestone. CrmLeaf gathers the milestone's approved but unbilled billable work into a preview before creating the client invoice, and stamps the source records so nothing is billed twice.

Field and Option Reference

Field / OptionDescriptionRequired
TitleThe name of the milestone as the client will recognise it.Yes
CostThe planned cost or value of the milestone.No
CurrencyCurrency the milestone cost is held in.No
DatesThe milestone's planned dates.No
Statuscomplete or incomplete.Yes

Expected Result

The milestone is saved under the project with its cost, currency and dates, groups the tasks assigned to it, and once complete becomes available to invoice. Completing it updates the milestone counts on the project card view.

Service / PSA lens

Why This Matters for Service Organisations

Most service engagements are not paid in one instalment at the end. They are sold as phases or deliverables, and each accepted deliverable is the trigger to bill. A milestone gives that commercial stage a record of its own — a title the client recognises, a cost with its currency, dates, and the tasks that deliver it — so delivery progress and the right to invoice move together instead of being reconciled by email at month end.

How It Supports Professional Services

  • Milestones are how a phased engagement, a stage-gated implementation or a deliverable-based consulting assignment is represented inside the project.
  • A completed milestone can be invoiced directly, which is the mechanism behind deliverable-based billing in CrmLeaf.
  • The invoice is built from the milestone's approved but unbilled billable time logs and material requisitions, so what reaches the client is work that a manager has already signed off.
  • Source records are stamped when billed, which prevents the same consultant hours being invoiced against two stages.
  • Each milestone carries its own currency, which suits firms delivering stages for clients in different countries.

Typical Service Workflow

Engagement Milestone Delivery Time approval Milestone invoice

The milestone sits between delivery and billing, and the step from a completed milestone to an invoice is one the product performs. Note the limit that matters commercially: the milestone cost field is a planned figure, and the invoice total comes from underlying billable work rather than from that figure, so a firm billing a flat fixed fee per deliverable typically raises the invoice manually instead.

Other Product-Type Use Cases

The same mechanism drives construction stage billing and solar installation payment points, where the approved unbilled material behind a stage matters as much as the hours. Internal projects use milestones purely as delivery checkpoints, with no billing attached.

Important Notes

  • Menu names and their position can differ between product editions and can be customised for your account, so your sidebar may not match these paths exactly. Use Search or your Quick Access items if you cannot find a screen.
  • The milestone invoice amount is built from the underlying billable work - approved but unbilled material requisitions and approved but unbilled billable time logs on the milestone's tasks - not from the milestone cost field.
  • Milestone invoicing is guarded: the milestone must be complete, the project must have a client, and it must not already be invoiced.
  • Source records are stamped when billed, so the same time or material cannot be invoiced twice.
  • BOQ utilisation in the invoice preview needs the Manufacture add-on module. Confirm it is included in your plan.

Common Scenarios

Example: construction stage billing. A contractor completes the foundation milestone, and the invoice raised from it picks up the approved material requisitions and approved billable hours booked against the foundation tasks.

Troubleshooting

IssuePossible CauseResolution
The milestone cannot be invoiced.It is not complete, the project has no client, or it was already invoiced.Complete the milestone, attach a client, and check for an existing invoice.
The invoice preview is empty.There is no approved but unbilled billable work on the milestone's tasks.Approve the time logs and material requisitions, then reopen the preview.
The invoice total does not match the milestone cost.The invoice is built from underlying billable work, not the cost field.Review the billable time and material behind the milestone.
BOQ utilisation is not shown.The Manufacture module is not enabled.Ask an Administrator to enable it if it is part of your plan.

Frequently Asked Questions

Can a milestone be reopened after completion?

Milestone state is complete or incomplete, so it can be returned to incomplete. Any invoice already raised from it remains.

Must every task belong to a milestone?

No. Tasks can be attached to a project and milestone, or stand alone.

Can two milestones use different currencies?

Yes. Each milestone carries its own cost and currency.

Still need a hand?

Our support team answers on business days. Reference PRJ-03 so we can jump straight in.