Charitable Documentation

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

Charitable PayFast

Payfast is a South African payment gateway that lets your organization accept donations in South African Rand, through card payments, Instant EFT, QR codes, Mobicred and more than a dozen other methods South African donors already use.

This guide walks through installing the addon, enabling the gateway, setting your currency to Rand, adding your merchant credentials, testing in the sandbox, and going live.

What’s In This Guide?

Before You Start

  1. The Payfast payment integration is available on Basic plans and higher in the Charitable Pro Plugin. If you’re not yet on Pro, you can create your account now » Here’s a guide to help you install Charitable Pro »
  2. Next, you’ll need to install the Charitable Payfast addon. We’ll show you how to do that next. The Payfast addon comes with the Charitable Pro plugin. After purchasing a plan, you can install it, along with any other included addons, from the addons menu at no extra cost.
  3. You’ll need your own Payfast merchant account before you begin. If you don’t have one yet, sign up at payfast.io.

Payfast is built for the South African market and settles to South African bank accounts. Charitable connects to your own Payfast account, so your donor details and your transactions stay between you and Payfast.

Payfast charges no setup fee and no monthly fee. You pay per transaction, and the rate depends on the method your donor chooses. See payfast.io for current rates.

The addon needs Charitable 1.3 or higher and PHP 5.3 or higher. Any currently supported version of PHP is comfortably above that minimum.

Let’s get started.

Installing the Payfast Addon

Go to Charitable » Addons and find Payfast in the list. Click “Install Addon”, then click “Activate” once the install finishes.

The Payfast addon in the Charitable Addons screen, with an Install Addon button.

If you’d rather install from a zip file, you can download the addon and upload it yourself.

  1. In your Charitable account, go to the Downloads tab and scroll down to the Payfast addon. Download the addon here.
  2. In your WordPress dashboard, go to Plugins » Add New » Upload Plugin.
  3. Choose the zip file, click “Install Now”, then click “Activate Plugin”.

If you’re not sure how to install the Payfast addon, we recommend first reading our guide to installing Charitable extensions »

Enabling the Gateway

Go to Charitable » Settings » Payment Gateways. You’ll see Payfast listed with the other gateways. Turn on its toggle, then click “Save Changes”.

Charitable Payment Gateways settings showing Stripe, PayPal, Square, Offline, Payfast and Windcave with toggle switches, a green Settings button, and a Turn on Test Mode toggle at the bottom.

A green “Settings” button will appear next to Payfast. That’s where you’ll add your merchant credentials in a moment.

Note: The “Turn on Test Mode” toggle at the bottom of this same page is what you’ll use later to test Payfast before going live.

Setting Your Currency to Rand

Payfast settles in South African Rand, so Rand has to be your base currency in Charitable. Once you enable the gateway, Charitable checks this for you and shows a notice if your currency is set to something else.

Charitable notice bar explaining that Payfast only accepts South African Rand, with a Change Now button.

Click “Change Now” and the currency is set for you. You don’t have to do anything further. You can confirm it under Charitable » Settings » General » Setup, where the currency dropdown will read South African Rand (R).

Charitable Pro General Settings page with the currency dropdown set to South African Rand (R).

Note: Rand being your base currency doesn’t stop international donors giving. Payfast’s Multi-Currency Pricing feature lets a donor pick their own currency at the Payfast checkout, and Payfast converts it and pays you out in Rand. It works with Visa and Mastercard, but not American Express. Turn it on from your Payfast account, not from Charitable.

Adding Your Payfast Credentials

Click the green “Settings” button next to Payfast to open the gateway settings. You’ll find all 3 credentials in your Payfast account settings area.

Payfast gateway settings form in Charitable with fields for Gateway Label, Merchant ID, Merchant Key and Passphrase, and a Save Changes button.
  • Gateway Label is the name donors read on your donation form. Leave it as Payfast, or change it to something your supporters will recognize.
  • Merchant ID is your Payfast merchant identifier.
  • Merchant Key is the key paired with that Merchant ID.
  • Passphrase is the value Payfast uses to sign the request. Set the same passphrase in your Payfast account and in Charitable, or your donations will be rejected. Older guides call this the salt.

Click “Save Changes” when you’re done.

