Accounting Interface

HaaS and SaaS Billing in ConnectWise with QuickBooks

How to set up HaaS/SaaS products in ConnectWise Manage and transfer the cost and revenue correctly to QuickBooks using inventory or non-inventory products.

HaaS and SaaS Billing in ConnectWise with QuickBooks

When you lease hardware or software to customers under a HaaS or SaaS model, ConnectWise needs two parallel tracks: one to bill the customer on a recurring agreement, and one to record the cost of the underlying asset. How that cost flows into QuickBooks depends on whether you use inventory or non-inventory products.

Note: Both options require the Purchasing/Inventory license for ConnectWise Manage.

Choose your product type

Option 1 — Non-inventory

Use non-inventory class and type products when you want simplicity. The full cost of the hardware or software hits COGS in the same period as the PO date. This front-loads cost relative to revenue and keeps the asset off your QuickBooks balance sheet — which may not reflect reality if you own the hardware.

Option 2 — Inventory

Use inventory class and type products when you want the asset on your balance sheet. Cost flows from asset depreciation rather than a one-time COGS hit, and the hardware or software appears as an asset on the balance sheet in QuickBooks.

Set up the HaaS/SaaS workflow

Step 1 — Create the product in the catalog

Go to Procurement > Product Catalog and create a product representing the hardware or software.

Step 2 — Create a second internal company

Go to Companies > Companies and create a second internal company to serve as the bill-to for purchases.

Note: You cannot use the company listed in System > My Company for this — ConnectWise blocks billable items against that company from flowing into invoicing. The second internal company lets you generate invoices and POs that transfer correctly to QuickBooks.

Step 3 — Create a warehouse and warehouse bin (Option 2 only)

Skip this step if you’re using Option 1 (non-inventory products).

Go to System > Setup Tables > Warehouse and create a customer warehouse. Then go to Setup Tables > Warehouse Bin and create a corresponding customer bin.

Note: This setup lets you use ConnectWise’s standard valuation reporting. If you want a separate HaaS/SaaS warehouse with individual bins per customer, you’ll need custom reporting for valuation detail by bin.

Step 4 — Create the opportunity

Create an Opportunity for the customer that includes the HaaS/SaaS agreement. The opportunity needs two products:

Step 5 — Convert the opportunity to an agreement

Convert the Opportunity and select Agreement during conversion. Select only the agreement class product. Once the agreement is created, confirm the addition price matches the billing cycle. Invoice the customer as normal.

Step 6 — Convert the opportunity to a sales order

Convert the Opportunity a second time, this time selecting Sales Order. Select the inventory or non-inventory class product (not the agreement product).

Step 7 — Purchase the product

Go to Procurement > Purchasing > Actions > Create PO and create a purchase order for the inventory or non-inventory product.

Step 8 — Receive the product

Go to Procurement > Receiving and select Receive Products from the Actions dropdown.

Important: If you’re using Option 2 (inventory), make sure the product is received into the correct warehouse and warehouse bin from Step 3. Then mark the product as “Shipped” in Procurement > Product Shipment.

Step 9 — Transfer the PO to QuickBooks

Go to Finance > Accounting Interface > Unposted Procurement and transfer the PO.

For Option 1 (non-inventory), the full cost hits COGS at this point.

Step 10 — Invoice the sales order

Invoice the Sales Order. The invoice should have no sale amount — cost only. Change the Bill To on the invoice to the second internal company created in Step 2.

Step 11 — Transfer the invoice to QuickBooks

Go to Finance > Accounting Interface > Unposted Invoices and transfer the invoice.

For Option 2 (inventory), the cost hits COGS at this point.

Step 12 — Create a journal entry in QuickBooks (Option 2 only)

Skip this step if you’re using Option 1.

In QuickBooks, create a journal entry to move the cost from COGS to Fixed Assets. Then depreciate the asset normally using QuickBooks depreciation tools.

How the two options differ

Both options produce the same outcome over time: the agreement invoices sent to the customer increase revenue each period, gradually recovering the cost of the hardware or software.

The difference is when and how cost is recognized:

Ready to send better invoices?

Start for free. Your invoices should look as good as the work you do.

Get started free →