Nonprofit Donation Webhook
Learn more
Don't know what a webhook is? Learn more from this What are webhooks? blog post.
The nonprofit donation webhook allows a nonprofit to be notified every time a donation is made.
We will make a POST request to the specified webhook with information about the donation every time a donation is completed*. One common use case for setting such a webhook is to create a custom integration between Every.org and a donor CRM.
Setting up your webhook
You can set your webhook URL by editing your organization's settings at
every.org/<organization-slug>/admin/settings under Advanced settings.

Data format
The webhook request will be a JSON-formatted string with the following properties:
chargeId: <string>- Unique ID to the donation. Matches the “Charge ID” of donations in the nonprofit Admin Dashboard.
partnerDonationId: <string | undefined>- The partner donation ID as specified using our
Donate link or Donate Button.
undefinedif not specified.
- The partner donation ID as specified using our
Donate link or Donate Button.
designation: <string | undefined>- The program or project this donation is intended to support.
firstName: <string | undefined>- Included if the donor shared their info with the nonprofit or made the donation public.
"Anonymous"otherwise.
lastName: <string | undefined | null>- Included if the donor shared their info with the nonprofit or made the donation public.
"Donor"otherwise.nullif the donor has no associated last name.
email: <string | undefined | null>undefinedif the donor did not share their info with the nonprofit.nullif the donor has no associated email.
address: <object | undefined>- The address the donor entered when donating. Only included if the donor
entered an address and shared their info with the nonprofit, either by
choice or because the Donate link used
require_share_info. - An object with the following properties, each of which may be missing:
streetAddress: <string | undefined>city: <string | undefined>state: <string | undefined>postalCode: <string | undefined>country: <string | undefined>
- The address the donor entered when donating. Only included if the donor
entered an address and shared their info with the nonprofit, either by
choice or because the Donate link used
toNonprofit: <object>- An object with the following properties:
slug: <string>- The slug that identifies the nonprofit. Every.org
uses the slug to construct the nonprofit's URL as follows:
every.org/<slug>
- The slug that identifies the nonprofit. Every.org
uses the slug to construct the nonprofit's URL as follows:
ein: <string | undefined>- The nonprofit's EIN.
undefinedif the receiving organization does not have an EIN, as in the case where they are fiscally sponsored.
- The nonprofit's EIN.
name: <string>- The nonprofit's displayable name.
- An object with the following properties:
amount: <string>- Numerical amount in the unit defined by the ISO
currencycode, represented as a string.
- Numerical amount in the unit defined by the ISO
netAmount: <string>- Net amount of the donation after subtracting third party fees.
currency: <string>- Currency code as defined in ISO 4217
frequency: <"Yearly"|"Monthly"|"One-time">donationDate: <string Date>- Date that the donation was initiated
publicTestimony: <string | undefined>- A publicly available comment for this donation written by the donor showing at every.org that can be shared.
privateNote: <string | undefined>- A private note for the nonprofit written by the donor.
fromFundraiser: <object | undefined>- An object with the following properties:
id: <string>- The fundraiser's id.
title: <string>- The fundraiser's title.
slug: <string>- The slug that identifies the fundraiser. Every.org
uses the slug to construct the nonprofit's URL as follows:
every.org/<toNonprofit.slug>/f/<fromFundraiser.slug>
- The slug that identifies the fundraiser. Every.org
uses the slug to construct the nonprofit's URL as follows:
- An object with the following properties:
paymentMethod: <string>- The method used to make the payment.
Example request body:
{
"chargeId": "somerandomuuid",
"partnerDonationId": "somerandomuuid",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@emailprovider.org",
"address": {
"streetAddress": "123 Main St",
"city": "San Francisco",
"state": "California",
"postalCode": "94103",
"country": "US"
},
"toNonprofit": {
"slug": "givedirectly",
"ein": "271661997",
"name": "Give Directly"
},
"amount": "1000.00",
"netAmount": "970.07",
"currency": "USD",
"frequency": "Monthly",
"donationDate": "2022-02-03T05:00:16.175Z",
"publicTestimony": "I love animals",
"privateNote": "Thank you for the fantastic work!"
}
If you have any questions about the usage of this webhook, please contact team@every.org.