Important: If you’re testing, take these details from sandbox.payfast.co.za rather than from your live Payfast account. Sandbox and live credentials are not interchangeable.

Setup Video

This short walkthrough covers installing the addon, adding your Payfast credentials and taking a donation.

Payment Methods Available With Payfast

Payfast gives your donors a wide range of payment options popular in South Africa, including the following.

  • Card payments (Visa, Mastercard)
  • Debit cards (Maestro, Visa Electron)
  • Instant EFT
  • SiD Secure EFT
  • QR code payments
  • Apple Pay
  • Google Pay
  • Samsung Pay
  • Capitec Pay
  • Absa Pay
  • Mobicred
  • MoreTyme (by TymeBank)
  • Payflex
  • MukuruPay
  • MTN MoMoPay
  • SnapScan
  • Zapper
  • Scan to Pay
  • SCode
  • Store cards (RCS)
  • PayPal

Note: Payment methods change from time to time, and which ones you can offer depends on what is enabled on your own Payfast account. Check Payfast’s payment methods page for the current list.

Accepting Recurring Donations with Payfast

Payfast works alongside Charitable’s Recurring Donations feature, so a donor can set up a repeating gift once and Charitable bills each renewal after that. Recurring Donations is available on Plus plans and higher, while the Payfast gateway starts on Basic, so on a Basic plan you can take one-off Payfast donations but not recurring ones.

Testing Before You Go Live

We always recommend testing a new gateway before you accept real donations. Payfast runs a separate sandbox, so testing means using sandbox credentials rather than your live ones.

  1. Sign in at sandbox.payfast.co.za and take the Merchant ID, Merchant Key and Passphrase from there.
  2. Go to Charitable » Settings » Payment Gateways and turn on “Turn on Test Mode” at the bottom of the page. Click “Save Changes”.
  3. Open your Payfast gateway settings, paste in the sandbox credentials, and click “Save Changes”.
  4. Make a donation on your own website and choose Payfast as the payment method. You’ll be sent to the Payfast hosted payment page.
  5. After you finish, you’ll come back to your website. Go to Charitable » Donations and check the donation is there and marked as Paid.
  6. When the test donation looks right, turn test mode off, replace the sandbox credentials with your live ones, and click “Save Changes” again.

Important: Your test donations were made against a different Payfast account, so clear them out of Charitable » Donations before you go live if you don’t want them in your reports.

Making Payfast the Default Gateway

If you have more than one gateway enabled, the default is the one selected for your donors when your donation form loads. Go to Charitable » Settings » Payment Gateways, choose Payfast in the “Default” column, and click “Save Changes”.

Pro tip: If most of your donors are in South Africa, making Payfast the default puts Instant EFT and the local card options in front of them straight away, rather than leaving them to find it in a list.

Security and Donor Data

Every Payfast donation is completed on a PCI-compliant payment form hosted on Payfast’s own website. Donors reach it after submitting your donation form, and card numbers never touch your website or your database.

Payfast is a name South African donors recognize, which means they can give without worrying about who is handling their card details.

FAQs on Payfast

Do I need my own Payfast account to use this addon?

Yes. The addon connects to a merchant account you open directly with Payfast. If you don’t have one yet, sign up at payfast.io before you start.

Which currency do I need to use?

South African Rand. Payfast settles in Rand, so Rand is your base currency in Charitable. When you enable the gateway, Charitable shows a notice with a “Change Now” button that sets it for you.

Can international donors give in their own currency?

Yes, through Payfast’s Multi-Currency Pricing feature. Your donor picks their currency at the Payfast checkout, sees the converted amount, and Payfast pays you out in Rand. It covers Visa and Mastercard but not American Express, and you turn it on in your Payfast account rather than in Charitable.

Where do I find my Merchant ID, Merchant Key and Passphrase?

All 3 come from the settings area of your Payfast account. The Merchant ID and Merchant Key identify your account. The Passphrase is used to sign each request, and it has to match on both sides, so set the same value in Payfast and in Charitable. Older guides call this the salt.

Where do donors enter their card details?

On a PCI-compliant payment form hosted by Payfast, which donors reach after they submit your donation form. Card numbers never reach your website or your database.

Which plan do I need for Payfast?

