When it comes to business, invoicing is non-negotiable—you just can’t do business without it. This holds true more so for MSPs, who create invoices for clients for a variety of the services they provide. Laptops, auxiliary hardware, service labor, software subscriptions... the diverse list of services goes on.

In SuperOps.ai, we understand the need for robust invoicing. That’s why we took a fresh new approach to MSP invoicing, and built an invoicing module that’s clean, intuitive, and helps you get work done.

In this guide, you’ll find everything you need to know about setting up your invoicing process from scratch, what we’ve done differently, how it works with other tools you’ve integrated with, and more.

What invoicing in SuperOps.ai does

You can get a whole lot done with the invoicing module in SuperOps.ai. With the invoicing module, MSPs can:

  • Audit worklog items to choose which ones make it to the invoice

  • Generate invoices and edit them

  • Send invoices to clients manually or automatically

  • Get payments for invoices

  • Automate different segments of their invoicing pipeline

    • Automatic adjustment against retainers mentioned in contracts

    • Setting a recurring invoice schedule

Let’s start with the basics, of how you can create a worklog.

How to create a worklog

In a nutshell, a worklog means a portion of work that the MSP’s completed for a client. It could be a piece of hardware, a software subscription, or any form of labor that’s supplied to the client, either on reques or in order to resolve an issue.

You can create worklogs for clients by adding them under the respective tickets they’ve raised.

1. Click the modules icon on the pane to the left. Select the tickets module under my workspace to open up your ticketing section.

2. Open a ticket, and click the stopwatch icon on the top right of the window.

Adding a worklog.png

3. This opens up a small box, where you can define the worklog. You can add a date, choose what sort of worklog you want to add, along with comments to add specific details. Click add worklog to create it. You can find all worklogs associated with the ticket in the worklog tab, within the ticket.

Once you’ve created the worklogs, they’ll be added to the invoice audit queue. The invoice audit section lays out all the work items your team has completed for approval, where the admin can choose which items make it to the invoice.

How to audit worklogs

1. Click the modules icon on the pane to the left and select the invoice audit module.

2. Inside invoice audit, you’ll see a list of worklog items that require your approval.

Invoice audit.png

3. Here, you can revise the billable quantity and unit price of the work item. You can also add some sweet discounts to a work item before you approve it to give clients a little surprise!

4. In the case of items that consume block hours/money, you’ll find a badge that displays the remaining quantity of block money/hours for the client after taking the cost of the item into account.

5. Once you’ve approved a worklog item, the item will then be moved to the approved items section. (If you’ve rejected any items, they’ll be moved to the ignored items section instead.)

6. Worklog items in the approved items section will be automatically added to the next scheduled invoice for the client.

Approved items.png

7. If they need to immediately send an invoice, they can do so right away by clicking the generate invoice button on the top right and selecting a client.

Now that we’ve seen how worklog items are invoiced in SuperOps.ai, let’s take a look at how recurring items and subscriptions are managed in the invoicing pipeline.

Managing contract items

  1. When you open up a client contract, you can see a list of items that the client is billed for. You can add service items under different categories in the contract:

    • Contract invoice items: This is where recurring items like subscriptions get added to the contract.

    • Custom pricing: Custom pricing helps you override the costs listed for items in the service catalog. If you want to throw in some sweet deals for your client for labor and block hour services, this is where you add those services.

    • Conditional pricing: You can define conditions and a modified cost for a service item. When these conditions are met, the service item is then added to the invoice with the modified cost.

    • SLAs: You can associate the SLAs that will apply to this client’s contract here. You can either associate existing SLAs or create a new SLA that will capture the unique requirements for a particular client. You can also associate multiple SLAs to a single client, but they’re executed in the order they’re added. So make sure to add your most important SLAs first.

2. For recurring items, you can set the subscription cadence and the billing cycle for them by clicking the item. Select a subscription cadence, either monthly or yearly, and add a billing start date and end date. Based on the cycle, the item is pushed to the approved items queue, where it can get approved and added to an invoice. For example, in the screen below, the item will get pushed to the approved items queue for the first time on May 1st 2022, and on the 1st of every subsequent month until the billing cycle ends on 1st May 2023.


