// AI SUMMARY

Quick answer: ServiceM8 only marks an invoice paid when QuickBooks Online holds a payment applied to an invoice that ServiceM8 sent over. If the invoice never reached QuickBooks, was made in QuickBooks, or the money was entered as a plain bank deposit, ServiceM8 keeps showing it as outstanding. Find which one happened before you touch anything, or you can end up with the payment recorded twice.

How is the ServiceM8 and QuickBooks Online payment sync meant to work?

ServiceM8’s help center lays out the rules:

  • An invoice goes to QuickBooks Online when you approve it on the Invoicing page.
  • A payment you record in ServiceM8 is sent to QuickBooks Online.
  • A payment received in QuickBooks Online is imported into ServiceM8.
  • An invoice created in QuickBooks Online is not sent to ServiceM8.
  • Delete a payment in QuickBooks Online and ServiceM8 deletes it too.

So the sync runs both ways for payments, but only one way for invoices. Most “paid but showing unpaid” problems come from that gap. It is also why one QuickBooks invoice covering several jobs leaves those jobs unpaid in ServiceM8. Here is what to do instead.

Why does a paid invoice still show unpaid in ServiceM8?

CauseHow to spot itFix
The invoice never reached QuickBooks OnlineA red X sits next to the job on the ServiceM8 Invoicing page. Hover over it to read the reason.Clear the reason, then resend the invoice (steps below).
The invoice was approved at $0.00The job has no priced line items. ServiceM8 does not send zero-value invoices.Add the line items, then resend.
Someone made the invoice in QuickBooksQuickBooks has an invoice for the job that ServiceM8 did not send. The payment sits on that one.Move the payment onto the ServiceM8 invoice in QuickBooks, then delete the extra invoice.
The money went in as a bank depositIn QuickBooks the invoice is still open, and the deposit is not linked to it.In QuickBooks, record the payment against the invoice with Receive Payment.
A ServiceM8 Pay deposit is waitingThe customer paid a deposit on a quote. QuickBooks holds it as a separate sales receipt.Complete the job, take the balance, and approve the invoice.
The connection droppedIn QuickBooks, the Apps tab no longer shows ServiceM8 as connected.Reconnect ServiceM8, then check the invoice again.

The third and fourth rows are general QuickBooks behavior, not something ServiceM8 spells out. Check them in your own books.

On Xero instead? Its most common sync failure is a number clash, not a payment. Here is how to fix the Xero “invoice must be unique” error.

How do I resend an invoice from ServiceM8 to QuickBooks Online?

  1. Open the job. The job search above the job list finds completed jobs fast.
  2. Set the job status to Work Order.
  3. Click Save and close the job.
  4. Reopen the job and set the status to Completed.
  5. Click Save and close the job.
  6. Go to the awaiting approval page and approve the invoice again.

That sends the invoice to QuickBooks Online again.

How do I avoid recording the payment twice?

This is where people get burned. ServiceM8 sends every payment you record to QuickBooks Online. If the money is already in QuickBooks and you also mark the invoice paid in ServiceM8, QuickBooks gets a second payment.

Pick one side and stick to it:

  • Money already in QuickBooks: fix it there. Apply the payment to the ServiceM8 invoice and let it import.
  • Money not in QuickBooks yet: record it in ServiceM8 and let it send.

If a wrong payment already went across, delete it in QuickBooks Online. ServiceM8 will not let you delete a payment once it has been sent.

Why does a ServiceM8 Pay deposit make the invoice look unpaid?

With ServiceM8 Pay, a deposit taken on a quote goes to QuickBooks Online as a sales receipt. The line item reads “ServiceM8Deposit” and the description reads “Deposit for Job #” plus the job number.

That receipt stays separate until three things are true: the job is Completed, the job is fully paid in ServiceM8, and the invoice is approved to QuickBooks. Until then the QuickBooks invoice shows the full amount open. Say a customer puts $900 down on a $3,600 panel upgrade. QuickBooks shows a $900 receipt and a $3,600 open invoice until you finish and approve.

Deposits also need a setting. Go to Account > Settings > Preferences > Invoicing, find the QuickBooks Online section, and set Default account code for Deposits to a liability account.

How long does a QuickBooks payment take to show in ServiceM8?

ServiceM8 gives no time for payments. It says client and material changes update within 20 minutes. Give a payment at least that long before you start changing things.

Need more calls coming in?

Web Blend builds websites, video and Google Ads for contractors. If the phone is too quiet, let’s talk.

Get a quote