# 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.

- Published: 2026-11-09
- Author: PingRoom
- Category: Automation
- Topics: QuickBooks payment notification, QuickBooks Zapier webhook, payment received phone alert, shared accounting alerts
- Canonical: https://pingroom.io/blog/quickbooks-payment-received-push-notifications
- Cover image: https://pingroom.io/blog/quickbooks-payment-received-push-notifications-cover.webp
- Cover description: 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 need                                                           | Better starting point                                  |
| -------------------------------------------------------------------------- | ------------------------------------------------------ |
| Invoice, customer, amount, payment method, deposit, or reconciliation data | QuickBooks Online                                      |
| One authorized person's normal accounting notifications                    | QuickBooks' own mobile experience                      |
| One fixed signal for a small group that should not receive accounting data | QuickBooks Online → Zapier → private PingRoom Room     |
| A signed direct event path your developers operate                         | Intuit 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:

| Trigger              | Use it when you need                                                                | Do not treat it as                                   |
| -------------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------------- |
| **New Payment**      | One event for each customer payment QuickBooks records, including a partial payment | Proof that the invoice balance reached zero          |
| **New Paid Invoice** | One event when an invoice becomes fully paid                                        | Proof 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](/blog/webhook-to-push-notification) covers the Room-side setup. The [webhook reference](/documents/webhooks) 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:

```json
{
  "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:

| Header            | Value                                   |
| ----------------- | --------------------------------------- |
| `Content-Type`    | `application/json`                      |
| `Idempotency-Key` | `qbo-payment-{{QuickBooks payment ID}}` |

Zapier's [Webhooks guide](https://help.zapier.com/hc/en-us/articles/8496326446989-Send-webhooks-in-Zap-workflows) 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.](/blog/quickbooks-payment-received-push-notifications-1.webp)

_These AI-generated editorial illustrations feature approved PingRoom avatars and [Pingo the Pigeon](/Pingo), 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](/app/rooms), 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._
