Cookies

We use analytics to see how the site is used so we can improve it.

Skip to content
Renada

Why every HaloPSA project is really just a ticket with children

A walkthrough for MSPs building repeatable project templates in HaloPSA, from root ticket type to child task automation

4 December 2024 11 min watch Connor Fagan

The short version

This tutorial breaks down how projects actually work in HaloPSA: a master ticket with child tickets underneath it, driven entirely by templates. You will see how to build a root project template, attach a dedicated ticket type, and add child templates that spawn their own tickets and to-do lists, so recurring work like a Cyber Essentials Plus onboarding becomes a repeatable, structured workflow.

What you'll take away

  • Projects are tickets with children

    A HaloPSA project is a master ticket that spawns child tickets, each running its own workflow.

  • Build a dedicated root ticket type

    Cloning the default project ticket type and stripping fields you do not need, like the email list, keeps the intake form clean for a specific project type.

  • Custom fields live on the root template

    Adding a field such as cost centre to the root ticket type lets you capture project-specific information at creation time.

  • Child templates create their own tickets

    Each child template can carry its own to-do list, for example installing software, and generates a separate ticket when the project starts.

  • Sequencing child tasks by engineer level

    Splitting install, scan and report into separate child tasks lets you route each step to a level one, two or three engineer.

  • An unconfigured child becomes a blank incident

    If a child template has no ticket type set, HaloPSA still creates the child ticket but leaves it as a bare incident with no workflow attached.

Key insights from the episode

  1. A HaloPSA project is structurally a parent ticket with child tickets, not a separate module.

  2. Apply project templates from the new project screen rather than exposing ticket type choice, to avoid confusing users.

  3. Clone the default project ticket type in Tickets, Ticket Types before customising fields for a specific project type.

  4. Use the Values tab on a template to set which ticket type the root or child ticket creates.

  5. Attach to-do lists to child templates rather than the root template, so checklists sit against the specific task.

  6. Add rules to child templates so a child ticket only gets created after a prior step completes, enforcing a sequence.

  7. Build a dedicated workflow per project type and branch it based on child ticket states rather than reusing generic ticket workflows.

Questions people actually ask

How do projects work in HaloPSA?

A HaloPSA project is a master ticket that has one or more child tickets attached to it, each running its own ticket workflow. You build this structure using templates: a root template for the master ticket and child templates for each subtask.

How do I create a new project template in HaloPSA?

Go to ticket templates, create a new template, set its group to Project, then use the Values tab to assign a ticket type. For most cases it is worth cloning the default project ticket type first so you can strip fields you do not need and add custom ones.

How do I add child tasks to a HaloPSA project?

On the root project template, go to the children section and add a child template. Each child template can define its own ticket type, to-do list, and rules for when it should be created, such as only after a previous child ticket completes.

Why did my HaloPSA child ticket create as a blank incident?

If a child template does not have a ticket type set in its Values tab, HaloPSA still creates the child ticket but defaults it to a plain incident with no specific workflow. Set the ticket type on the child template to avoid this.

Can I attach a to-do list to a HaloPSA project?

Yes, but it is better practice to attach the to-do list to a child template rather than the root project template. This keeps checklists tied to the specific task, such as installing software during a network audit.

How do I capture custom project information when starting a HaloPSA project?

Add a custom field, such as cost centre, to the root ticket type used by your project template. That field then appears on the intake form whenever someone starts a new project from that template.

Should I use different ticket types for different HaloPSA project stages?

Yes, splitting a project into separate child tickets by stage lets you route each one to a different level of engineer, for example a level one engineer for installation and a level three engineer for reporting.

Full transcript

2,273 words

Read full transcript

Connor: Hello, it is me once again, back by popular demand, or is it the fact I'm only one making these videos? I don't know. Let's say popular demand. So I've been asked to look at projects. Now, projects is massive and small both at the same time, and I'll explain why in due course. So long story short, projects are just an extension of tickets. When you make projects with project tasks, basically that's tickets with child tickets. There's a few extra caveats with projects where you can have like a budgets pane, and if there's a few extra nuances that come with it, and I'll demonstrate these in a few minutes. But essentially, projects is quite complicated in HaloPSA, but once you understand the premise, understand what you're working with, it can become quite simple.

