Charitable Documentation

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

Charitable Rewards: How to Create Rewards

Requires: Charitable Pro plugin 1.8.16+
Pro plan and higher

Do you want to build a set of rewards you can use across all your campaigns? In Charitable Rewards, your rewards live in a catalog, which is a shared library you build once and use for any campaign.

This guide covers the 4 reward types, the fields every reward carries, attaching rewards to campaigns, inventory, and archiving.

A tote bag you created for the spring appeal can serve the fall appeal too, without building it again.

Charitable Rewards needs version 1.8.16 or higher of the Charitable Pro plugin, on the Pro plan and higher.

The Rewards Catalog list, showing reward titles with type badges, amounts, fair market values, status, and inventory

What’s In This Guide?

Watch the Video

This video shows you how to create a reward in the catalog and attach it to a campaign.

Where to Find the Catalog

To get started, head over to Charitable » Rewards » Catalog in your WordPress admin.

From there, click “Add Reward” to create a new reward, or click a reward’s title to edit it.

The 4 Reward Types

A reward’s type decides what Rewards does when a donor earns it. To pick one, ask yourself what has to happen next.

TypeUse it whenWhat happens on a claim
RecognitionThere’s nothing to deliver, like a name on a donor wall or a mention in the annual report.It’s recorded and done, and it never joins the fulfillment list
DigitalYou’re sending a file, a link, or a code.It’s delivered by email through a protected, expiring download link
PhysicalYou’re mailing something.Rewards collects a shipping address and adds it to the fulfillment list
MembershipIt’s an ongoing benefit rather than an object.It’s recorded as claimed, and it can renew if the donation recurs

Important: A reward’s type can’t be changed after you create it. This is the one choice in Rewards you can’t undo, and everything else about a reward stays editable.

The reason is that the type controls things that have already happened by the time you’d want to change it. A digital reward has sent download links, and a physical one has collected addresses.

Changing the type would leave those records describing something that no longer matches. If you picked the wrong type, create a replacement and archive the original.

What Every Reward Carries

FieldNotes
TitleRequired. This is what donors see on the card
DescriptionKeep it to a sentence, because long text makes the cards uneven
TypeRequired, and permanent
AmountThe donation that unlocks it, or the price if used on a level
Fair market valueWhat the item would cost to buy. This drives tax receipting
ImageThe card picture
Inventory capAn optional limit on how many can be claimed
Show remainingWhether donors see “147 of 150 left”
Estimated deliveryPhysical rewards only. Free text, shown to donors
Recurring behaviorWhether a renewal creates a new claim

Fair Market Value Is Not the Same as the Amount

The amount is what a donor has to give to earn the reward. The fair market value is what the item would cost to buy. A tote bag that unlocks at $75 might have a fair market value of $12.

They’re separate because the deductible part of a gift is the amount minus the value received. See Tax Receipting and Fair Market Value for more.

Attaching a Reward to a Campaign

Creating a reward doesn’t put it on any campaign. Attaching it does.

From a reward’s edit screen, or from the campaign’s own Rewards panel, pick the campaigns it should appear on. Each attachment can carry its own settings, so the same reward can behave a little differently in 2 places.

  • A display order controls where it sits among that campaign’s rewards.
  • An optional threshold override lets 1 campaign unlock it at a different amount.
  • An enabled switch removes it from 1 campaign without detaching it.

Shared vs Per-Campaign Inventory

When a reward is attached in more than 1 place, you choose whether the stock is shared or separate.

ScopeBehavior
Per campaignEach campaign gets its own allowance from the cap
SharedAll attached campaigns draw from 1 pool

Shared scope is what makes peer-to-peer work. A parent campaign’s 50 signed posters are 50 posters in total across every fundraiser page, not 50 each. See Rewards on Peer-to-Peer Campaigns.

Inventory and Running Out

When you set an inventory cap, Rewards counts claims against it. Turn on “Show Remaining” and donors see the count on the card, which encourages them to act on items that are truly limited.

When the cap is reached, the reward switches to a sold-out state. It stops unlocking, and the card says so instead of quietly disappearing.

The Reservation Hold

There’s a short gap between a donor choosing a reward and their payment going through. Without protection, 2 people could both claim the last poster during that gap, and 1 of them would be disappointed.

Rewards places a short hold on a limited item while the donation is still processing, and the item counts as taken during that time.

If the payment goes through, the hold becomes a real claim. If it fails or the donor leaves, the hold expires and the item goes back into stock.

You set the hold time for the whole site on the Other tab, as “Reservation Hold” in minutes. It starts at 30.

Set it a little longer than your slowest checkout. If it’s too short, 2 donors can claim the same item again, and if it’s too long, unfinished donations keep stock out of reach.

Holds only apply to rewards with an inventory cap. An unlimited reward has nothing to reserve.

Archiving, Because There Is No Delete

There’s no delete button anywhere in Rewards, and that’s on purpose.

Every claim record points back at the reward that produced it. Deleting a reward would leave past donors holding a perk with no definition behind it, and it would break the history in your own reports.

Archive the reward instead. An archived reward behaves in 3 ways.

  • It stops being offered on new donations.
  • It drops out of the catalog’s default view.
  • It keeps every past claim intact and readable.

Archiving is also the right way to retire the Example: rewards the setup wizard can add.

Tips Worth Keeping in Mind

