In this lesson we will cover:
– What are expenses in Halo?
– Configuring Expenses
– Logging Expenses
– Invoicing Expenses
– Expense reviews
– Tracking Expenses
Important: The functionality outlined in this lesson is available as of v2.182+. If you are on a version prior to this you will still be able to log expense entries against a ticket but you will not be able to raise invoices for these expense entries.
What are Expenses in Halo?
Expenses are used to track and/or invoice additional costs associated to a ticket. These costs are not typical charges, therefore the expenses functionality allows you to log an ad-hoc cost against a ticket, under a chosen expense type, and have this expense be added onto an invoice for the customer. Useful for expensing costs such as fuel or hotels when completing a site visit.
Configuring Expenses
To enable the expenses functionality head to configuration > billing > enable the 'Expenses' module using the '+' icon.
Fig 1. Enable expenses module
Once this is enabled click into the module to begin creating expense types.
An expense type is used to categorise expenses. An item will need to be linked to each expense type, this item will represent the expense on the invoice.
Select 'View/Edit Expense types' > 'New' to create a new expense type. Give the type a name and link an item. You may wish to create a new item for each expense type.
Fig 2. New expense type
The item description will be used to represent the expense on the invoice, the tax against the item will also be used to calculate tax for the expense.
Logging Expenses
Once the expense module is enabled an additional 'Expenses' table will appear against each of your tickets under the 'Billing' tab.
Fig 3. Expenses against ticket
Here, agents can log expenses against the customer assigned to the ticket. When adding a new expense agents will need to enter details of the expense, including the cost and type of expense.
Fig 4. Logging an expense
Is billable– If this is enabled an invoice can be created for this expense. If unchecked an invoice cannot be created.
Reviewed – Allows you to mark the expense as already being reviewed. We will cover expense reviews later in this lesson.
An attachment can also be logged against the expense entry, useful for storing a record of receipts/proof of purchase against the expense.
Agents do not need access to invoicing to be able to log expenses against a ticket. If an agent does not have access to invoicing they will be able to see the 'Billing' tab against a ticket but they will not be able to see the charge types table here, they will only be able to see the expenses table.
Invoicing Expenses
Once an expense has been logged against a ticket you will be able to create an invoice for this from the 'Ready for invoicing' area.
Fig 5. Expenses area in ready for invoicing
Note: The ticket does not need to be closed for the expense to be invoiced.
An invoice can be raised by selecting the expense entry and 'create invoice'.
Although the expense is logged against a ticket it does not come under the 'billable labour' for that ticket. Therefore will not appear on the invoice when creating labour invoices. If you would like the expense to be on a single invoice for a customer/ticket you will need to ensure the expense entry is selected at the same time as the labour/ticket entry when creating the invoice.
Once the invoice is created it will look similar to the example in figure 6.
Fig 6. Expense invoice example
The item description will be taken from the item linked to the expense type.
The price of the line will be taken from the expense cost logged against the ticket, if the item has cost/pricing set against it this will be overridden. The tax will be calculated using the tax rate of the linked item and accounts codes will be taken from the linked item.
Once the invoice has been created the agent can navigate back to the ticket and log against the expense the date the invoice was created.
Expense reviews
Configuring Expense reviews
Similarly to labour expense entries can be reviewed before allowing an invoice to be raised for them. This is useful in monitoring the expenses your agents log.
To enable expense reviews head to configuration > billing > expenses, enable 'Enable Expense Reviews'.
Fig 7. Enable expense reviews
Once enabled you will need to set who can review expenses, this is determined by agent permissions. Therefore an agent's ability to approve expenses can be set per agent or per role.
Head to configuration > teams and agents > roles > select a role > permissions tab, see the permission 'Can review Expenses'.
Fig 8. Permission to allow an agent to review expenses
None– Agents with this role will not be able to review expenses. The expenses they log will need to be reviewed by another agent.
Agents I manage – Agents with this role can review expenses for the agents they manage. An agent's manager is set against their agent profile using the 'Manager' field.
All – Agents with this role can review expenses for any agent.
If an agent who has permission to review their own expenses (can review all or is their own team leader) logs an expense they will have an additional option against the expense entry to mark the entry as reviewed (see figure 4). This bypasses the need for them/another agent to review the expense later.
Now expense reviews are configured lets see them in action.
Reviewing Expenses
Any expenses that need reviewing will appear under the 'Expense Reviews' section of ready for invoicing.
Fig 5. Expenses awaiting review
Agents can either view all expenses that need review or only see expenses for the agents that they manage. If the reviewing agent only has permission to review expenses for agents that they manage they will not be able to see expense entries for other agents.
An expense entry can be selected to see more information on the expense, this will take you to the ticket the expense was logged against.
Expenses can be reviewed by selecting the checkbox against the entry > edit > review.
Once the entry is reviewed this will appear in ready for invoicing and and invoice can then be created for this expense.
Tracking Expenses
If you log expenses for tracking purposes rather than invoicing purposes you can create a report in your Halo instance to track the expenses that have been logged. Expense data is stored in the table 'Expense'. For a basic example expense report see the below example.
Data source for the report:
EXDescription as [Description],
(select uname from uname where exunum = Unum) as [Agent who Logged the expense],
EXAmount as [Cost],EXDateAdded as [Date added],
EXDateInvoiced as [Date invoiced],
EXDateReImbursed as [Date Reimbursed],
exreviewed as [Reviewed?],(select uname from uname where exreviewedunum = Unum) as [Reviewed by]
from EXPENSE
join uname on exunum = unum
Report results using the above query:
Fig 6. Expense report example