IT Contractor Invoice Guide: Billing for Software & Tech Work
IT contractors — software developers, network engineers, DevOps consultants, and QA specialists — face invoicing challenges that differ from other trades. Projects often shift in scope, billing models vary widely, and clients range from startups to large corporations with formal procurement processes. This guide covers everything you need to invoice correctly and get paid on time.
Required Fields for IT Contractor Invoices
Every IT contractor invoice sent in Canada must include:
- Your full legal name or incorporated company name
- Your business address and contact information
- Client company name and billing address
- Unique sequential invoice number (e.g., INV-2026-001)
- Invoice date and payment due date
- Description of services — be specific: "Web application development — user authentication module" rather than "development services"
- Billing period for hourly or retainer work
- Quantity and rate (hours × rate, or fixed project fee)
- Subtotal, GST/HST amount, and total due
- GST/HST registration number if you are registered
- Payment terms (Net 14, Net 30, or due on receipt)
- Accepted payment methods (bank transfer, e-transfer, cheque)
Hourly Billing vs Fixed-Price Project Billing
Hourly Rate Invoicing
Hourly billing is common for ongoing development work, support contracts, and projects where scope is uncertain. IT contractor rates in Canada typically range from $75 to $200+ per hour depending on specialisation, experience, and location.
Your invoice should list each work session or a summary of hours worked during the billing period. Include:
- Total hours worked in the period
- Agreed hourly rate
- Optional: itemised time log (useful for clients who want to verify hours)
Fixed-Price Project Invoicing
Fixed-price projects are invoiced based on milestones or project completion rather than time spent. Common structures:
- 50/50 split: 50% upfront deposit, 50% on delivery
- Milestone-based: 30% deposit, 40% at mid-point delivery, 30% on final sign-off
- 100% on completion: Only for small, fast-turnaround projects with trusted clients
Each milestone invoice should clearly state which deliverable has been completed and reference the original project agreement.
Retainer Agreements and Monthly Billing
Many IT contractors work on a monthly retainer — a fixed fee for a set number of hours or availability each month. Retainer invoices should be sent on the same date each month (e.g., the 1st) and include:
- The retainer period covered (e.g., "March 1–31, 2026")
- The agreed monthly fee
- Any overage hours billed at your standard hourly rate
- A brief summary of work completed (optional but builds client trust)
Send retainer invoices before the month begins if your agreement is pre-paid, or on the last day of the month for post-paid arrangements.
Sample IT Contractor Invoice
| Field | Example Value |
|---|---|
| From | Priya Sharma — Sharma Dev Solutions Inc. [email protected] | Ontario, Canada |
| GST/HST Number | 123456789 RT0001 |
| Invoice # | INV-2026-031 |
| Invoice Date | March 5, 2026 |
| Due Date | March 19, 2026 (Net 14) |
| PO Number | PO-CLIENT-88421 |
| Bill To | Acme Corp — Accounts Payable 200 Bay St, Toronto, ON M5J 2J1 |
| API Integration — 22 hrs @ $120/hr | $2,640.00 |
| Code review and documentation — 6 hrs @ $120/hr | $720.00 |
| Subtotal | $3,360.00 |
| HST (13%) | $436.80 |
| Total Due | $3,796.80 |
| Payment | EFT to: Royal Bank — Account 1234567, Transit 00123, Institution 003 |
Common IT Contractor Invoicing Mistakes
1. Vague service descriptions
Writing "development work" or "consulting" is not enough. Enterprise procurement systems often flag vague invoices for manual review, which delays payment. Be specific about what was built or delivered.
2. Not tracking time properly
Without a time-tracking record, hourly invoices can be disputed. Use a time-tracking tool during the project period so you can produce a detailed log if a client questions your hours.
3. Missing the PO number
Many corporate clients require a Purchase Order number on every invoice. If you submit without it, accounts payable will return the invoice, adding weeks to your payment cycle.
4. Not including HST on invoices to Canadian clients
Once you exceed $30,000 in annual revenue, you must register for GST/HST and charge it on all taxable services to Canadian clients. Forgetting to include it means you absorb the tax cost yourself.
5. Too-long payment terms for project work
Net 30 is standard for large corporations, but Net 14 is reasonable for smaller clients. For new client relationships, consider requiring a deposit before starting work to reduce non-payment risk.