A quick note before I start today's video: I have turned off the notifications at the system level, so no longer will you get annoyed by the Teams notifications. If you're not sure what I'm on about, go watch my last video, and you'll see exactly what I'm talking about. But let's get stuck into projects. Let me explain how projects work, what the idea of projects is. So a few things to start off with: when I say projects, it's just an extension of tickets. What I mean is, projects is just another ticket area. Now Halo, unfortunately, fortunately, kind of bags this into one thing. But essentially, there's a project section within Halo. You'll see it on the left-hand side here called Project Management. But there's very few settings you can basically add some budget types and such, as you know, black remote support. You could set a few settings in here, but typically it is just another ticket with child tickets and handles their own workflow.

So I'm just going to go show you very quickly how we're going to make a very simple project, how it all ties together, and how it looks like. So first thing is I'm just going to show you in here very quickly, and you can enable this button to show tickets and projects. And I'm going to basically say I want a new project as opposed to a new ticket or a new service ticket. And let me just clean up this. Then you pick a user who the project's for. If it is just for a customer and doesn't want to be assigned to someone at the site, you can just pick General user from that site. And let's say General user for Easy PC. This is a project internally for us.

And the way I like to do this is I don't show in my sandbox environment the ability to pick different ticket types, because I think that drives confusion. But the way I like to process projects is that you apply templates, because you have a template project, which I think logically makes sense, right? So I'm going to apply a template, and then you will see in here you've got a list of templates. So let's just say defaults to project, and you basically have a few different projects. So if I was to select now onboarding a new customer project and click use, I could go ahead and I could submit this.

Do a quick refresh, and that would then make a new project. So essentially, this is a master ticket which has a child ticket, or child tickets. And these are basically child tickets. So basically, what you'll find is there we go. It's now loaded. Quick refresh. You will see that in the project plan, each child ticket has created its own ticket. And in the project hash, you will then see the three tickets it's created. So you have your master ticket, or your parent ticket, and then you have child tickets below that.

So how do we go about building this? How do you go about customising this for your workflow? Let me show you now. So a few things to note: we are going to be talking a lot about tickets, although we are obviously on projects. But as I mentioned, this is all to do with tickets. And we're going to be mainly focusing today within templates. So when I apply a template, that is basically a ticket template. You just change the grouping where that is this. So you can apply project templates to project-based tickets. I'm going to make a new one, and I'm going to call this I don't know what should we call this.

Um, let's call this Cyber Essentials Plus object. Okay. I'm going to put this in the group project, and I'm going to click save. Then in the values tab, this is where you basically select your ticket type. So commonly you would think project, right? But if I just go ahead and very quickly do this and click project, you will see now that when I go back to the projects dashboard and I go to new project, pick a user and apply a template of Cyber Essentials Plus project, you will see that I have this form here, which may or may not apply to the project.

So what I recommend doing in most cases is actually making a new ticket type for the master ticket. I'm just going to go ahead, go to tickets, go to ticket types, and find project. I'm just going to go ahead and clone this. I'm going to call this Cyber Essentials Plus. Like so. I'm actually going to press it with project. And then I'm going to go to the field list and basically update a few things. So when I do a Cyber Essentials Plus project, I don't actually want to have an email in list. I don't want to see see anybody in. But what I might want to do is add, I don't know, a custom field of let's say cost centre. Again, irrelevant for this, but you'll understand what I'm doing in a second.

Then what we do is we go back to our template. We find our Cyber Essentials Plus project, and we're saying here that actually, when I start the project Cyber Essentials Plus, I want that to create a new ticket on the master template of Cyber Essentials Plus project. What that looks like now is when I go to projects and make a new project and I select that template to say project Cyber Essentials Plus project news, that will then obviously drive this initial form to capture information that I need. So in this case, you could have the cost centres. So that's all well and good. You can basically make the project, right? We can say it starts there, an opportunity date, whatever. Let's say submit.

Now, currently it isn't going to do anything else, okay? There's no project plan associated to this. I'll show you how this works in a minute. There's no billing set up because we didn't even touch billing at the start, right? And the progress, this is basically just a ticket. So there's nothing fancy going on here. So let's go ahead and delete this and now let's start building out our project. So we go back to configuration, we go back to ticket types, and we go all the way down to template, sorry, and then we look here and we see Cyber Essentials Plus project.

