Skip to main content

Payments

New to webhooks? Start with Getting started (envelope, delivery, retries) and Verification (confirming a request came from Grow CRM). Those conventions apply to every event below and are not repeated here.
Payments expose four keys: payment.created, payment.updated, payment.deleted, payment.sundry. There is no payment.activity — payments have no comments, attachments, or logs in core.

One core event, two webhooks

Recording a payment against an invoice always fires payment.created. If that payment brings the invoice’s balance to fully paid, the same underlying action also fires invoice.updated with change: "paid" — subscribe to both if you need to know both “a payment came in” and “this invoice is now settled”.

The payment object

Every key except .deleted carries this shape, either flat (.created) or nested under payment (.updated/.sundry):

payment.created

Fires when a payment is recorded against an invoice.

payment.updated

Fires on a significant change. data.change tells you which; data.payment is the full object.

payment.sundry

Fires on a minor, cosmetic field edit. data.field names it; data.payment is the full object (same shape as .updated, just a lower-significance discriminator).

payment.deleted

Fires after the payment is deleted. data is just the id — the record no longer exists to describe. Payments are deleted through the same route whether one or several are selected, so this can fire for a single payment even though the underlying action supports multiple.