There are times when you want to dynamically choose when your team will do billing and non-billable work on the same ticket or project. There are a few ways to do this. You can do it using Autotask Contract Exclusions or you can do it via Work Types. Quick note: In my example on how to do this strictly with Work Types is going to show you a very cool way of handling projects where you sometimes have change orders or work outside of the fixed fee arrangement.
Using Autotask Contract Exclusions
This works for any Contract type, although it’s most common for Recurring Service contract. A Contract Exclusion lets you define a Contract as the default way to capture work and then anything excluded will either be sent to another contract or simply “excluded” and set to billable. (For using a secondary contract, think of a Remote Support MSP contract where an Onsite Support should flow instead into a Block Hour contract.)
To see how this works, let’s create a Recurring Service contract where we exclude our Development Role, our Onsite Support Work Type, and any Issue/Subissue for Hardware support. To do that, go to your contract and click on the Exclusions. Then, do something similar to what I’ve done here:
Now what? Well, there is nothing left for you to do. If this is the default contract for a customer and a tech selects one of the Roles, Work Types, or Issue/Subissues, Autotask will automatically remove the entry from this contract. The impact of that differs based on Contract Type. If this is a recurring ticket contract, the item becomes billable (unless it’s still non-billable at the Role or Work Type level). If it’s a T&M contract with special rates, the work loses those special rates, etc.
What if you want to roll the time entry into another contract, like in our example above of a recurring service -> block hour exclusion mechanism? Just set your “fallback” contract as the “Exclusion Contract” for this contract in the Exclusions:
Using Work Types
There is another way of handling billable vs non-billable work that does NOT require contracts. This can be a nice way to handle lots of small fixed-fee projects for example, e.g., if you fixed fee a Google Apps -> 365 migration every time, you can use this alternative approach vs creating a Milestone Contract. This also gives you a lot of flexibility when it comes to how you handle Change Orders and putting billable hours on a fixed-fee contract as well, so let’s try it out.
In Autotask Admin->Features & Settings->Finance, you can create new Work Types that handle this situation and reserve them for those projects. The benefit here is you can then create a single Project Charge for the payment amount, your team uses the Fixed Fee Work Type, and it handles itself. Again, this is used where you want to not use Contracts for everything.
Let’s create the new Work Type “Fixed Fee Project Work” by:
- Click on Billing Codes in Finance
- Click New->Work Type
- For Billing Method, select:
- Use Role Rate
- Non-Billable – Do not show on invoice
- Click Save & Close
You should have something like this:
Going forward, when you create your fixed fee projects, set the tasks to use this as the default Work Type and bill via a Project Charge instead of a Milestone Contract. MUCH EASIER!
What’s nice here is that your tech can then select ANOTHER Work Type that is billable if you have a Change Order or otherwise unsupported work on this exact project (for example, if the project SOW excludes onsite but the customer decides they do want an onsite). Milestone Contracts make this last part a lot of work, but this method makes it super easy!