Sales: Sales Workflows: Service Invoicing Policies: Milestones

Purpose

Service Invoicing Policies determine how and when a service-type product is invoiced. This document serves as a walkthrough for the Milestones policy. This policy is intended to be used when you have a project that will be completed, and invoiced in phases, such as website development.

Process

Timesheet Configuration
To keep this walkthrough simple, let's configure Timesheets to not require approval in order to bill clients. To do so, navigate to the Timesheets app.


Once there, scroll to the BIlling section and set the Invoicing Policy to All Recorded Timesheets.


When you're done, click SAVE.

Product Configuration

Navigate to the Inventory app.


Once there, either select an existing product to modify or create a new product using the Product Creation Workflow document as a guideline, and be sure to configure your product with the following settings:

For this workflow, you'll create a service product for every milestone and configure each of those services (e.g. Dev, Design, Content)  with the following settings:

Under the General Information tab:

Product Type: Set to Service

Sales Price: This is the cost-per-unit of the service. 

Unit of Measure: This is the default Unit of Measure used for all stock operations. You can leave this as a general “unit” measure or use “hours,” “days,” or another time-based measure. As we are offering Website Software Development, which we will bill by the hour, we will select the Hours unit. 

Purchase Unit of Measure: This field represents the Unit of Measure used for Purchase Orders. The unit here will automatically default to the unit selected in the Unit of Measure field. However, you can manually change this. 

Under the Sales tab:

Service Invoicing Policy: Set this to Milestones (manually set quantities on order).


Service Tracking

To use Milestones, you may also want to set up Service Tracking. See our Service Tracking for a Product document for workflow examples.

Our example indicates that when this service is ordered, a task will be created in a project based on the Sale Order. This will allow us to enter time spent on the timesheets. These timesheets will give us an accurate figure to invoice.


Click SAVE. Then, create a new Service Product for each milestone, using the above configurations. 

Quotation / Sale Order

To see how this works in a Sale Order, navigate to the Sales app.


Once there, click Orders > Orders, then click Create.

On the Sales Order form, select a Customer from the drop-down.

Under the Order Lines tab, click Add a Product and select a milestone service product. Do this for all milestones. Our example shows three phases of website development as individual milestones.

At this point, you can modify any of the fields in each product line. In our below example, we have modified the Quantity field, which shows the hours of planned work on the milestone, and the Description field, to indicate which milestone the line represents.


When you're ready, click confirm. You'll see the order lines remain black, indicating this order is not ready to be invoiced. This is because we're invoicing when a milestone is completed, per the Service Invoicing Policy.

Because of our Service Tracking selection, we also see a  Tasks smart button with a task created for each milestone (i.e. Service Product).

Click the  Tasks smart button.


On this page, you'll see a kanban view of the tasks created by this Sales Order. Click the first milestone task.

From the task view, click Edit.

Under the Timesheets tab, you'll see the number of hours ordered on the Sale Order are now the Planned Hours for this task.

Click Add a Line.

 

Enter timesheet entries totaling the planned hours. You'll see the totals reflected at the bottom, including Remaining Hours not utilized in the timesheets.


Click Save to save these timesheets. Then, click the  Sales Order smart button.


On this Sales Order, you'll see that the Delivered column doesn't reflect the timesheets. This is because with the Milestones policy, we need to enter these numbers manually.

To do so, click Edit.

On the order line, set the Delivered column to the actual time you'll be charging the client for by simply clicking into the field and entering the number. 


When you're done, click Save. You'll see this order line has turned blue, indicating it can now be invoiced.


Click CREATE INVOICE.


This brings up the Create Invoice modal window where Regular Invoice should be pre-selected. Click Create and View Invoice.


The invoice that was created only reflects work done on the first milestone.


You can now Post and you'll be ready to collect payment from the customer for this milestone.

After you post this invoice, navigate back to the Sales Order using the breadcrumbs.


Repeat the process of editing the invoice and adding delivered totals to invoice subsequently completed milestones.