While Salsa does an excellent job as a system for processing online donations for non-profits and political campaigns, it lacks built-in features needed to use it as an effective member-management system. To help, PowerThru Consulting recently completed projects for two nonprofit clients – the Washington Area Bicyclist Association (WABA) and Jewish Voice for Peace (JVP). We helped them set up a system to enable visitors to their site to sign up for a paid membership, and then to report on membership statistics and send reminder emails to members when it is time to renew. While these systems are similar in many aspects, they had several unique features that help illustrate the different ways PowerThru can develop a custom member-management system within Salsa to serve the needs of different non-profits.
WABA came to us with an existing member-management system with a ton of historical membership data in Salsa, but that was way too cumbersome for their staff to use. It required many manual steps to update information on membership levels and periods. They were looking for a system that would automatically add that information to a supporter’s record when they made a designated membership payment on a Salsa donation page.
You can see the membership page we created here or see a screenshot by clicking the image below.
When the supporter completes the membership payment form and clicks submit, they are redirected to a Tell-a-Friend page with special code in the template that actually handles the processing of the membership. We opted to add the membership information to the Supporter record using Salsascript in the template of the redirect page rather than as the membership is being processed by the donation page — because we wanted to be able to check on whether there was any existing membership data in the supporter’s record, and we couldn’t easily do that on the membership payment page without first requiring the supporter to sign in to their Salsa record (a requirement that would decrease donations). However, by “passing” the supporter_KEY to the redirect page as merge fields in the URL we could have Salsascript in the redirect page template easily check existing data in the supporter record, and then update it based on what it finds.
So what does that special redirect template Salsascript do exactly?
- It checks to see if the supporter already has existing membership information;
- If they don’t, it stores the current date as both the current membership period start date and the initial join date for the member in the appropriate custom fields, and sets the expiration date as one or two years from today based on which membership term they selected;
- If they do, it keeps the existing join date custom field data as-is but stores the current date as the current membership period start date. It then checks to see if there is any time left in their current membership period and if so adds it on to their new membership period. Finally, it marks the membership as a renewal payment in both the supporter record and the record of that particular donation.
We did one other cool thing for WABA – they wanted us to add membership information to the Salsa profile manager so supporters could log in to see their current membership status. We added some code to their default Salsa template so the first tab of their profile manager now looks like the screenshot to the left.
JVP came to us with similar but slightly different needs for their member-management system. The way they define membership, anyone who contributes $18 or more over the course of a year is eligible for JVP membership if they affirm they want to be a member. So we needed to start with a page that contained code that checked the amount they were contributing – either one-time or an anticipated annual total for recurring donations – and then displayed the membership confirmation checkbox if they were making a qualifying donation. You can see the page here or in the screenshot to the right. Play around with different one-time or monthly amounts and you’ll see the JVP membership confirmation box show up or not depending on whether the amount qualifies or not.
That was easy enough and we figured we’d just have the redirect page template take care of processing the membership information once we knew who the supporter was, as we did for WABA. However, JVP had a unique requirement – they wanted only new members to automatically get a special welcome email. Problem is that email triggers configured on the donation page would be sent before we knew whether the supporter was a new member or not.
So we decided to set up a special intermediary Salsa sign up page with Salsascript code in a special template that would do the following:
- Check to see whether the supporter already has existing membership information;
- If they do, mark their membership payment as a renewal, add any remaining time in their current membership period to their new membership period and then automatically redirect them to a final redirect page specified in the URL;
- If they do not (i.e. they are a new member), the code adds the membership information to their supporter record but then displays that information to the supporter and asks them to click to confirm it. The act of clicking the button to confirm submits a Salsa form, which then sends the appropriate welcome message trigger and then sends them to the final redirect page specified in the URL.
You can see an example of that that page looks like by clicking on the screenshot below.
But wait, there’s more!
With both clients, we not only made their donation pages do all sorts of cool membership processing tricks but we also redesigned their Salsa templates to be more user-friendly AND to use responsive design so they would look great on mobile devices. (Adjust down the width of your browser window and you’ll see the responsive slickness in action). But then we also added membership logic to our special Tell-a-Friend by PowerThru pages. For both clients, when someone takes an action and is then redirected to a Tell-a-Friend page, the page checks to see if they are already a member or not. Based on that, it displays one of the following messages (each of which is customizable in Salsa):
- If they are not a member, it asks them to join;
- If they are a lapsed member, it asks them to renew;
- If they are a current member, it thanks them and asks them to make an additional donation.
You can see this in action at the URLs below. Same TAF page, but in the first we know the supporter is already a member so ask them to donate. In the second we don’t so we ask them to become a member.
WABA examples (note, WABA did some great redesign work of our standard TAF layout):
Use Salsa and want PowerThru Consulting to help you develop a custom membership-management solution for your non-profit organization? Click here to contact us.