Fundraiser API - FAQ


Q: Is my nonprofit eligible to integrate with the Fundraiser API?

A: The Fundraiser API is currently in beta and available to select partners. If your fundraising platform is powered by a tech provider, please contact them to check if they offer a Facebook integration.

Q: Which countries are supported?

A: The Fundraiser API is available in countries where nonprofits can apply for Fundraising Tools. The list of supported countries can be found here:

Q: How do I add the Fundraiser API to my app?

A: To submit for Fundraiser API access, please use a Consumer type app, go to your app dashboard, add the Fundraisers product by clicking Set Up, and then follow the instructions. Note that the API is currently in beta and available only to select partners and technology providers. Please only submit for access if you've been instructed to do so.


Q: How can I create a test fundraiser?

A: All fundraisers on Facebook are public, but it's possible to create a test fundraiser that is visible only to developers of your app. To do that, you can simply create a fundraiser using an app “In development” mode. Fundraisers created this way will show a banner at the top that explains that the fundraiser is visible to app developers only. When switching your app from “In development” to “Live”, your test fundraisers will continue to stay hidden from the general public. Fundraisers created by a “Live” app will stay public even if the app is set back to “In development”.

Q: Can I create a fundraiser using a test user?

A: The user access token in the request must belong to an actual Facebook user. You can use an app "In development" mode to create test fundraisers that are hidden from the general public.

Q: What's the difference between an app being “In development” or “Live”?

A: Fundraisers created using a live app will be live and publicly visible whereas fundraisers created using a dev app are only visible to the app's developers and admins. Live and dev mode fundraisers can receive donations, but webhooks are only sent when the app is live.

Q: How can I test donations?

A: At this time we don't support test donations and all donations must be made with a valid payment credential. The minimum amount you can donate is $5 and you can request for a refund using the contact form listed on this page.

Q: How can I test webhooks?

A: Apps in development mode don't receive a webhook event when a donation is made, which makes it challenging to create an end-to-end test. Because of this, you have two options to test the webhook: you can manually trigger a webhook event from your developer dashboard; or you can create a fundraiser using an app that is “In Development” (so that the fundraiser won't be public) and then switch the app to “Live” so that webhooks can be received when you make a donation.

Participant Actions

Q: What happens if a user deletes their fundraiser via Facebook?

A: While uncommon, people can delete their fundraiser on Facebook. When this happens, any graph API call that references the fundraiser will return an error. Since there is no webhook to let you know that a fundraiser has been deleted in real time, you can handle the deletion when you get an error back when trying to read the fundraiser or post a new external donation. Deleting a fundraiser can't be undone, so you should handle the deletion as permanent. At this point, you may want to offer a way for the person to re-connect to Facebook on your participant center to create a new fundraiser on Facebook.

Q: What happens if a user deletes their fundraiser and then later creates a new one via the API?

A: The new fundraiser on Facebook will start fresh and will not reflect any previous donations. To account for previous donations, you should post as external donations any donation that was received so far, including any donation that was previously received on Facebook. This should ensure that the total amount raised matches what is shown on your site.

Q: How should we handle user's leaving an event or transferring to a new event?

A: You can decide whether you want to end the Facebook Fundraiser in these cases. For participant transfers, you can update the end date via the api to ensure the Facebook Fundraiser ends according to the new event date.

Facebook Donations

Q: Who can make donations or create fundraisers on Facebook?

A: We support donations from a specific list of countries. A complete list of countries can be found here: People that can't donate will see the donate button grayed out.

Q: Why do donors see an error message when attempting to donate?

A: There could be an issue with the card the donor is attempting to use. Try removing and re-adding the card from payments settings:

Q: How can I access a transaction report showing donations received on Facebook?

A: You can download transaction reports from the organization's Page. You can find more information here:

Q: Can transaction reports be downloaded programmatically?

A: Yes, the Charity Reporting API allows you to download transaction report data programmatically.

Q: Can I get the donor's information via the webhook?

A: The webhook does not contain donor's information, but it contains a payment ID which you can match with the IDs found in transaction reports.

Donation Refunds

Q: How can donors request for a refund?

A: People that donated on Facebook can request a refund using the form here:

Q: Is the fundraiser updated when a refund is issued?

A: Currently, when a donation is refunded, the fundraiser on Facebook won't reflect the refund and the total amount raised will stay the same. No webhook event will be fired to notify you of the refund.

Q: How should I handle refunds on the nonprofit site?

A: If someone donates on your site and later requests for a refund, you should keep the donation amount in sync with Facebook. For full refunds, you can simply delete the external donation that you previously posted. For partial refunds, you can delete the external donation and then post a new one with the updated amount.