A signed webhook that verifies the vendor signature over the raw body, resolves which account or accounts own the affected company, maps changed invoice and payment entities back to platform invoices, and re-reads the accounting invoice to set absolute balance and total values.
Also called: QuickBooks webhook · customer paid in QuickBooks · balance sync · paid in quickbooks · two-way sync · invoice still says unpaid · bookkeeper marked it paid
- 1The vendor posts change notifications, typically within a minute.
- 2The signature is verified in constant time over the raw body.
- 3Each notification's company id is resolved to owning accounts.
- 4Changed invoice and payment entities are resolved to accounting invoice ids.
- 5Each is re-fetched and its absolute values mirrored, firing the paid notification on the transition.
The route documents both the mechanism and its idempotency: 'we use it for QB → platform payment sync: when an Invoice/Payment changes, mirror the QB invoice's balance/status onto our invoice so the project shows "paid"... Idempotent: syncQbInvoicePaymentStatus sets absolute values from QB, so QB's webhook retries never double-apply.' Error handling is deliberate too: each notification's error is swallowed 'so one bad entity never fails the whole batch'.
- Payments taken in accounting never reached the project view.
- Webhook retries could have double-applied a payment.
- One malformed entity would have failed an entire batch.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →