Skip to main content
All posts
Automation6 min read

How to Send QuickBooks Payment Alerts to a Shared Room

Use QuickBooks Online's instant New Payment trigger, fixed private copy, and the payment ID as a replay key.

Two PingRoom avatars keep a closed ledger behind a privacy divider while Pingo watches one plain signal reach a shared tray.

To send a QuickBooks Online payment alert to a small group of phones, use Zapier's instant New Payment trigger, then POST fixed copy to a PingRoom incoming webhook. Map only the stable QuickBooks payment ID into PingRoom's replay fields. Keep the customer, invoice, amount, currency, payment method, memo, account data, and links in QuickBooks.

The Room receives only QuickBooks customer payment recorded and Open QuickBooks for invoice and deposit details. QuickBooks remains the accounting record.

This is a Zapier webhook recipe, not a native QuickBooks integration. Zapier's current connection guide requires a paid QuickBooks Online subscription, QuickBooks admin permissions, and a paid Zapier plan. Webhooks by Zapier is currently available on Professional, Team, and Enterprise plans. The destination Room's owner also needs PingRoom Pro.

Start with QuickBooks' own status

If one authorized QuickBooks user needs invoice, customer, amount, or deposit details, stay in QuickBooks. Its mobile app can show whether an invoice is open, overdue, partially paid, paid, deposited, or not deposited.

Add a shared Room only when a small, stable group needs one sparse signal and should open QuickBooks under their own permissions for the details.

What people needBetter starting point
Invoice, customer, amount, payment method, deposit, or reconciliation dataQuickBooks Online
One authorized person's normal accounting notificationsQuickBooks' own mobile experience
One fixed signal for a small group that should not receive accounting dataQuickBooks Online → Zapier → private PingRoom Room
A signed direct event path your developers operateIntuit webhook → verified server-side relay → PingRoom

A Ping does not prove that an invoice is fully paid, funds are deposited, a bank transaction is reconciled, somebody reviewed the payment, or every phone displayed the alert. It says only that the selected QuickBooks trigger produced an automation event.

Choose payment recorded or invoice paid

Zapier currently lists two instant QuickBooks Online triggers that sound similar:

TriggerUse it when you needDo not treat it as
New PaymentOne event for each customer payment QuickBooks records, including a partial paymentProof that the invoice balance reached zero
New Paid InvoiceOne event when an invoice becomes fully paidProof of deposit, settlement, or bank reconciliation

This recipe uses New Payment. If your actual decision is “the invoice balance is now zero,” choose New Paid Invoice and name the Room signal accordingly. Do not use payment language for one trigger and settlement language for the other.

Prepare one private Room

Create or choose a private PingRoom Room for the people who genuinely need the signal. Open Settings → Connections → From another app, add an incoming webhook named QuickBooks payment, keep Quick Ping on Custom message, save it, and copy the complete secret URL.

The incoming-webhook guide covers the Room-side setup. The webhook reference carries the current fields, text limits, idempotency behavior, cooldown, and errors.

Treat the full URL as a password. Keep it out of QuickBooks fields, browser-side code, screenshots, shared documents, and logs. Regenerate the webhook secret if it is exposed.

Build the payment-to-Room Zap

In a new Zap:

  1. Choose QuickBooks Online as the trigger app.
  2. Choose New Payment.
  3. Connect the intended QuickBooks company with an authorized admin account.
  4. Load a harmless test payment and identify its stable payment ID in the trigger sample.
  5. Add Webhooks by Zapier as the action and choose Custom Request.
  6. Set the method to POST, paste the PingRoom webhook URL into URL, and set data pass-through to No.
  7. Put this exact JSON in the Data field:
{
  "action": null,
  "title": "QuickBooks customer payment recorded",
  "message": "Open QuickBooks for invoice and deposit details.",
  "correlation_id": "qbo-payment-{{QuickBooks payment ID}}"
}

Use Zapier's field picker to replace {{QuickBooks payment ID}} with the stable payment ID from the trigger sample. Do not type the sample value permanently, and do not map any other trigger field.

Add these headers:

HeaderValue
Content-Typeapplication/json
Idempotency-Keyqbo-payment-{{QuickBooks payment ID}}

Zapier's Webhooks guide warns that leaving the Data section blank can pass every previous-step field into the request. Fill the body explicitly and inspect the test request before turning the Zap on.

Never map these QuickBooks fields into the PingRoom request:

  • customer name, email, phone number, or address;
  • invoice number, line items, description, or private note;
  • amount, currency, balance, tax, discount, or exchange rate;
  • payment method, reference number, bank, deposit, or account data;
  • transaction, invoice, customer, receipt, or company links.

The payment ID is used only as a replay identity. It is not useful notification copy, and people should open QuickBooks under its own permissions to inspect the record.

Two PingRoom avatars rehearse one accepted signal pebble while Pingo watches an identical replay stop at a small wooden gate.

These AI-generated editorial illustrations feature approved PingRoom avatars and Pingo the Pigeon, PingRoom's fictional Chief Marketing Officer. They are not QuickBooks, Zapier, or PingRoom screenshots and do not depict customers.

Pingo is beside the stopped duplicate because repeated signals are a marketing problem he can inspect without opening a ledger. He cannot access QuickBooks, read a private Room, run the Zap, or send a Ping. People choose the company, trigger, Room members, copy, and response process.

Rehearse the privacy and replay boundary

Use made-up content, a test customer, and a Room whose members expect the rehearsal.

  1. Record one harmless test payment in QuickBooks. Confirm the Zap selects New Payment, not New Paid Invoice.
  2. Inspect the outgoing request. It should contain only the four fixed JSON fields and the two headers above.
  3. Confirm one Ping appears with the fixed title and message.
  4. Retry the same action with the same payment ID and unchanged body. PingRoom should replay the first accepted result instead of creating another Ping.
  5. Change the body but keep the old idempotency key. The request should conflict rather than silently changing the first event's meaning.
  6. Record a second harmless payment. Its different payment ID should create one new Ping.
  7. Try a partial payment. The signal may appear because the trigger is payment recorded; confirm nobody reads it as “invoice fully paid.”
  8. Lock a test phone and read the alert as a bystander would. The copy should reveal no accounting detail.

For this article, representative QuickBooks-shaped payment IDs passed through the recorded request builder and a local mock of PingRoom's documented contract. The checks covered first acceptance, exact replay, changed-body conflict, a second payment, malformed identity, fixed private copy, excluded accounting fields, and a disabled webhook. They used no live QuickBooks company, Intuit account, Zapier account, PingRoom Room, payment, phone, or delivery receipt.

Treat accounting state and delivery honestly

Zapier labels New Payment as instant, but that does not make the end-to-end path a financial control. Zapier execution, network delivery, PingRoom acceptance, phone connectivity, Focus mode, notification permission, Room settings, and operating-system policy can all affect what one phone displays.

PingRoom's HTTP success means the Ping was accepted into its normal path. It does not prove device display, human review, invoice settlement, deposit, reconciliation, or cash availability. QuickBooks and Zapier remain the places to inspect the payment record and automation run.

If you need Intuit's direct webhook instead of Zapier, treat it as a separate developer project. Intuit's current webhook documentation requires OAuth-connected companies, a production or sandbox endpoint, and signature verification. That route can be appropriate when your team already operates the required server-side security and lifecycle, but it is not a small configuration swap.

Send the smallest useful signal

If each recorded customer payment deserves one shared attention signal, create the private Room and incoming webhook, connect one harmless test payment, and keep every accounting detail in QuickBooks.

QuickBooks, Intuit, and Zapier are trademarks of their respective owners. PingRoom is not affiliated with or endorsed by them.

PingRoom

Short-form communication.

View all posts