So a few things you can do: you kind of to-do list this, basically on a ticket, is a bunch of check boxes you can go through, and this is good in some scenarios. I don't particularly recommend this sort of route project. I would make a to-do list part of a child project, and I'll explain in a second what that looks like. So as a part of this Cyber Essentials Plus project, there's a few things that we need to do. So I can click here and I can click add, and what it's saying here is we need to pick a child template. How do we make child templates? What are they? What do they look like? I know they're burning in your retinas right now. Let's go ahead and click child template.

This is where we can make a new child template, and in this child template I'm going to say for part of the Cyber Essentials Plus, plus, we need to do a network audit. I'm going to put this again in Project tasks and click save. Values again, this is where you can get real or granular with this, but you could now say right, when we do the network audit subtask, I actually want it to make a new type of ticket. Now I'm just going to put not set here, but I'm going to add a to-do list, and I'm going to say let's add an ad hoc to-do list and we need to, I don't know, install Orca. That's something you use. Orca or Vic or Vic. There we go. We need to install Orca.

Okay, fine. I actually don't need that. We're going to install Orca. We need to install Cyber CNS. And let's click save. Then what we can do in our ticket template, or root template, if you will, is go to the project, go to children, and we could now add in that child template of network audit. And we can add rules to this. So we can say only create this child thing after something happens. So say if you had a three-step workflow: the first thing you had to do is install all these equipment, then you had to run a scan, and then you had to, you know, get the report. You could actually make these as three separate child tasks to drive your workflow and drive your team into doing that.

The reason I mentioned doing this way is because you might have different levels of engineers: level one, two, and three. And to install the software could be a level one engineer. To make sure it's running correctly, it could be a level two engineer. And then to, you know, homogenise or categorise the reports, could be a level three engineer. Again, you'll know better for your workforce how that works. I'm not going to put anything here. I'm just going to basically click save and click save. And what that looks like now is when I go back into service tests, projects, projects, projects, projects, remain projects Connor, and then click new project.

I can then select this. I can apply the template, which is the Cyber Essentials Plus project. It will then give me the form from that root ticket. I can do this, and then I can click submit. What you'll then see in the project plan is that the network audit child ticket exists. If I refresh, that should now create a ticket for me. As it has done: two four one nine. And you will then see that is created 2419. But unfortunately, because we've not given it a ticket type, this will basically be a blank ticket as incident, and then we'll start the incident ticket type workflow.

So that is essentially the crux of it, the meat and bones of it. And you essentially make a root project, you then add child projects to that. What I recommend doing in certain scenarios is making workflows. So what I would do is I would have a new workflow in my sandbox, as you can see here I drive a lot of workflows, but I would make a new one for a project, and then depending on the child ticket states, have new workflows based on those child projects.

I'm going to stop there for today, because that is an enormous amount of information to process. But to summarise, to recap: projects are just tickets with child tickets. You need to basically, or the way I recommend it, is to use templates. You need to make a root template that you can apply. You want to pick a ticket type as your root ticket type, and then you basically want to add children to that project and basically build out children templates in there.

If you do have a project in mind that you want me to help with or demonstrate on video, let me know. I've been Connor. Have a lovely day. Speak to you all soon. Bye.

Great experience with the Renada team. Not too often you find people who are not only competent but enthusiastic and genuinely invested in your success.
Netaryx Google Logo

Our Core Services

Offering support to enable sustainable success for your organisation.

Consultation Harness the transformative potential of an agnostic advice tailored to your unique business needs. From PSA implementation to ongoing support, our exceptional consultation services pave the way for extraordinary success. Find out more
Virtual Admin Let us handle the technical heavy lifting. Our expert team builds solutions, creates powerful reports and dashboards, and develops automated integrations - giving you more time to focus on what matters most: your clients. Find out more
Product Onboarding We understand that the first steps in adopting a new product can be daunting, we are here to guide you through every stage of the process with precision and clarity. From initial setup to advanced features, maximise the value of your product from day one. Find out more
Virtual Chief Technology Officer (vCTO) Benefit from a remote and adaptable technology expert to seamlessly combine strategic guidance and effective leadership to propel your business to new heights and empower your organisation’s technology ability. Find out more
Where to next? Get the cutting-edge tools to support your MSP business. Contact us today to receive a bespoke quote tailored to your specific needs.