Catch Jobber invoices that never made it into QuickBooks

By General Input

Every Monday morning, get a Slack list of every invoice that never reached your books, came over with the wrong total, or lost line items along the way.

Integrations

  • Jobber
  • QuickBooks Online
  • Slack Bot

Type

Agentic Task

Categories

  • Finance
  • Operations

Every Monday at 7am, reconcile my Jobber invoices against QuickBooks Online and post the result to my bookkeeping channel in Slack. Use a cron trigger for the weekly schedule.

Start by using Jobber's List Invoices operation to pull every invoice issued in the last 14 days. Then use QuickBooks Online's Query Entities operation to pull Invoice records covering the same date range.

Match the two sets on client name, invoice total, and issue date rather than on record ID, since the two systems use completely different identifiers and share no common key. Normalize client names before comparing them: ignore case and punctuation, handle business suffixes like Inc, LLC, and Co, and allow for common abbreviations or a name entered slightly differently in one system. Allow a day or two of tolerance on the issue date, because the sync does not always land an invoice on the same calendar day it was issued.

Flag three failure modes specifically. First, Jobber invoices with no QuickBooks counterpart at all. Second, matched pairs whose totals differ by more than one dollar. Third, invoices whose line item count differs between the two systems, which is how a partial sync usually shows up. The third case matters even when the totals happen to agree, because a dropped zero dollar or discounted line still means the record is incomplete.

Use judgement about timing rather than reporting every gap as a failure. An invoice issued in the last day or two that has not appeared in QuickBooks yet is far more likely to be normal sync lag than a dropped transaction, so list those separately as still in progress instead of mixing them in with confirmed misses.

For every flagged invoice, use Jobber's Get Client operation to pull the customer's contact details and outstanding balance, so the report is actionable rather than just a list of numbers.

Finish with one Slack Bot Send a Message summary to my bookkeeping channel. List each discrepancy with the client name, the issue date, what specifically went wrong, the customer contact details, and the dollar amount at stake, sorted largest amount first. Open with the count of discrepancies, the number of invoices checked, and the total dollars affected. If nothing is wrong, say explicitly that the sync is clean and how many invoices were checked, so I know the workflow actually ran.

Never write to Jobber or QuickBooks. This workflow only reads from both systems and reports what it finds, which keeps it safe to run unattended.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them