These habits keep your catalog tidy and your tax records easy.

  • Name rewards the way a donor would describe them. “Enamel Pin Set” beats “Pin SKU 2.”
  • Put a fair market value on anything physical, even if it’s a few dollars. Working out values at tax time is much harder than recording them now.
  • Use Recognition for thank-you perks. That keeps the fulfillment list to things that actually need mailing.
  • If you only ever run 1 campaign, you can still think of the catalog as that campaign’s reward list. The library setup costs you nothing.
  • Archive the wizard’s example rewards before going live.

FAQs on Creating Rewards

I picked the wrong reward type. What do I do?

The type can’t be changed, so create a replacement reward with the right type and archive the original.

Why isn’t my new reward showing on the donation form?

Creating a reward doesn’t put it on any campaign. Attach it to the campaign from the reward’s edit screen or the campaign’s Rewards panel.

Developer Reference

Filters

FilterDefaultPurpose
charitable_rewards_tier_image_sizethumbnailRegistered image size for reward card images
charitable_rewards_reservation_ttlthe setting valueOverride the hold window programmatically
charitable_rewards_catalog_search_limitplugin defaultHow many results the catalog search returns
charitable_rewards_allowed_file_typesplugin defaultPermitted uploads for digital rewards
charitable_rewards_max_file_sizeplugin defaultUpload ceiling for digital rewards

Reward Value Object

Charitable_Rewards_Reward exposes the type, scope, attach model, status, and payload constants.

Constant groupValues
Typerecognition, digital, physical, membership
Scopelibrary, campaign
Attach modelthreshold, tier
Statusactive, scheduled, retired, disabled

Optional settings live in the reward’s payload array rather than as columns. They’re keyed as inventory_cap, show_remaining_inventory, estimated_delivery, recurring_claim_behavior, image_id, digital_code, digital_link, digital_file, and download_limit.

Attachment Scopes

Charitable_Rewards_Attachment_Repository exposes SCOPE_SHARED and SCOPE_PER_CAMPAIGN, plus an optional per-attachment threshold_override.

Storage

Rewards, attachments, claims, claim activity, reservations, and campaign levels each have their own table. Names and lifecycle are covered on the storage page, and schemas aren’t reproduced here because they change between releases.

Customization Examples

Hold limited rewards for an hour instead of 30 minutes.

add_filter( 'charitable_rewards_reservation_ttl', function () {
    return HOUR_IN_SECONDS;
} );

Allow ePub uploads on digital rewards.

add_filter( 'charitable_rewards_allowed_file_types', function ( $types ) {
    $types['epub'] = 'application/epub+zip';
    return $types;
} );

Wrapping Up

You now know how to create a reward, choose its type, attach it to campaigns, manage its stock, and archive it when you’re done.

Next, choose a mode for your campaign so donors can start earning rewards. If you get stuck on any step, our support team is happy to help.

You May Also Want to Read

These guides pick up where your catalog leaves off.

Helpful Links

🤝 Get help when you need it

Connect with Customer Support →  

📑 Find the guide you need

Browse the Documentation Hub →  

⬇️ Download proven strategies, campaign ideas, and expert tools

Get the Fundraising Kit →  

🔗 Let your AI Assistant do the fundraising work for you.

Connect Charitable to your AI assistant →

💸 Get Free Fundraising Resources
Head to the Charitable Fundraising Hub →

🤔 Got questions about Charitable?
Charitable FAQs →

Need help understanding non-profit terms and jargon?
See our Non-Profit Glossary →

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!

Feature New

🎟️ Introducing Charitable Events: Sell Tickets Inside Your Campaigns!

Most nonprofits sell event tickets in one tool and collect donations in another, which leaves two sets of reports and a manual match at the end of the year. Charitable Events brings both together, selling tickets through the same donation forms and payment gateways you already run in Charitable. Why this is important:

  • 🎟️ Every ticket is a donation: Ticket sales run through the gateway you already use and count toward the campaign goal, with everything managed under Charitable » Events.
  • 📱 QR check-in from any phone: Each attendee gets their own QR code on the receipt, and volunteers scan at the door through a check-in link that needs no WordPress account.
  • 🧾 Receipts ready for tax time: Give each ticket type a fair market value, and Charitable puts the correct tax-deductible amount on every donor receipt.
  • 📋 Attendee details at checkout: Ask every guest for a meal choice, shirt size, or access needs, with a separate attendee record created for each ticket.
  • 🗓️ Blocks and calendars included: Three editor blocks plus Sugar Calendar and The Events Calendar support put your events where supporters already look.

Check out our announcement here.

ai New

🚀 Unleash AI Power in Charitable!

Your AI assistant can now build, edit, and manage your Charitable fundraising campaigns directly — just by asking. With Charitable Pro adding write support for the WordPress Abilities API, tools like ChatGPT, Claude, and Cursor can handle full administrative actions safely through MCP. Why this is important:

  • 🤖 Campaign creation in plain language: Prompt your assistant with a goal like “Set up a fundraiser for the shelter with a $5,000 goal”, and it builds a real draft campaign complete with suggested donation tiers.
  • 🎨 Instant donation form tweaks: Add custom fields, change button colors, or reorder elements without diving into form settings.
  • 📝 Offline gift logging: Tell your assistant about cash or check gifts, and it will match donor emails and record transactions into your history.
  • 🛡️ Safety and control by default: Write access stays strictly off until turned on in Charitable » Tools » AI MCP, keeping read-only reporting safe by default.
  • 📜 Full audit logging: Every change made by an AI assistant is tracked under Charitable » Tools » Logs, so you always know who (or what) updated your site.

Check out our announcement here.

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!