3. The effective date comes in handy in situations where an item needs to be active before the billing start date. With an effective date, [SuperOps.ai](http://SuperOps.ai) will automatically calculate the prorate charge for the item between the effective date and the date of billing. The prorated amount will be displayed automatically, and you can choose to generate an ad-hoc invoice immediately for the prorated amount. By default, the item will go into the approved items queue, where you can approve it and add it to the invoice.

4. You can still change the quantity of the service item at any time. You can add an effective date and the prorate for the increase in quantity will be calculated separately. Any decrease in quantity will be in effect from the next billing cycle automatically.

Changing quantity - billing queue.jpg

5. Once billed, the contract items will not be editable. If you’d like to make any modifications to a contract item, you can add an end date and create a new line item.


All the adjustments to block hour or block money items are finalized at the invoice approval stage. Once a worklog is approved in the invoice audit, SuperOps.ai adjusts this amount with block hour/block money immediately. After this point, the item will not be editable, since the deduction calculations have already taken place.

Generating an invoice

If the client asks for an invoice, or you need to make hardware purchases and you require upfront payments, you can quickly create an ad-hoc invoice to send to your client. You can add items from your service catalog, or quickly push items waiting in the billing queue onto an invoice.

Here’s how:

1. Click the + invoice button on the right to create a new invoice.

Create invoice - Billing queue.png

2. Next, select the client and site for which you’d like to create the invoice, and click the service catalog to add items to the invoice. Here, you’ll find the items waiting in the billing queue, and items across different categories in the service catalog.

Create invoice - add worklog.png

3. Once you’ve added all the service items, you can edit the costs, add discounts, add notes and apply tax to finalize the invoice.

4. Once the invoice is ready, you can select save and send to open a chat window where they can negotiate with their clients or save it as a draft for later.

Create invoice - save and send.png

Once an invoice is generated, they can see a list of all the invoices generated under the all invoices section. You can perform a bunch of actions to control how these invoices reach your clients—right from deciding when an invoice gets sent, to helping clients pay the invoice.

1. MSPs can choose when an invoice gets generated.

For each client, you can define an invoice schedule, to ensure that invoices get sent to clients without skipping a beat, automatically. Here’s how:

  • Navigate to Modules > Clients and select the client you’re setting things up for.

  • Under the invoices tab, select invoice settings on the left panel.

  • In the invoice settings section, you can define the invoice schedule, and specify exactly which day of the month the invoice gets generated, when the cycle starts, and the due date for each invoice.

  • You can also enable site-specific invoices, to ensure that certain service items are available only for specific sites for the client.

  • You can also create empty invoices, without any line items or charges, to send your clients, even if they haven't used any of your services.

  • Additionally, you can also choose to include or exempt taxes while generating these invoices under tax configuration.

2. MSPs can edit invoices before they’re sent to the client.

It sucks when your client comes back to you regarding a typo on the invoice they just received. In SuperOps.ai, all invoices are created in the draft stage by default (unless auto-push to QuickBooks/Xero is enabled.) When it’s in the draft stage, the invoice edit option helps you clean out any of those pesky typos before they’re sent.

  • Navigate to Modules > Invoices, and select the invoice you want to edit.

  • Once you’ve opened up the invoice, you can see the invoice details, and a set of actions you can perform at the top of the invoice.

  • Click the edit invoice button to make changes to the invoice item, quantity cost, discounts, and tax, along with any additional details you’d like to add. Modified invoice items will be highlighted in yellow to let you know that things have changed. You can add a new service item to the invoice too!

  • Once you’re done making the changes, click the regenerate invoice button to generate the updated invoice.

  • You can then click send invoice to send the revised invoice to the client for review, and align with them on the costs.

  • Once the negotiations are done and the final invoice is ready, you can push the invoice to either QuickBooks/Xero. Any changes made to the invoice in QuickBooks/Xero will be reflected here in SuperOps.ai as well.

  • You can also choose to delete or void an invoice if it’s no longer necessary. Deleting an invoice removes it from SuperOps.ai, so you can void it if you don’t want to send it to the client but still like to keep a record of it.


If an invoice is deleted, then all the line items in the deleted invoice will be moved back to the approved items queue. The same applies for individual deleted line items as well.

Once the invoice is finalized, you can either send the invoice to your clients directly, or you can choose to push it to third-party bookkeeping tools you use, like QuickBooks or Xero.

How integrations make your invoicing better

There are a variety of integrations available in SuperOps.ai, across bookkeeping, subscription management, and payments that can greatly enhance your invoice process.

  • If you already have your complete invoicing pipeline set up in bookkeeping software like QuickBooks or Xero, you can push invoices from SuperOps.ai to these tools and manage them all in one place. Here are links to learn more about integrating with QuickBooks and Xero.

  • By integrating with Stripe, you can help clients pay their invoices right from within their SuperOps.ai client portal. They can see their invoice history, add their payment methods, set up recurring payments and more. Click here to learn more about integrating with Stripe.

Did this answer your question?