Donation events
Subscribe to individual donations, recurring donation subscriptions, and the campaigns that receive them.
Each recurring donation instalment produces its own donation record and payment event, linked to its subscription. Refund events include the individual refund ID, its minor-unit amount and currency, and the cumulative refunded amount currently recorded on the resource. Partial refunds produce separate events per refund. A provider cancellation of a refund is reported as refund_failed.
Donation
| Event | When it is sent |
|---|---|
donation.created | The resource is created, including pending checkout or payment records |
donation.payment_succeeded | A payment succeeds |
donation.payment_failed | A payment fails |
donation.refund_created | An individual refund is created |
donation.refund_succeeded | An individual refund succeeds |
donation.refund_failed | An individual refund fails or is cancelled by the provider |
donation.dispute_opened | A donation payment dispute opens |
donation.dispute_closed | A donation payment dispute is resolved |
Donation subscription
| Event | When it is sent |
|---|---|
donation_subscription.created | The resource is created, including pending checkout or payment records |
donation_subscription.activated | The recurring donation subscription becomes active |
donation_subscription.updated | Public resource fields change |
donation_subscription.past_due | The recurring donation subscription becomes past due |
donation_subscription.cancellation_scheduled | Cancellation is scheduled for the end of the current period |
donation_subscription.cancellation_revoked | A scheduled cancellation is withdrawn |
donation_subscription.cancelled | The resource is cancelled |
Donation campaign
| Event | When it is sent |
|---|---|
donation_campaign.created | The resource is created |
donation_campaign.updated | Public resource fields change |
donation_campaign.published | The campaign enters published status |
donation_campaign.unpublished | The campaign leaves published status |
donation_campaign.deleted | The resource is deleted |
Example payload
This example illustrates donation.payment_succeeded. Available fields depend on the resource and the action.
{
"id": "evt_example",
"event": "donation.payment_succeeded",
"timestamp": "2030-05-01T18:00:00.000Z",
"organisation_id": "507f1f77bcf86cd799439010",
"schema_version": "1",
"source": "admin",
"data": {
"donation": {
"id": "507f1f77bcf86cd799439011",
"company": "507f1f77bcf86cd799439010",
"campaign": "507f1f77bcf86cd799439011",
"member": "507f1f77bcf86cd799439011",
"donor": {
"name": "Example Donor",
"email": "donor@example.com"
},
"amount": 2500,
"currency": "gbp",
"status": "paid"
}
}
}
See delivery and security for the shared envelope, signature verification, retry behavior, and delivery guarantees. Use subscription management to preview sample data for every supported event and send test deliveries.