Create an invoice from hours
Turn a contractor's hours for a period into a ready invoice in a couple of clicks, with every line already filled in from the sessions they taught.
Updated July 18, 2026Creating a contractor invoice in InstructorHUB is mostly a matter of checking work that is already done. Because the invoice is built straight from the sessions the contractor taught, the lines, the hours, and the total are all there before you open it, your job is to confirm it, choose the terms, and issue.
If you need to raise an invoice that is not tied to a period's hours, for example a one-off flat fee, you can build a freeform invoice with your own lines instead. And a contractor can raise their own invoice from the instructor portal, which uses this same generator, see Raise a contractor invoice.
How it works
A contractor's invoice is built from the sessions they taught in a period, so the hours need to be in place first. Run the period as normal, or make sure the contractor's hours for the period are reviewed. InstructorHUB creates one draft invoice per contractor who has payable hours, so there is nothing to start from scratch.
Open the contractor's draft. Every session they taught is already a line, with the class, the hours, the rate, and the amount filled in. The subtotal matches what the pay run says they are owed exactly, because the invoice is assembled from the same figures, not a fresh calculation, so the two can never disagree.
While the invoice is a draft you can edit it. Change a line's description, hours, or rate, remove a line that should not be there, or add a custom line for something outside the timetable. The subtotal updates as you go. Once the invoice is right, it is ready to issue.
Issuing an invoice stamps it with a number, today's date, and a due date based on the payment terms you choose, 7, 14, or 30 days. From this point the invoice is a formal record, so its lines lock, any further correction is a void and re-issue rather than a quiet edit.
When you have paid the contractor, mark the invoice paid and record how you settled it, for example bank transfer, direct deposit, or check, and an optional reference such as the transaction number. That closes the invoice and keeps a clean record of when and how it was paid. See Invoice status workflow for the full lifecycle.