Overview
The purpose of the Pledge Drive module would be the following:
- Create online pledge-drives/fundraising campaigns
- Monitor campaign progress towards a goal online
- Allow any registered members in the organization's website to participate in the fundraising efforts
- Make it easy for people wanting to make pledges online to do so
- Grow the organization's database of contacts and supporters
Implementation Details
Campaign Creation
The proposed Pledge Drive module would allow an administrator of a CiviCRM system to create a new fundraising campaign and collect donations/pledges online via a web interface that would store all the campaign details in the database.
The administrator would be required to enter the following information when creating a new campaign:
- Campaign name
- Description (Suggested content would include the reasons/needs for the fundraising effort, the financial goal, and how the funds will be used specifically and in what time-frame)
- End date (optional, but suggested)
- Financial goal for the whole campaign (required so a progress "thermometer" can be displayed with accurate percentages)
- Suggested email message (this could be considered an email template that would be the basis for all participants to use as a starting point, and would be helpful for people who want to help, but are limited with time and need a "plug and play" option.)
Monitor Progress
As donations/pledges come in, anyone interested may view the overall progress of the campaign on a webpage that would list all donors alphabetically as well as a large thermometer showing the percentage of funds-raised-to-date versus the overall campaign goal.
Personalized page views would also be available. (See below.)
Grassroots Efforts
It is one thing to have a "donate now" button/link on a webpage, and quite another thing to get members within your organization to proactively contact people, friends, and family members in their address books and ask them to consider making a contribution. This approach would allow the momentum of a fundraising campaign to peak exponentially. Therefore, the software would allow all supporters of the organization to send out personalized emails asking their contacts for support.
Participants in a fundraising effort would be able to do the following:
- Modify the email template to become a personalized message they would use when contacting their friends/family
- Send messages to their contacts asking for funds

TODO
CiviMail will hopefully be the platform for this component. Likely we will need to create a simpler version of the CiviMail page since users sending out messages to contacts need something easy and rather basic. Additionally, we may need to build a feature to enable easy entry of multiple email addresses (i.e. a list of "Name" <email@address.com>)
- Reuse the same email message or allow for "tweaks" for different audiences prior to sending it out each time
- Send email to all of their contact.
- View a personalized page that lists people who have donated to the campaign as a result of their request
- Provide a personalized page for donors to see the BIG picture of funds raised as well as funds brought in by the person who contacted them directly. They will be able to add a personalized "Thank you..." to visitors of this page who've pledged support. For an example of a personalized fundraising page see this page at Race for the Cure's site].
The software will keep track of each participating member when they are logged in and will be able to dynamically generate a personalized link to "their" page in the email that the system sends out to their contacts.
| TODO For this part of the module CiviMember may be able to be used. I have not yet been able to determine if users in the Member table are able to log on to the CiviCRM site. If not, perhaps we can just use the regular user database and give pledge members access only to the Pledge Drive module. It is important that people participating in a pledge drive have minimal hassle in joining the pledge drive and getting set up with an account so they can contact their sponsors. |
Easy/Safe Online Pledges
Once the campaign has been created, and up until the specified end date (if one has been stipulated), visitors on the website would be able to contribute funds/pledges toward the campaign. To do so, the following information would be collected:
- Full name
- Full address
- Email address
- Telephone (optional)
- Amount pledged
- Anonymous (true/false)
- Hide donation amount (true/false)
- Future contact (true/false)
This system would be built using CiviContribute. After the transaction has been confirmed the administrator will be able to "display" the pledge information on the site. This will be not done immediately and only confirmed payments will be displayed as being a percentage toward the final goal. When the visitor returns to the site CiviContribute, if payment can be confirmed the pledge will dynamically toggle to be displayed.
TODO
|
Confirmation Page
On the landing page on the website after the visitor returns from CiviContribute they will be presented with the total funds received to-date as well as a "Tell Your Friend" link (perhaps even a form right on that page) so they can spread the word to like-minded folks.
If they were brought to the site (to make a pledge of support) as a result of an email from a participating member, the landing page will have two views:
- A global funds-raised-to-date thermometer
- A personalized message from their contact within the organization
- A list of pledges that their contact has brought in
Future Needs/Future Participants
The information collected from each donor/sponsor will be stored in a database and saved for future contacts (*NOTE*: CiviContribute may already do this). This will simultaneously accomplish several things at once:
- Growing the organization's contacts database
- Provide a larger audience and potential participants for future efforts
After the campaign ends, the administrator/campaign organizer will have one month to send a follow-up email to those who have pledged and asked to receive updates. (Only one email message will be permitted after the campaign ends to prevent people from feeling like they are being spammed and who might then request to be dropped from the recipient list for future contact.)
| TODO CiviMail may already support users being able to unsubscribe |
Technical Details
Tables
Currently the following new tables will be needed:
- campaigns - Contains info about individual campaigns such as id, name, end date, default e-mail message, fundraising goal, etc.
- user_campaign - Contains user-specific information for their campaign. Their personalized email, their thank-you note, fundraising goal
- user_campaign_contributions - Contains amount pledged towards each user for a campaign: user_id, campaign_id, donor_id, pledge_amount
