Charitable Documentation

Learn how to make the most of Charitable with clear, step-by-step instructions.

Ambassador Seasons – Re-run Your Peer-to-Peer Campaign Every Year

Requires: 

  • Charitable Pro 1.8.16+
  • Charitable Ambassadors 3.4.0+

Most peer-to-peer programs aren’t one-off events – they come back every year. The same walkathon, the same gala, the same giving-day push. The problem is that “coming back” usually means starting over: rebuilding the campaign, re-recruiting last year’s fundraisers from scratch, and quietly losing the monthly donors who were attached to pages that no longer exist.

Ambassador Seasons fixes that. It lets you re-run the same campaign year after year while keeping the momentum you already built. When a season ends, your returning fundraisers and teams can continue into the new season in one click. Their page carries forward – story, photo, and goal, whichever you choose – their web address stays the same, their recurring donors move with them, and last year’s page is archived read-only so its history is never lost.

Ambassadors settings page showing Seasons tab with toggles for Enable Seasons, Story, Photo, Goal, Non-Returning Donors, and various notifications; Save Changes button at bottom.

When you’d use it

  • An annual event. A yearly 5K, gala, or giving day that runs on the same calendar every year with a familiar roster of fundraisers.
  • A campaign with monthly donors. When supporters set up recurring gifts through a fundraiser’s page, you don’t want those gifts stranded when the campaign resets. Seasons moves them to the new season automatically.
  • A returning team structure. Company teams, school grades, or chapter groups that come back each year and want to keep their standings and members instead of rebuilding.

Why this matters for your nonprofit

The single biggest lever in peer-to-peer fundraising isn’t acquiring new fundraisers – it’s keeping the ones you already have. A fundraiser who ran a campaign for you last year already knows your cause, already has a network primed to give, and already raised money once. Getting them to come back for a second year is worth several cold recruits, and it costs you almost nothing.

But retention is where most programs quietly leak. The typical pattern looks like this: the event ends, the campaign goes dormant, and eleven months later someone builds a brand-new campaign for next year. Last year’s fundraisers get a generic “we’re back!” email, land on a blank page, and have to re-create everything from memory. Predictably, most of them don’t. The ones who do arrive with less enthusiasm than they left with, because the friction reminded them how much work it is.

Seasons removes that friction entirely. Instead of asking a returning fundraiser to start over, you send them a single “continue” invitation. One click, and their page is back – the story they wrote, the photo they chose, their goal – ready to accept donations under the same link they shared last year. The psychological difference is enormous: continuing something you already built feels like a win, while rebuilding from scratch feels like a chore.

The monthly-donor piece is just as important, and it’s the part most platforms get wrong. When a supporter sets up a recurring gift through a fundraiser’s page, that relationship is valuable and fragile. If the page disappears at season’s end, the gift either fails or gets orphaned, and you’ve lost a donor you worked hard to win. Seasons treats those recurring donors as first-class: when a fundraiser continues, their monthly donors move to the new season’s page automatically. When a fundraiser doesn’t return, you decide up front what happens to their donors, so no recurring gift ever falls through the cracks.

A few practical tips to get the most from Seasons:

  • Set your rollover defaults once, before you open the season. Decide what carries forward (story, photo, goal) and what happens to non-returning donors while you’re calm and planning, not in the rush of launch week.
  • Give fundraisers a real deadline. The reminder email does its best work when there’s a genuine “continue by” date. A season with an open-ended close tends to drift; a season with a deadline creates the small urgency that gets people to click.
  • Lead with last year’s result. When you invite a fundraiser to continue, remind them what they accomplished (“You raised $2,400 last year for 38 kids”). Continuing a success is a much easier yes than starting a blank page.
  • Close the season deliberately, not silently. Use the close preview to see exactly who’s continuing and who isn’t before you apply it. That list is also your warm re-engagement list for next time.

Finding it

WordPress Admin > Charitable > Ambassadors > Other > Seasons

Seasons lives on the Other sub-tab of the Ambassadors settings. The first time you visit, you’ll see a short explainer and a single toggle. Everything else stays hidden until you turn the feature on.

Turning it on

Seasons is opt-in and currently marked Beta. Click the Enable Seasons toggle and confirm – enabling it for the first time creates a small custom database table (charitable_ambassadors_season_state) that tracks each season’s rollover state. Turning the feature off later does not delete your campaigns or donations.

Toggle labeled 'Enable Seasons (Beta)' turned on; describes enabling annual peer-to-peer rollover and creating the season-state table on first enable.

Once it’s on, the rest of the settings appear.

Rollover defaults

Under Rollover Defaults, three toggles control what gets pre-filled on a fundraiser’s page when they continue into a new season:

  • Story – prefill the fundraiser’s story text from the previous season.
  • Photo – prefill the fundraiser’s header photo from the previous season.
  • Goal – prefill the fundraising goal from the previous season.

All three are on by default. A continuing fundraiser can still edit any of these before they publish – carrying forward just means they start from last year instead of from blank.

Rollover Defaults: Story on; Photo off; Goal on. Descriptions note carrying forward fundraiser content from the previous season.

Non-returning donors

Not every fundraiser comes back. The Non-Returning Donors setting decides what happens to a recurring (monthly) donor whose fundraiser does not continue into the new season. You have three choices:

  • Move Future Gifts to the Parent Campaign (default) – the donor’s monthly gift keeps going, now credited to the parent campaign instead of the retired fundraiser page. The donor keeps giving; you keep the revenue.
  • Leave on the Archived Page – the gift stays attached to last year’s archived fundraiser page. Useful if you want the historical record to stay perfectly intact.
  • Pause the Subscription – the recurring gift is paused so nothing is charged until you or the donor restart it. The most conservative option.

Whatever you choose here is applied when you close the season, and only to donors whose fundraiser did not return.

Notifications

Seasons can send up to four emails. Each one is a toggle, so you can turn any of them off:

  • Season-Continue Email – a confirmation sent to a fundraiser after they confirm they’re continuing.
  • Season-Reminder Email – a nudge to fundraisers who haven’t confirmed yet. Use Reminder Lead Time (Days) to set how many days before the season deadline it goes out.
  • Donor Notice on Close – notifies recurring donors when a season closes and their fundraiser hasn’t indicated whether they’ll continue.
  • Admin Close-Summary Email – sent to your site admins when a season closes, listing who continued and who didn’t.

Setting up next year’s campaign

Each new season is a campaign that points back at the one before it. On the campaign edit screen you’ll find a Season box:

  • Enable Seasons for This Campaign – opt this specific campaign into the season chain.
  • Predecessor Campaign – the previous season this campaign follows. This is the link that lets fundraisers and donors carry forward.
  • Season Label – a short name for the season (a year, a name, or a number). Fundraisers see it in their continue prompts.
  • Season Dates – optional Open and Close date/times. Leave them blank to open and close the season manually.
  • Carry-Forward Fields – the per-campaign version of the rollover defaults above.
Season settings panel for a fundraising campaign showing an enable toggle, predecessor campaign dropdown, label '2026 Season', open/close dates, carry-forward fields (Story, Photo, Goal), and the Apply Season Close button.

Once the season opens, eligible fundraisers from the predecessor campaign are invited to continue.

What your fundraisers see

A returning fundraiser receives a continue invitation with a personal link. Clicking it takes them to a short confirmation screen that shows what they raised last time and what will carry forward. They can:

  • Continue – their page is recreated in the new season with the fields you chose to carry forward, under the same web address. Their recurring donors move with them.
  • Continue later – they keep the invitation and can act on it before the deadline; the reminder email will nudge them.
  • Decline – they let their page retire at season’s end.

The whole flow is one click for the common case. Nothing is published on their behalf without their confirmation.

Closing a season

When a season ends, closing it is a reviewed, deliberate step – never a silent bulk action. From the season’s campaign you’ll find a Season Close Preview that shows how many fundraisers are continuing, how many are not, and how many recurring subscriptions are affected, before anything happens.

When the numbers look right, click Apply Season Close. Charitable then archives the non-returning fundraiser pages read-only and applies your Non-Returning Donors rule to their recurring gifts. Continuing fundraisers are unaffected – they’ve already moved forward. If you’ve enabled it, the Admin Close-Summary email lands in your inbox with the full breakdown.

Season Close Preview panel showing status: continuing fundraisers 1, non-returning fundraisers 0; table row 'move_to_parent' with 0s; and an 'Apply Season Close' blue button.

A typical yearly flow

  1. Plan. Set your Rollover Defaults and Non-Returning Donors policy under Ambassadors > Other > Seasons.
  2. Create next year’s campaign and point its Predecessor Campaign at last year’s. Give it a Season Label and, optionally, open/close dates.
  3. Open the season. Returning fundraisers get their continue invitation; reminders go out as the deadline approaches.
  4. Fundraisers continue in one click – pages and monthly donors carry forward.
  5. Close the season. Review the preview, apply the close, and last year’s non-returning pages archive cleanly while their donors are handled by your rule.

Developer reference

Requirements

Seasons requires Charitable Pro 1.8.16+ and Charitable Ambassadors 3.4.0+. Enabling the feature creates a custom table {$wpdb->prefix}charitable_ambassadors_season_state; the schema version is tracked in the charitable_ambassadors_seasons_schema_version option, and a lightweight audit trail is kept in the charitable_ambassadors_seasons_log option.

Settings (options)

All settings are stored under charitable_settings['ambassadors'] and read with charitable_get_option( array( 'ambassadors', '<key>' ) ):

KeyMeaning
seasons_enabledMaster switch.
seasons_carry_forward_story / _photo / _goalPer-field rollover defaults (each a toggle, default on).
seasons_nonreturning_policymove_to_parent (default), leave_on_archived, or pause.
seasons_continue_email_enabledSend the continue-confirmation email.
seasons_reminder_email_enabledSend the reminder email.
seasons_reminder_daysDays before the deadline to send the reminder.
seasons_donor_notice_enabledNotify recurring donors on close.
seasons_admin_summary_enabledSend admins the close-summary email.

The carry-forward set for a specific campaign is read via Charitable_Ambassadors_Season::get_carry_forward(), which returns the enabled subset of ['story','photo','goal'] (per-campaign meta _ambassadors_season_carry_forwardoverrides the global toggles when set).

Actions

Fired during the season lifecycle so you can extend behavior:

  • charitable_ambassadors_season_closed – after a season close is applied.
  • charitable_ambassadors_fundraiser_continued – a fundraiser continued into the new season.
  • charitable_ambassadors_fundraiser_declined – a fundraiser declined to continue.
  • charitable_ambassadors_team_continued – a team continued into the new season.
  • charitable_ambassadors_recurring_moved – a recurring donation was moved per the non-returning policy.

Filters

  • charitable_ambassadors_season_close_chunk_size – batch size for processing a close (default 25).
  • charitable_ambassadors_notifications_enabled – master gate for Ambassadors notifications, including season events.
  • charitable_recurring_donations_page_url – the URL used when linking a donor to their recurring donations.

Emails

The four transactional emails are registered with these IDs (override their templates from your-theme/charitable/emails/):

  • season_continue – continue confirmation to the fundraiser.
  • season_reminder – reminder to fundraisers who haven’t confirmed.
  • season_donor_notice – notice to recurring donors on close.
  • season_admin_summary – close-summary to site admins.

Data model notes

  • The season-continue link carries a single-use token stored in user meta; it routes the fundraiser to the confirmation screen but is not itself an authorization gate – the confirmation POST re-verifies ownership and eligibility.
  • Continuing a fundraiser deep-clones the predecessor’s builder data (campaign_settings_v2) to the new page and rewrites it to the new campaign; the parent campaign’s end date is inherited so “days left” stays consistent across the chain.

Still have questions? We’re here to help!

Last Modified:

What's New In Charitable

View The Latest Updates
🔔 Subscribe to get our latest updates
📧 Subscribe to Emails

Email Subscription

Join our Newsletter

We won’t spam you. We only send an email when we think it will genuinely help you. Unsubscribe at any time!

Improvement Payments

💰 Accept Recurring Donations with Windcave and Charitable

A donor sets their gift up once on Windcave’s secure payment page, and Charitable bills every renewal after that on schedule. Why this is important:

🏦 Organizations banked in New Zealand or Australia: monthly giving on the gateway your bank already set you up with, with no second processor to onboard.
⛪ Churches taking regular tithes and offerings: congregants set their own schedule once, which is the simplest way to launch recurring church giving without a separate platform.
🌏 Groups with donors in several currencies: Windcave handles more than 20, so a supporter can give in the currency they actually hold.
📅 Operating funds rather than one-time campaigns: switch on Recurring Only mode and the one-off option disappears, so every gift to that campaign is a subscription.
🧾 Teams with no developer on staff: 3 sets of credentials pasted into a settings page, and no code anywhere.