Basic and higher. Recurring donations through Payfast need the Recurring Donations feature, which starts on the Plus plan.

What does Payfast charge?

There is no setup fee and no monthly fee. Payfast charges per transaction, and the rate depends on the payment method your donor picks. Check payfast.io for current rates.

How do I test Payfast without taking real money?

Use the Payfast sandbox at sandbox.payfast.co.za. It issues its own Merchant ID, Merchant Key and Passphrase, separate from your live account. Enter those in Charitable with “Turn on Test Mode” switched on.

My donors reach Payfast but the donation never comes back as Paid. What should I check?

Check the Passphrase first, because a passphrase set in Payfast but not in Charitable, or the other way round, is the most common cause. Then confirm your Merchant ID and Merchant Key are both from the same account and the same mode, since a live Merchant ID paired with a sandbox key will fail.

More Documentation

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!

ambassadors New

🖨️ Introducing Fliers and Posters: Raise Money Away From the Screen!

A lot of peer-to-peer fundraising happens away from a screen: at the finish line of a 5K, on a school noticeboard, in an office kitchen. Charitable Ambassadors 3.4.7 adds 2 printables, a fundraiser flier carrying each fundraiser’s own story and QR code, and a recruitment poster that signs new fundraisers up. Both open as a normal web page and print straight from the browser. Why this is important:

  • 🏁 A flier for every fundraiser: Each one carries that fundraiser’s own photo, story and goal, with a QR code that opens their page rather than your main campaign.
  • 📌 A poster that recruits: It shows “Now Recruiting” above your campaign name with a large QR code that opens your sign-up form, so someone can start fundraising without waiting on a link from you.
  • 🪄 No design tool needed: Both printables render as a normal web page and print from the browser, with no PDF plugin and no designer.
  • 📄 2 flier layouts: Hand out carries the full story for giving to friends and family, and Post up carries a short hook with 5 tear-off tabs for a noticeboard.
  • 🛡️ Off until you switch it on: Fliers stay off after the update until you enable them under Charitable » Ambassadors » Other » Fliers, and only the owner or an administrator can open one.

Check out our announcement here.

Improvement Payments

💸 Introducing Tiered Rates for Fee Relief: Match the Ask to the Gift!

Fee Relief asks your donors one short question at checkout: would you like to cover the processing fee on this gift? Until now that question used a single rate for every donation on a gateway, so a $10 gift and a $500 gift were asked for the same percentage. Fee Relief 1.3.0 lets you set as many donation bands as you like, each carrying its own rate. Why this is important:

  • 🪙 Gentler on small gifts: A fixed transaction cost is a far bigger share of a $10 donation than a $500 one, so bands let you ask for less at the bottom.
  • 🎚️ As many bands as you need: Each band carries its own percentage and its own fixed amount, and the top band runs on with no upper limit.
  • 🛑 An optional ceiling: A Maximum fee field stops any donor being asked for more than a number you choose, however large the gift.
  • 🔌 Set per payment gateway: Stripe can run on four bands while Windcave and Payfast stay on a single rate, because bands belong to a gateway and not to your whole site.
  • 🛡️ Nothing changes until you say so: Your current rates stay exactly as they are until you switch Use Tiered Rates on under Charitable » Settings » Advanced » Fee Relief.

Check out our announcement here.

Donations Improvement

📊 Your Pro Dashboard Can Now Compare, Export, and Score!

Most fundraising dashboards only tell you how much you have raised. Charitable Pro 1.8.19 rebuilds the dashboard and the Reports Overview around the harder questions: whether anything is broken, whether this period beat the last one, and which single change would make the most difference today. Why this is important:

  • 📈 Every figure has a trend: Pick a period and the tiles and the chart move together, with each total shown against the previous period.
  • 🗓️ Charts that stay readable: Short ranges group donations day by day, while longer ranges group by week or month, so a full year reads as a curve instead of a flat line.
  • 🔀 Compare any 2 periods: Not just consecutive ones, so you can ask how this December did against last December. That matters because fundraising is seasonal.
  • 📤 Export the whole summary: Send the full overview out as CSV or PDF, ready for a board pack or a funder report.
  • 🎯 Score your setup for free: Have your fundraising setup scored, so the one change worth making next is the one you can see.

Check out our announcement here.

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.