How to Remove WIP from Internal Jobs in Xero Practice Manager
Fix internal job WIP issues and keep your practice reports accurate

Video Overview
Removing WIP from Internal Jobs in Xero Practice Manager
A common issue in Xero Practice Manager is the incorrect setup of internal tasks as billable work. When this occurs, time recorded against internal activities is treated as Work in Progress (WIP) and productive time. This creates two problems: the firm’s WIP balance becomes inaccurate, and productivity reporting no longer reflects the true performance of the team.
Internal tasks should generally be set up as non-billable. Activities such as administration, internal meetings, training, and general practice management work are necessary, but they should not be treated in the same way as client-facing billable work. In an Accounting Practice Management environment, the accuracy of internal data is essential because reporting decisions often rely on how time is classified.
The first step is to create a clean internal job. This can be done by setting up a new job under an internal client, such as the firm’s own organisation name. The job should be named clearly, for example “Internal” or “Admin”, and should relate to the current financial year. Rolling internal jobs over each year is also good practice, as it avoids building up very large volumes of timesheet entries on a single job, which can make some pages difficult to load.
When adding tasks to the new internal job, each task should be added individually and marked as non-billable. It is important not to use the “Add Multiple Tasks” option if it does not allow the billable status to be changed. Firms may also benefit from creating a separate internal job for leave, so that leave and general internal work are reported separately.
Once the new job is created, historic timesheets can be moved from the old internal job to the new one. Where possible, the timesheets should be moved using the “Move Timesheets” option. During this process, the most important step is to update the billable status of the timesheet entries to match the destination task. This allows historic billable internal time to become non-billable, improving the accuracy of historical reporting.
However, if the old internal job contains too many timesheets and the move page will not load, the only practical option may be to remove the WIP from the invoice list. This clears the WIP issue, but it does not correct the underlying productivity history. In that case, reporting will only be reliable from the point the new internal jobs are used correctly.
After the timesheets have been moved, the old job should be checked and archived to prevent the team from continuing to record time against it.