Skip to main content
CrowdChange sends webhook deliveries as JSON with an event name and event-specific data. The same object is stored on webhook logs as payload. Events are delivered to subscribed webhooks for the campaign’s partner and, when applicable, its distinct parent partner.

Updated event changes

The fundraiser_updated, fundraiser_team_updated, and fundraiser_page_updated events include a changes object in data.
object
Changed fields keyed by dot notation. Each changed field contains old and new values.

Deleted event details

The fundraiser_deleted, fundraiser_team_deleted, and fundraiser_page_deleted events include the deleted entity’s usual fields plus deleted_at in YYYY-MM-DD HH:mm:ss format. When deleting a team also deletes its personal pages, each deleted page produces a fundraiser_page_deleted event. Pages moved back to the campaign remain active and do not produce a deletion event. This example shows only the deletion fields; the other campaign fields are described below.

Campaign events

Events: fundraiser_created, fundraiser_updated, fundraiser_deleted
object
Campaign details.

Transaction events

Events: transaction_created, transaction_refunded
object
Transaction details.

Full and partial refunds

transaction_refunded is sent when a refund transaction is created in CrowdChange, for both full and partial refunds. Each refund has its own data.id. Successive partial refunds share the original payment’s parent_id; data.amount represents only the current refund, not the cumulative refunded amount. data.parent keeps the original payment’s amount and status. Its is_refunded field exposes CrowdChange’s stored full-refund flag. A partial refund can have data.status: "refunded" while data.parent.is_refunded is false. The payload does not calculate a remaining balance. The standard refund processing flow also emits the existing transaction_created event for the same refund record, including parent. If you subscribe to both events, use the refund’s data.id to avoid counting the same refund twice. These separate examples show only the fields relevant to refunds. Both data and data.parent also include the other transaction fields above.

Team events

Events: fundraiser_team_created, fundraiser_team_updated, fundraiser_team_deleted
object
Team details.

Personal page events

Events: fundraiser_page_created, fundraiser_page_updated, fundraiser_page_deleted
object
Personal page details.

Tax receipt events

Events: tax_receipt_issued
object
Tax receipt details.

Milestone events

Events: milestone_triggered Sent when a milestone notification is triggered for the original recipient. Additional recipient emails configured on the milestone are not included in the webhook payload.
object
Milestone details.
Last modified on October 11, 2026