Why HaloPSA billing plan combinations can silently swallow an entire agreement
A walkthrough for HaloPSA admins and MSP consultants on how tickets, charge rates, agreements and billing templates actually connect together
The short version
This HaloPSA tutorial walks through how a single ticket action turns into billable time, contract overage or a no charge write off. It covers charge rate rounding, agreement level overrides and why billing plan combination sequence decides which contract actually catches the work.
What you'll take away
-
Billable and non-billable are not invoiceable
A ticket can be billable yet never invoiced, because it sits against an all you can eat contract the client already pays for.
-
No charge time vanishes from contract history
Time logged as no charge never counts against an agreement's periodic history, even though the ticket itself still shows as billable.
-
The sequence of billing plan combinations decides everything
They run top to bottom like a waterfall. A rule sitting one line above another can catch every ticket first and starve the contract underneath it.
-
Rounding at ticket level versus action level changes the maths
Round at the ticket and HaloPSA totals every action first, then adjusts the last one. Round per action and each entry gets rounded on its own, which can double your billed minutes.
-
Overriding a charge rate per client is not the same as per agreement
You cannot set a client specific price in the charge type screen itself. Special client rates only live at the agreement level, applied against a specific work type.
-
Connor's rule: build billing templates in multiples of ten
Numbering sequence rows 10, 20, 30 in HaloPSA billing templates leaves room to slot new rules in later without renumbering the whole list.
Key insights from the episode
-
Untick default billable on a ticket type and existing tickets keep their old flag until you manually recalculate billing on each one.
-
Charge type settings under configuration billing let you set minimum minutes and round up only, round down only, or both, per charge rate.
-
Out of hours, weekend and holiday multipliers only apply to the portion of time worked outside the window, not the whole ticket.
-
Set client specific pricing at the agreement level under override charge rates, not in the global charge type screen.
-
Config billing general settings lets you choose whether rounding is calculated at ticket level or action level, and the two give different totals.
-
Contract types under agreements let billing templates route telephony, all you can eat and other agreement types automatically by category.
-
No charge time never posts against a contract's periodic history, so it has to be reported on separately if you want to track write offs.
-
Tick update all billing fields when changing ticket type, category or customer if you want HaloPSA to recalculate billing automatically on those changes.
Questions people actually ask
What is the difference between billable and non-billable time in HaloPSA?
Billable time is logged against a charge rate that can be invoiced or matched to a contract, while non-billable time is flagged so it never counts toward an agreement or an invoice. You can override this per ticket type, so projects can stay non-billable even while you still track engineer hours against them.
Why does HaloPSA show billable hours but not invoice the client?
This happens when a billing plan combination is set to don't invoice, which technically marks the ticket as not billable even though the work is included in a contract the client already pays for. Connor recommends still capturing that time against a contract or category so it can be reported on later.
How does rounding work on HaloPSA charge rates?
Each charge rate can have a minimum number of minutes and an increment for rounding up, down, or both. Whether rounding is calculated at ticket level or action level changes the result, because ticket level rounding totals all actions first before adjusting, while action level rounding rounds each entry separately.
Why does one HaloPSA agreement catch tickets meant for another agreement?
Billing plan combinations on a client run in sequence from top to bottom, so a rule higher in the list will catch matching tickets before a rule underneath ever gets checked. Reordering the sequence number on a combination changes which agreement wins.
When should I use HaloPSA billing templates instead of client level billing plans?
Billing templates make sense once a client has more than one agreement type or any overrides, because editing plan combinations directly on each client gets hard to manage at scale. A template lets you build the routing rules once, in a fixed sequence, and push updates to every customer using that template in bulk.
Can I set a different charge rate for one client in HaloPSA?
Not directly on the global charge type record. Instead, build the override into a specific agreement using the override charge rate option, then use billing plan combinations to route the relevant work type into that agreement.
Does no charge time in HaloPSA count toward a contract's included hours?
No, no charge time is never caught against an agreement or its periodic history, even if the ticket itself is still marked as billable. It has to be pulled into reporting separately if you want visibility on write offs.
Full transcript
6,669 words
Read full transcript
Collapse
Full transcript
6,669 words
Morning gorgeous, today we are talking about billing in HaloPSA. Now as simple as billing can be in HaloPSA, it's also very complicated. I know, what an interesting opening statement. Um, today I really want to talk about billing and contracts and just kind of give you some high level insights into how it all clicks together and things you want to be conscious of when you're building billing in HaloPSA, whether you're a consultant implementing HaloPSA or you're just a user submitting time in HaloPSA. Having that intrinsic understanding of what it is you're doing and what impact it can have is very very important. So let's jump into it and let me give you a deep dive today in all of the things that impact billing inside your environment.
Good day, my name is Connor Fagan and we are Renada Solutions. And today we're talking about billing inside of HaloPSA and tracking time and how that all links together and what it all means. So in front of you right now you can see a report that I use a lot to really start auditing builds when we work with new partners to understand what their tickets are actually saying to me as the person who's going to take over their build, so we know not to mess with anything really that's going to impact that.
So I'll kind of go through this to give you some insight of what we're going to cover today, but a few things to understand I suppose. So when we're doing something in Halo on a ticket or whatever it may be, we can log our actual time, right? So if I've said I've done three minutes doing a thing, that is my actual time I have spent doing the thing. Then you can have the billable or the non-billable time on the ticket, right? So we can have a charge rate of remote support and that is either billable or not billable to the ticket. And we can override that at a ticket level, so we can say these tickets are never billable, right? Now I'm not saying invoice-able, this will get complicated, but I'm saying billable, right? So we could say that we do 15 minutes of remote support and that's billable for this ticket type. We'll go over what that means soon. And then non-billable. And what you can also have is no charge. Now yes, no charge is non-billable, but actually in my head it sits in its own little box. We're saying we're not going to charge for this time. I don't care if it's billable or not, we're not going to charge for it. And I'll come full circle as to what that means.
Then we have billable time with adjustments and non-billable time with adjustments. What this means is if we have rounding applied to our actions or our tickets, it will show the adjustment time. So if I have three minutes of billable time but we actually round our billable time to 15 minutes, the adjustments in here will show 15 minutes or 12 minutes depending on how you want to display it of adjusted billable time. I think in this build it will show us 15 minutes, right? So we can see how much actual time we're doing versus what we're going to bill or invoice the client.
Okay, then we have contract hours. So this is basically any billable time logged against the contract. Um, it has to be billable. Non-billable time won't go against the contract. I'll double explain what these mean in a minute. We have contract overage, so if you do run a prepay agreement or a, you know, four hours a month contract, any overage will show on a ticket as contract overage. Then we have pay as you go, so this is all billable time that we're going to invoice to the client. So that's pay as you go. And then we have tickets or actions that are ready to invoice, how much we have invoiced out of that ticket, right? And then we have at the end billable travel hours, non-billable travel hours, and also a prepay column if I need to see how much time is getting logged against prepaid.
So a lot of moving pieces, right? So where does this all begin? How do you start understanding kind of this data set in your Halo build, right? Well, if we take it to the very core basics of Halo, right, what we do is we have a ticket, right? And for the most of you, or the most part, tickets are what we're going to be referring to, right? And when we have a ticket, we can do an action, right? So this is me doing an action, okay? And I can say that I've done five minutes of remote support and I can press save. So I've done five minutes here of remote support. Now this says here billable hours, so it says we're going to bill them 15 minutes, right? Well, um, we're going to bill the client that now. If they had a contract it would say here contract hours. And the importance of this is the fact that yes, remote support has a rate against it, but we can override that at the ticket level to say we never invoice or this time isn't actually billable to the client in any way.
So if I go to the incident ticket type, what we have here, if I edit defaults, I believe it is, we can say default for the ticket labour field is billable, yes or no. Default for the products are billable, yes or no. So if I untick that default for ticket labour is billable and go back to that ticket, whichever one it was, this one here, and recalculate the billing and it's still showing me the hours of 15 minutes because although we've updated the ticket type, it doesn't go back through existing tickets and make them not billable, okay? Again, that was my brain falling off its shoulder. So if I untick this box and then it will automatically recalculate if you have that enabled. If not, recalculate, what you'll see then here is no billable hours are being displayed. However, if you click on the billable tab, it will still show your contract or billable time is 15 minutes, even though this is never going to be caught against an agreement and is never going to show up for billable to the client because that is a difference between billable and non-billable, okay?
So that's the first thing, right? So we can have a ticket. We can override per ticket if it's billable or non-billable. So charge rates that would normally be billable against a contract or just prepay or pay as you go, billable or not, we can override that per ticket type, okay? So when you're reporting on this, it's really important you know what is or what isn't billable. Projects is a great example. 99% of the times I might want to know what my engineers are doing, if it's remote or on site, but I never want to invoice that to the client because I invoice them ahead of time. So I'll make the ticket type not billable, but then I can report on how much remote support with this project versus on site. There's many conversations about that, but I'll just leave that there for now. So that's the first thing to consider is if the ticket is billable or not. I've selected it and it is now billable.
So the second thing to understand here is that I am using the remote support charge rate and it says 15 minutes. Well, why does it say 15 minutes, Connor? Well, that's because in configuration and billing, under charge types, we have our charge rates. And here I have remote support. And what I say in remote support is, um, the rate is £100, or whatever currency you're in, dollars, an hour. And I want the minimum minutes to always be 15 minutes, either per action or per ticket. We'll go over that in a second. So 15 minutes here. And if I go over 15 minutes, I want to incrementally increase that either up or down. So you can round up or round down. So if I do 16 minutes on a ticket and it's round up only, I will always bill for 30 minutes, okay? Hope that's clear. If I did round up and down and I put in here 30 minutes, right, minimum, and then I want to round up in 30 minute increments, well, if I do 44 minutes on a ticket, it's always going to round that down to 30 minutes. If I do 46 minutes, that will always round it up. So 44 will round down, 46 will round up, 45 I think you kind of on the tether between what seconds it is, but anyway, the intent is so you're going to round up and round down, right? For the most part, I recommend only rounding up. However, depending on how you build your client, you might want to consider rounding up or down.
Then we have on our charge rates our multipliers. So if we do an action on a ticket outside of our working hours, say 9 to 5, it will 2x that time that is out of hours. So if it's at 4:00 p.m. till 5:00 p.m., I did an hour, that's going to bill them for an hour, right? If I did between 5 and 6:00 p.m. an hour, it's going to bill them two hours for the overage plus the hour in hours, so we're going to bill them three hours, okay? So again, it's not going to multiply the entire ticket, just going to multiply the time you did out of hours. Same applies to multiplier, same holiday multiplier, and contract multiplier. For the most part, when I build, I will always do an out of hours charge rate rather than let this do it automatically, because it may be you work 10, 15 minutes later quite frequently or your team do, and you know you might have flexi shifts they can start a bit later if they end a bit later, right? Um, and you might not want to have to be troubleshooting all the time fixing that. However, on the rare occasions where you do want to bill out of hours, have that as a manual field selection for me on charge rate is a viable option, okay?
So we have the remote support rate and we have in here the rate of that and minimum minutes and incremental minutes. So if I go back to that ticket here, I can see here it says billed hours. Well, why is it billable hours, Connor? How do you know it's not against the contract or it's going into infinity or whatever? The bit to understand on this is whenever you do an action on a ticket, it's going to check the company or customer billing plan combinations to decide what to do with it, okay? So if I go over here to TRNCN1, which is our dev build, and go down, we have this billing plan combinations, okay? And within here, what we can do is we can set a multitude of things. Basically, but the thing to note is what you're doing with the billing plans. So you can have it go pay as you go, you can have it against a contract if you have one, you can have it go to prepay, right? If you have a prepay agreement or prepay in the system, you can have it go there, or you can have it don't invoice. Now if you have it don't invoice, what we're actually setting at the ticket level, or what's happening to the ticket here, is we're saying to the ticket the ticket isn't billable when in fact it is billable. We're just not invoicing for it because it's included in something. So I would recommend is we capture that time against something so we know where the time is going so we can report on it later.
The reason being is, and there's a million ways to skin a cat with this, but for me I want to run a report on all of our billable versus non-billable time versus how much no charge we've done. So non-billable could be projects, it could be internal tasks, it could be a multitude of things, right? I want them to be not billable but I can track it. And then our billable, I want to track against contracts or prepay or whatever we need so we can look at that split, how much billable versus non-billable time are we doing? No charge, what I typically recommend we leverage is when you're basically saying I'm giving you free time to the client, right? So let's say they have a printer that's faulty but it takes me four hours to fix it because I don't know what I'm doing, right? We're not going to invoice the client always for four hours. You might invoice them one hour of remote support and then put three hours on there no charge, saying oh, this took longer than we thought it was going to, it turned out to be blah blah blah blah, but at least you're logging in your time of three hours so we have it so we can report on it later.
And breathe for a second. Quick recap. So we have a ticket, we have a charge rate, and the charge rate has a value on it of let's say £1 or $100. And on there we have minimum minutes up or down. And when we log that, it looks at the client and looks at their charge rates. And depending on what we select in here, so site, ticket type, category, multitude of things, will determine where that ticket goes in the system or what it's logged against, I.E. a contract, I.E. pay as you go.
Now you can also override that £100 an hour down here with overriding charge types, which again is something you need to be conscious about. So in here you could say whenever we do remote support for this client it's £200 an hour. And you can build this out here and say £200. However, if you build an agreement for a client and say for the next year you get remote support for I don't know, let's say Telephony, and you only want to bill them £50 an hour for it, what you can't do is say in the overriding charge rate here remote support for Telephony is only £50. We don't have that control in here to do that. What you can do though in an agreement level, if I just pick TRNCN1, and I could do this V special rate, we could say they get, um, no hours per period, so everything that comes in here is billable. However, you can override the charge rate here at the agreement level and say if it hits this agreement then override it. Well, how would we do that?
Well, you could have remote support. So as of the 1st of July the rate is £50. And we override it to be £50, 50 minimum 15 increments. And what we can say here under billing plan combinations is whenever we do a ticket with the work type of Telephony support, right, log it against this agreement. So when I go back to the client and look at their billing plan combinations down here, what I can see is that whenever we do V VoIP tickets, because Telephony support is included, it's going to be the void special rate.
To demonstrate, I could go to service desk. I could make a quick ticket for TRNCN1. I could make it Telephony. I could triage it as whatever. Don't. If I pick something here we go. So, um, Telephony is selected. I can then close this ticket with one hour of remote support like so. And you're seeing billing that we are billing for an hour. I can then go to invoicing awaiting review. Sorry, I had end user closure confirmation on so it wasn't appearing. But what I can do is go to awaiting review contract overage because they have a contract but it's gone over their zero hours. I can say yes I want to invoice that. And then I can go down here to £1470 create an invoice. And hopefully this will show me £50 because it's hit the agreement, it's applied the override and should hopefully be 50 in here, which it is.
So again, you can get quite creative when you're talking about billing to have overrides at a contract level rather than at a blanket customer level if we need to have special rates for special things, okay? Now I mentioned earlier about action and ticket level billing as well, because some people, or some companies, bill very differently. Again, really important to understand when you're setting up your Halo and going through all of this.
So if we go to config billing general settings and invoice creation, what we have here is charge type settings. And we can do calculate charge rounding at the ticket level or if we on ticket, what we're doing is we're calculating our charge at the action level. Um, what that basically means is if I make a new ticket for here for TRNCN1 for network support and I triage it as this and I add a comment. Now let me just add an asset. One day I'll fix this, I promise. And I add five minutes to remote support. What you can see is it's 15 minutes. If I add another one though for another five minutes, what you'll see now is it says billable hours is 10 minutes. Well, why the hell has it done that, Connor? Well, because we have rounding at the ticket level, it's basically saying we want to always round all of the time to 15 minute increments, okay? So because I've done two things here with remote support, is basically adding them both together, right? And it's saying right, 10 minutes, cool, that's total time, we need to do an additional five minutes, right? So the way Halo works, this is a little bit backwards in my head, but I get it. Is it basically says for the action before it, just post the original time. So because I've logged five minutes, just say it's five minutes billable. And then the next action runs the math. So what you'll see here is that if I go to time tracking, you'll see the rounding adjustment is five minutes because we've already had two five minute actions we need an extra five somewhere, right? Then it does a rounding here of five minutes, okay? So then we end up with billing of 15 minutes.
Now if you went to config billing and did it at the action level, what you're saying is is that every action on the ticket needs to be rounded to 15 minutes itself rather than at a ticket level. So if I just recalculate billing on this ticket super quick, what you'll see now is that both tickets are rounded to 15 minutes. And we are billing for, if I refresh, 30 minutes total time. And again, these small tick boxes can have such a massive impact on your billing. And what you'll notice under each action is there is a rounding adjustment per action of 10 minutes. And again, what you'll see it's billable because the ticket is billable rather than it being overridden into non-billable, which for me is something completely different.
If we didn't have an agreement capture in the time, it would also show ready for invoicing once closed. Again, another check box to be conscious about. If you did allow the option to invoice for tickets that are in progress or not closed, that would be checked at this point. And, um, and again there's loads of other things to deep dive into at some point. You'll also see the billable total, so it will tell you how much in dollars, pound, you're actually going to be billing for that action on that ticket. Um, so again there's a ton of data in here, really worth deep diving into at a later date.
Just going to set that back super quick so that's enabled again. Now I want to do it at the ticket level. This is what I see in 99% of builds. As we build for the ticket not for each action on the ticket, okay?
So quick recap. We have a ticket. We do things on the ticket, either you know remote support, on site. We leverage our charge rates, okay? Um, when we do that, it then looks at the client. So this client here looks at the billing and then looks at this billing plan combinations to know where to route the ticket. Is it pay as you go? Is it prepay? Etc., etc. When it then points to that agreement, we can then say with the agreement in this case that they get no hours included a month, so everything that hits this agreement is billable. This is yearly for some reason but whatever. Um, is always billable. And then we want to override any tickets that are caught by this agreement. So any Telephony support tickets hit this and then override it to £50, okay?
Um, something else to know is when we're talking about, um, or you can eat agreements, okay? And I'm going to make one here for TRNCN1. Generate a reference. Doesn't matter. We'll just call this "what you can eat". I can then say I want to include everything to be encapsulated by this agreement. So I called agreements time encapsulation because that's what they're really doing. Is rather than billing for it, they're encapsulating that time against the agreement. And again, what you can do is you can add the charge rates in here and say what you want to capture, right? So I could say any remote support is caught by this agreement and any on site support is caught by this agreement. And you can get, you know, if you certain category, etc. You can do any time or with inside or outside of working hours, but that's a video for another day. So we can say we're going to log all of that time to this agreement.
The problem is, and I'm doing this on purpose, is the fact that we haven't considered here our sequence. Now if you're quite a, you know, big standard MSP where you only have one agreement per client, you don't have any overrides, you know, it's no complex billing, this works for you almost all the time and it's so easy to do. However, if I just go back to the customer TRNCN1, what you have to always remember is the priority or the hierarchy of the billing plan combinations. These billing plan combinations are sequential, meaning they work from top to bottom and go through it in order.
Now in this case we've got lucky because I made this one physically first and although it's the same sequence as on site support, it appears top of the list. However, if I was to be a bit factious and just make this number two, what you'll now see in here is that it is underneath the first one. So what this means is when a ticket looks at this client's billing plan and it works through each line in sequence, it's actually never going to hit this one because we've said all on site support is caught by the first rule.
caught by this agreement and all remote support is hit by this agreement so slight fob bar there and what I just said but if you ever do any on-site telephony support it's never going to hit the telephony agreement because it's going to be caught by this one however if you do any remote support it will be caught by this agreement because sequentially it's higher up in the list so when you start getting into this level of complexity this is when I recommend leveraging billing templates which is a nice transition into billing templates.
So just a quick recap before we do so if you are quite basic and you just have a single client with a single contract and you build out the list of things on their billing plan combinations within here so you can say this will work for you perfectly fine rinse and repeat away you go great when you start adding in tangential things what you don't want to be doing is building these out at the agreement level because the hierarchy of them at the client level is very very very important and if you then start doing this and having to go and edit these this is now when I would always steer a customer into billing templates.
So what are billing templates Connor you're talking a lot there's a bunch of things going on well billing templates is if you go to billing you'll have to turn them on if they're not there over here it's billing templates is essentially what I've just said okay so you can make here an example template or we'll make one together and we could call this your customer plus VoIP override okay and we can build this out super quick so I can say if we ever do any telephony support I want to go to a contract and then you have to think about contract types.
So going back over to agreements if I just make a new one one of the things you can set when you're doing it is the contract type or the agreement type this usually when I'm building for clients isn't super important if we've only got 50 agreements in here and they're all managed service it's quite vital if we're doing different types of agreements maybe we have VoIP and ISP or lease line agreements and managed service so we can report on it but then if we leverage that in billing templates this becomes quite powerful.
So what we're just going to do very quickly is go to contracts and agreements if I could see it on my screen agreements scroll down to contract types in here I'm just going to rename this to be IT support prefix doesn't really matter and we'll change this one to telephony that'll do and there we go right so we now have two different agreement types so when we're then building out our billing templates we can leverage these to say if we have a contract with this thing go over here we have a contract with this thing go over here that's X Y and Z.
So if we just go back to my billing templates and we'll make a new one and call this YouTube billing template what we can do is a few things we can say right I want to make sure that whenever I do any telephony support that it goes to a contract that's defined as telephony I want to make sure that when we do any remote support it goes to the IT support contract I want to make sure when you do any on-site support it goes to the contract of all you can eat right so we're starting to build out these rules here.
But the good thing about this is if you then decide you know we apply this to our clients and decide later down the line actually what we want to make sure we do is whenever we do any project work right so whenever we do the ticket of type project what we want to make sure we do is we put that somewhere else going to do an example of don't invoice for a minute now again what we have to consider here is the sequence so what I recommend when doing these is I always build these out in multiples of 10 and you if you ever come across one of my builds anyone out there in the wild you will see this.
So I'm just going to do this as multiples of 10 just for a minute and then we will restructure these in a second so we have four things so you need to understand what's going to clash and what isn't and this isn't an easy thing in the world to do well because this is a don't invoice I want to make sure this is always at the top so I'm just going to make this number one right we have enough room underneath that that's fine and then you want to make sure the next one is a telephony support because again we don't want anything to catch this before telephony support.
However if we're doing project work that's fine capture it against don't invoice and then when we look at remote support and on-site support we want those to be caught against those contracts there and if it doesn't match any of these we want it to go as pay as you go you can create an agreement if none exists however that's just going to make a single agreement which isn't really going to work in this scenario so I'm going to keep everything else here just left alone okay.
The good thing about these are that when you apply it to your customer and let's say you change it you can actually change it in bulk down the line but we'll go through that in a second so if we just go over to agreement I know we need a telephony agreement and an all you can eat agreement for this client so if I go to agreement over here I can see I've got this VoIP special rate but I need to make sure the contract type is telephony what I want to make sure I do on this all you can eat one is make sure our contract type is all you can eat.
What you can then do is go to the customer go down to billing and you can apply a template and what you should notice is it adds in all of those things in the right order and it will match it against the billing plan agreements if they exist if they don't exist then it says create a contract you want to stop this go and make the agreement or contract and then apply it again what this means though now is depending on what we do on the ticket it will be routed to the correct agreements.
So if we just start with something simple so TRNCN1 and we make this actually a project triage is fine like this submit it and I set this up as a migration of Res6.5 to code doesn't really matter so if we then go here add in a project no of 50 minutes of remote support what I should see on this now when I edit it is that actually this is classed as not billable so I mentioned early about things being billable versus non-billable well they should have matched that agreement or billing plan combination sorry and yep we don't invoice for any project so make it as not billable right.
So again it's important to note this if you are doing that don't invoice or you're saying on the ticket it's not billable that this is actually what it's doing is removing that flag basically okay so that one is perfectly fine good as gold if we then do another ticket for an incident for TRNCN1 and I say this is IT support doesn't really matter and just select something here if I triage it and add in the fact that this is a remote support job and do test and press save what we should notice is this is contract towers which is fantastic.
And to validate what contract that is going against you can press the dots and go down to time tracking and you can see the billing plan or the contract ID that you're capturing it against if though I change this work type to telephony support and you'll notice here all you can eat is unlimited and VoIP is currently zero if I edit this and now go back to it here you should now see it change to VoIP special rate now that changed automatically because I have a setting on to do that I'll show you that in a minute.
But the purpose is is that our billing plans are working correctly because depending on what we're doing depending on the ticket type or the fields it is routing that to the correct places so you'll now see it's billable 15 hours because it is telephony support if I put it back to IT support you'll see this little whirr in the top right and it'll change to contract towers and then point to the right agreement and you'll notice that although we're not invoicing for IT support because it's included right it's against the contract the ticket is still marked as billable because it's billable work.
Um whether or not we invoice for it is tangential because it's caught by a contract but they are paying for that contract that's kind of the difference in that one if though I was to do a comment and say no charge and do test what you'll see is that is not logged against anything because no charge isn't caught into like an ether of a black hole and you'll see it is billable however no charge is never caught against the contract or anything it's kind of just lost in the time and you have to report on it as its own thing.
You can report on how long a ticket took um I just mean in terms of breaking it out so again super important to note this will the contract so if I go over to this all you can eat and look at the periodic history it will show me 15 minutes of logged time even though I did 2 minutes or whatever of no charge because no charge isn't caught against the agreement okay so again something to bear in mind and be conscious about when you're reporting and doing your lines in HaloPSA and that video has been long and there's a lot to digest there um so that's basically it for me I think for now.
In terms of this overview so things to understand is that we have a ticket the client is what's the priority of what's billed or not if you're super simple doing it at the agreement level is perfectly fine in my opinion and you can say yes go to this agreement or don't go to this agreement however once you're getting built up in these complicated ways you want to start leveraging billing templates never set a default contract and build out these billing templates and the benefit of doing that is because they're getting slightly more complicated they may change.
It's the fact you can go to this you can edit it and make changes and then update all your customers in bulk who have this template to reflect your new way of working and that is it that is a deep dive into my brain of how I approach billing and Halo and all the things we must consider all the time when doing things the last little note today if you were curious um I have the box ticked here update all billing fields when changing ticket type category or customer that is why when I was changing the category the ticket would recalculate again because that is what that does.
So that is billing there's a lot to think about when you're doing it there's even more to think about when you're a consultant going in trying to fix it you got to bear in mind you don't screw over a company's data set but hopefully this will give you some high level understanding of all the things you can and can't do in there and hopefully this will set you straight in the future so my name is Connor Fagan have a beautiful day and I'll see you all soon bye-bye.
Author
Related tutorials
Our Core Services
Offering support to enable sustainable success for your organisation.