payment_link.canceled
A payment link was canceled before being paid.
Payload
All webhook payloads follow a consistent top-level structure with event-specific data nested within the data object.
The payment link ID.
The link status. Always "canceled" for this event.
The total amount of the canceled link in cents (100 = $1.00).
The payment currency code.
The payment description shown to the customer.
The customer ID, or null when the link is not tied to a customer. Returns your externalId if you provided one when creating the customer, otherwise returns the Commet publicId.
{
"event": "payment_link.canceled",
"timestamp": "2026-06-23T14:30:00.000Z",
"organizationId": "8f14e45f-ceea-4e7a-9c3d-1c2b3a4d5e6f",
"mode": "live",
"apiVersion": "2026-06-23",
"data": {
"paymentId": "pay_l1m2n3",
"status": "canceled",
"amount": 5000,
"currency": "usd",
"description": "One-time onboarding fee",
"customerId": "user_123"
}
}When this fires
When a pending payment link is canceled before the customer pays it. A canceled link can no longer be paid.
Payment links never expire on their own — there is no expiry event. A link stays payable until it is paid or explicitly canceled.
The event fires the same way regardless of which payment provider processes the charge.
How is this guide?