This article presents possible use cases and corresponding sample flows that you can support. You're not limited to these flows, but they can serve as a helpful jumping-off point as you plan your implementation.
You want to create a donation campaign for a local animal shelter that accepts both custom amounts and suggested donation levels. The campaign has a clear fundraising goal and allows donors to leave comments about their contributions.
To create a comprehensive fundraising campaign:
Call Create Donation Campaign with the basic campaign information.
name to something descriptive like "Help Our Animal Shelter".campaignGoal with a target amount, end date, and post-completion settings.customAmountEnabled to true.predefinedDonationAmounts with meaningful amounts and descriptions.donationFrequencies to the desired frequencies like one-time and monthly.commentsEnabled to true to allow donors to leave messages.coverImage to make the campaign more appealing.Verify the campaign is ready by calling Get Donation Campaign to confirm all settings are configured correctly.
You have an active donation campaign and want to track its performance while making adjustments based on donation patterns. This helps optimize the campaign for better results.
To monitor and optimize an active campaign:
Call Get Donation Campaign Metrics to retrieve the current progress.
donationCount to see participation levels.totalAmount to assess progress toward your goal.Analyze the performance data to identify optimization opportunities.
If donations are lower than expected, update donation amount settings by calling Update Donation Campaign.
predefinedDonationAmounts at different price points.customAmountOptions by setting minimum or maximum limits.donationFrequencies like weekly recurring donations.predefinedDonationAmounts to be more compelling.If the campaign is performing well and nearing its goal, consider updating the goal settings.
campaignGoal.endDate to allow more time for donations.campaignGoal.acceptDonationsAfterGoal to continue collecting beyond the target.campaignGoal.targetAmount.You're running several fundraising campaigns simultaneously and need to efficiently update their settings or organize them with tags. This scenario is common for nonprofits managing multiple causes or time-sensitive campaigns.
To efficiently manage multiple campaigns:
Retrieve all active campaigns by calling Query Donation Campaigns:
archived: false to get only active campaigns.createdDate to see newest campaigns first.Identify campaigns that need updates based on your criteria:
For campaigns requiring similar changes, use Bulk Update Donation Campaigns:
donationFrequencies for seasonal campaigns.customAmountOptions for different campaign types.revision for each campaign.Apply consistent tagging across campaigns using Bulk Update Donation Campaign Tags By Filter:
Monitor the asynchronous tag update operation using the returned job ID:
Archive completed campaigns to keep your active campaign list manageable:
archived: true.You want to create campaigns specifically designed to encourage ongoing monthly support from donors. This approach works well for sustained funding needs like operational costs or long-term projects.
To create campaigns optimized for recurring donations:
Call Create Donation Campaign with recurring donation settings:
donationFrequencies to include MONTH and optionally YEAR.predefinedDonationAmounts that emphasize ongoing support benefits.Configure donation amounts that encourage recurring support:
customAmountOptions.minimum for monthly donations.predefinedDonationAmounts that feel sustainable for monthly giving.customAmountEnabled for donors who want to give more or less.Set up campaign goals that account for recurring donations:
campaignGoal.acceptDonationsAfterGoal to true.