Check out our announcement here.

automation update

⚡ Visual Automation Builder: Drag and Drop With No Code!

Charitable Automation Connect 2.3.0 introduces the Visual Automation Builder, a full-screen canvas that lays each automation out as a flow of connected cards: a trigger, optional conditions, and a list of actions that run in order.

🧩 Many actions, one trigger: Tag a donor, send an email, add a note, and fire a webhook from a single event, dragged into any order.

✉️ Act inside Charitable: New Send Email, Tag Donor, and Add Donor Note actions run with no external service required.

🔤 Merge tags: Personalize emails and notes with live fields like {first_name}, {total}, and {campaign_name}.

🔁 Apply to existing donors: Run Tag Donor and Add Donor Note against the donors you already have.

🖥️ Canvas or Simple: Switch views anytime, and automations built before 2.3.0 keep working unchanged.

Read more here.

Integration updated

📬 Introducing Brevo for Charitable: Turn Donors into Subscribers Automatically

The moment a supporter makes a gift is when they are most engaged. With the new Brevo integration for Charitable, you can automatically turn those one-time donors into long-term subscribers without touching a single spreadsheet.

Simply collect donor consent right on your donation form and start your welcome series immediately.

What’s New:

🔄 Automated Subscriber Sync: New donors who opt in are added straight to your Brevo contact list as soon as their payment clears—no manual exports or CSV imports required.

🎯 Granular Consent & Opt-In Control: Customize your checkbox label, choose whether it defaults to checked or unchecked, or turn on Brevo double opt-in to keep your list clean and compliant.

📋 Per-Campaign List Mapping: Route supporters to your global email list or map specific campaigns to targeted Brevo lists to tailor your follow-up messaging.

⚡ 5-Minute Setup: Connect instantly by pasting your Brevo API key into the Newsletter settings, map your contact fields, and start building your email list on autopilot.

Ready to grow your mailing list? Brevo is available now starting on the Charitable Plus plan—connect your account today!

recurring donations updated

💳 Introducing Card Updates: Fix Expired Cards Without Losing Subscriptions!

newExpired or updated credit cards are one of the biggest silent leaks in recurring fundraising. With Card Updates in the Recurring Donations extension, donors can now refresh their payment details directly—keeping their subscription, schedule, and giving history completely intact.

No canceled plans, no lost history, and zero administrative headache for your team.

What’s New:

⚡ 30-Second Self-Service: Donors get a dedicated “Update Card” button in their dashboard that opens Stripe’s secure, PCI-compliant Customer Portal to update card details instantly.

🔒 Scoped & Safe Access: Scoped exclusively to card updates by default, donors can’t accidentally cancel or alter their plans from inside the portal, keeping your webhooks and data in sync.

🤝 Admin-Assisted Support: Helping a donor on the phone? Open their secure Stripe portal in one click from your admin screen or generate a single-use update link to email them.

📋 Automatic Audit Trail: Every payment method update is recorded automatically with a timestamp in both system-wide logs and the individual donor’s profile.

Ready to protect your recurring revenue? Get the Plus or Pro plan and update Recurring Donations to 2.3.0+ and enable “Update Payment Method” under your Settings today!

Integration page builder

Divi Fans Rejoice! Native Divi 5 Campaign Progress Bar Module!

With our new native Divi 5 module, you can anchor your microsites with real-time fundraising stats directly on the visual canvas. Here’s how it works, and why it’s worth turning on today.

Create campaign updates that are VISUAL AND LIVE. You can also:

📊 Campaign Progress Bar: Drop a live progress bar into any Divi 5 layout and show goal progress in real time.

🎨 Deep styling controls: Easily customize the bar and track color, height, and radius to match your brand perfectly.

👁️ Visual Builder ready: Configure and preview everything directly on the Divi canvas as a first-class module.

🔁 Identical rendering: The same exact engine powers this module, meaning consistent design without legacy shims.

✅ Faster launches: Never leave the Divi 5 interface to configure shortcodes or guess how your goal labels will look.

Learn more here.