A project is delivery work for one client that is too big for a ticket, such as a migration, a new office, or an onboarding. It has phases, tasks, and milestones, a budget, and a billing mode that decides how the work is paid for. The client can follow it on a private status page and sign for milestones when they are finished. This page shows how to create a project, run it, bill it, and keep the client informed.
Before you begin
Section titled “Before you begin”-
You are on the MSP plan.
-
Project permissions:
Permission Allows project:readReading projects, tasks, milestones, documents, templates, and schedules project:writeCreating and editing projects (including their billing and budget), phases, tasks, milestones, notes, documents, and ticket links, completing a milestone, and sending a status email project:timeLogging, editing, and deleting time on project tasks project:calendarViewing the dispatch calendar and managing appointments and time off on it project:manageTemplates, recurring schedules, project settings, change orders, cost rates, the status link and acceptance links, and completing, canceling, or deleting a project The Project manager role holds all five, plus ticket access and
psa:read. Invoicing stays behindpsa:invoice. See Roles and permissions.
Where projects are
Section titled “Where projects are”- At the practice level, Projects lists every client’s projects. Its pages are My work, Dispatch, Templates, and Settings. The Projects entry carries the number of decisions waiting: change orders not yet approved and milestones a client declined.
- In a client’s workspace, Projects lists that client’s projects.
The lists open on the Active view. At the practice level, At risk, Mine, On hold, Closed, and Everything are the other built-in views. In a client’s workspace, they are At risk, Closed, and Everything.
Create a project
Section titled “Create a project”- Select Projects, then New project.
- In Client, choose the company the work is for. A project lives in that client’s records and cannot be moved later. Inside a client’s workspace the client is already chosen.
- Enter a Name. It appears on the client’s status page and on invoice lines.
- In Template, choose a template to stamp out the phases, tasks, and milestones, or Start empty.
- In Billing, choose how the work is paid for. See How a project bills.
- In Starts on, choose the date the template’s tasks and milestones are dated from. The plan computes the end date.
- Choose the Manager, who gets the weekly digest and the alerts.
- Select Create project.
Projects are also created when a client accepts a quote for a product that names a project template, and by recurring schedules. See Sales pipeline and quotes and Run recurring projects.
Run a project
Section titled “Run a project”A project’s page has these tabs:
| Tab | What it is for |
|---|---|
| Overview | Status, health and its reason, and progress. |
| Tasks | The task list, by phase. |
| Board | Tasks as cards by status. |
| Gantt | Tasks and dependencies on a timeline. |
| Milestones | What the client is told is finished. |
| Budget | Hours and money against the budget. |
| Change orders | Work the client asked for after the plan was agreed. |
| Documents | Files attached to the project. |
| Activity | What changed and who changed it. |
| Settings | Details, billing, budget, phases, the client contact, and the status page. |
A project’s status is Draft, Active, On hold, Completed, or
Canceled. Health is checked for active and on-hold projects. Status
emails go only to active ones. Its
Actions menu offers Send status email now, Status link, Put on
hold or Resume, Complete project, and Cancel project. Completing
and canceling need project:manage and cannot be undone. A project with
logged time can never be deleted.
Health is Green, Amber, or Red. It is computed hourly, and the reason is shown beside it. A project on hold reports amber.
A task has a status (To do, In progress, Blocked, Done, or Canceled), a priority (Normal, High, Urgent, or Critical), an assignee, dates, and an estimate. On a task you can add a checklist, make it depend on other tasks finishing first, link tickets, add notes, and log time. The task’s Actions menu offers Raise a ticket from this task, Schedule an appointment, and Delete this task. A task with time logged cannot be deleted. Logging time is described in Time tracking and dispatch.
Ask the client to accept a milestone
Section titled “Ask the client to accept a milestone”A milestone is a point the client is told is finished. On a fixed-price project, a milestone with an Amount bills its share of the price when it completes.
- On Milestones, select New milestone, or Edit on an existing one.
- Enter the Name and the Deliverables the client reads on the acceptance page and the certificate. Choose a Phase and a Due date, and on a fixed-price project the Amount.
- Select The client signs for this one to ask the client to accept it.
- Leave Show it on the client status page selected unless it is internal, and select Save.
- When the work is done, select Complete, then Send the request.
The project’s client contact is emailed a private link. The link is good for one signature and expires 30 days after it is created. On that page, the client either accepts the milestone with a typed signature, or selects This is not done and says what is missing.
| Milestone status | Meaning |
|---|---|
| Pending | Not finished yet. |
| Waiting for the client | The acceptance request has been sent. |
| Accepted by the client | The client signed for it. |
| Declined by the client | The client said it is not done. Ask again sends the same link again. |
| Completed | Finished without a client signature. |
| Canceled | Dropped. Its acceptance link is revoked and nothing bills for it. |
Acceptance on a milestone shows who signed and when, and offers Download
the certificate of completion, Copy the link, and Replace the link.
Anyone who holds the link can sign, so treat it like a password. To complete a
milestone without the client’s signature, select Complete without them.
This needs project:manage and is recorded in the audit log.
Record a change order
Section titled “Record a change order”A change order records work the client asked for after the plan was agreed.
- On Change orders, select New change order.
- Enter a Title, a Description, and optionally a Phase.
- In Hours and Amount, enter what it adds to the budget. Negative values take hours or money off. On a fixed-price project, approving it also changes the Fixed price by the amount.
- To bill it, select Bill this when it is approved. Approving it then puts a line on the project’s open draft invoice. Only a change order with a positive amount can be billed. A negative amount bills nothing. Issue a credit note for it on the invoice instead.
- Save it.
- Select Approve, enter who at the client agreed to it in Approved by, and confirm.
There is no separate submit step. The name you enter is the recorded sign-off.
Void needs a Reason. On an approved change order, it takes the hours
and money back off the budget. A change order whose money is already on an
invoice cannot be voided. Issue a credit note instead. Change orders need
project:manage.
How a project bills
Section titled “How a project bills”The project’s billing mode decides before the agreement’s rules do. A phase can bill differently from its project, and the phase wins.
| Billing mode | How time on it bills |
|---|---|
| Time and materials | Through the client agreement’s rules, like ticket time, at the rule’s rate or the agreement’s default hourly rate. |
| Fixed price | The time is recorded but not billed. Milestones with an amount bill shares of the Fixed price. |
| Prepaid | Drawn from the project’s prepaid block. Hours past it bill at the agreement’s default hourly rate. |
| Internal | Not billed. |
Set the mode, the Agreement, the Prepaid block, and the Fixed price under Settings > Billing on the project. Milestone and change-order lines go on one draft invoice per project at a time, in Client billing > Invoices. See Invoice clients.
The Budget tab shows Hours logged, Billable value, Invoiced, and Margin, with hours by phase. On the project’s Settings, enter an Hours budget in minutes, an Amount budget, and the Warn at and Critical at percentages. On time and materials, the amount budget is compared against the billable value. On fixed price, it is compared against cost.
Keep the client informed
Section titled “Keep the client informed”On the project’s Settings, under The client:
- Enter the Contact name and Contact email. Status emails and acceptance requests go to this address. A project made from a quote takes the contact from the quote. Otherwise, you enter it yourself.
- In Status email, choose Weekly, Every two weeks, Monthly, or Do not send, and choose the day it is Sent on.
Share the status page
Section titled “Share the status page”The status page is a private, read-only page the client opens without an account. It shows the project’s stages, milestones, the tasks you chose to publish, and updates. It never shows cost, budget, hours, technician names, or internal notes. Tasks and notes are hidden from it by default.
Under The client status page, select Open the status page to create
it, then Copy the link to send it. Replace the link stops the old
address working. Close the page makes the address answer as not found.
Managing the status link needs project:manage.
Reuse plans with templates
Section titled “Reuse plans with templates”Select Projects > Templates to manage the plans projects are stamped
out of. Outpost seeds a few starter templates, which you can edit like any
other. Editing a version that projects were already made from writes a new
version, so projects already made keep their own copy. Retire stops a
template being offered, and Delete removes one. Templates need
project:manage.
Run recurring projects
Section titled “Run recurring projects”Under Recurring projects on Templates, a schedule makes a project from
a template on a cadence, such as a quarterly review for one client. Each
schedule has a Name, a Template, a Client, a Project name
pattern such as Quarterly review {quarter} {year}, a Cadence, a Time
zone, a Project manager, and how it Bills as. Turn Running off to
pause a schedule.
Set the project defaults
Section titled “Set the project defaults”Projects > Settings holds the practice-wide project settings, and needs
project:manage:
| Card | Settings |
|---|---|
| Budget thresholds | Warn at and Critical at, as percentages of a budget, Scope creep at as a percentage of a task’s estimate, and Call a task at risk, in days before it is due. Crossing one raises an alert in the client’s workspace. |
| What goes out | Send the Monday digest to each project manager, the hour it is Sent at, Status email, by default, and Remind a technician a number of minutes before an appointment. |
| Technicians | Each technician’s weekly Capacity and Cost per hour. Cost rates are visible only to people with project:manage or psa:read. |
Verify
Section titled “Verify”- The new project is listed under Projects with its client, and its Tasks tab shows the template’s tasks.
- After Send the request on a milestone, it shows Waiting for the client.
Next steps
Section titled “Next steps”Content is licensed CC BY 4.0. Code samples are MIT. Outpost and the Outpost mark are trademarks of Outpost Business Solutions, PBC and are not covered by either license.