PayFast is a South African online payment gateway. The PayFast extension for GiveWP allows South African website owners to accept donations in South African Rands. Read the GiveWP Documentation to learn how to install and configure GiveWP on your website. Once you have a donation form displaying you can follow along with this documentation and configure the PayFast extension for GiveWP and start accepting donations.

Getting Started

Purchase the PayFast extension for GiveWP, login to your My Account page on the LightSpeed website and download the extension from the My API Downloads section, then Install and activate the extension on your site via the WordPress plugins screen.


You are now ready to configure donations taken via PayFast.

  1. Go to Donations > Settings > General
  2. Set Base Country to South Africa
  3. Set Currency to South African Rand (R)
  4. Go to Donations > Settings > Payment Gateways
  5. Enter your API key and API email, these details are listed on your LightSpeed My Account page, in the My API Keys section.
  6. Click the Save Settings button

PayFast will now be a payment gateway option in the Donations Settings


Go to Donations > Settings > Payment Gateways

  1. Click the checkbox to enable PayFast
  2. Set Default Gateway to PayFast.
  3. Scroll down to the bottom and enter your PayFast Merchant ID, PayFast Merchant Key and Passphrase. (login to PayFast to fetch these 3 details for your account)
  4. Click the Save Settings button


Recurring Donations

The PayFast extension for GiveWP supports recurring also referred to as subscription based payments. You’ll need to purchase the Recurring Donations Add On for GiveWP If you want to accept automatic recurring donations. Read the GiveWP Recurring Donations Documentation to learn how to configure automatic recurring donations on your website. Read the PayFast Recurring BIlling Documentation to learn how recurring billing works inside your PayFast administration interface.

Limitations with Recurring Donations

GiveWP Recurring Donations ONLY supports the registering of a recurring transaction and cancelling recurring transactions, however the following functionality is not supported

  • GiveWP Recurring Donations allow daily or weekly transactions, PayFast only processes on a monthly, bi-monthly, quarterly and yearly basis and you must configure your donation form to coincide with this limitation.
  • The donation amount, donation cycle and duration cannot be managed via the WordPress admin, but you can still login to your PayFast admin interface and manage recurring transaction parameters from there.
  • The PayFast admin interface allows you to pause a recurring transaction, but this feature does not exist in GiveWP Recurring Donations


Create a free PayFast sandbox account, this is a completely different type of PayFast account that is meant for testing only.


Your live PayFast account details will not work in test mode, an error message will display on the PayFast payment page if live account details are used in test mode.


The PayFast sandbox account has virtually all the same settings and functionality as a live account. Do the following once you have created a sandbox account.

  • Go to Donations > Settings > Payment Gateways and click the Test Mode checkbox.
  • Scroll down to the PayFast Settings section and configure your PayFast Sandbox details
  • Click the Save Settings button

You can now test your donation forms including recurring donations if you are using GiveWP Recurring Donations Add On. Read this from the PayFast developer documentation for more in depth knowledge on how recurring transaction work inside a sandbox account. If all your testing was successful you can go back to the payment gateways settings and configure your live PayFast account details. Remember to go to Donations > Settings > Payment Gateways and uncheck the Test Mode checkbox, before clicking the Save Settings button.