Start a conversation

How do I integrate PayFast with WP Invoice?

You can use PayFast with WP-Invoice by installing http://wordpress.org/plugins/wp-invoice/, which is an invoicing and billing plugin for WordPress.

This will give your WordPress site, Invoicing capabilities and we then provide a payment module for WP-Invoice which will enable you to accept payments with WP-Invoice using PayFast.

Installation requirements

  • A working WordPress installation with the WP-Invoice Plugin installed

Installation and testing for WP-Invoice v3

To install the PayFast payment module, follow the instructions below:

  1. Download the payment module from our site.
  2. Unzip the module to a temporary location on your computer.
  3. Copy the “wp-content” folder in the archive to your base “wordpress” folder.
    • This should NOT overwrite any existing files or folders and merely supplement them with the PayFast files.
    • This is, however, dependent on the FTP program you use.
    • If you are concerned about this, rather copy the individual files across as per instructions below.
  4. Log into the WordPress Administrator console.
  5. Using the main menu, navigate to WP-Invoice > Settings > Payment.
  6. Select the default payment method drop-down and click 'PayFast'.
  7. Click on the PayFast link that appears and the options will then be shown below.
  8. Change default currency to 'South African Rand', leave everything else as per default, and click 'Save All Settings'.
  9. The module is now installed and ready to be tested with the PayFast Sandbox. To test with the sandbox, use the following login credentials when redirected to the PayFast site:
    • Username: sbtu01@payfast.co.za
    • Password: clientpass

Copying the individual files across

If you are concerned that copying the entire folder from the downloaded module may overwrite files in your installation, rather copy the files from the extracted module individually into your installation.

Be sure to copy the files from the downloaded module to their corresponding locations within your installation:

The list of files needed in your online installation is as follows:

wp-content/plugins/wp-invoice/core/gateways/js/wpi_payfast.js
wp-content/plugins/wp-invoice/core/gateways/payfast/payfast_common.inc
wp-content/plugins/wp-invoice/core/gateways/templates/wpi_payfast-frontend.tpl.php
wp-content/plugins/wp-invoice/core/gateways/class_wpi_payfast.php

Testing that it is working correctly

If you followed the installation instructions above, the module is in 'test' mode and you can test it by creating an invoice and completing the payment cycle through the PayFast sandbox, login with the user account detailed above and make payment using the balance in their wallet.

You will not be able to directly 'test' a credit card or Instant EFT payment in the sandbox, but you don’t really need to. The inputs to and outputs from PayFast are exactly the same, no matter which payment method is used, so using the wallet of the test user will give you exactly the same results as if you had used another payment method.

Installing the PayFast module for WP-Invoice v4

To install the PayFast payment module, follow the instructions below:

  1. Download the payment module from our site.
  2. Unzip the module to a temporary location on your computer.
  3. Copy the “wp-content” folder in the archive to your base “wordpress” folder.  
    • This should NOT overwrite any existing files or folders and merely supplement them with the PayFast files
    • This is however, dependent on the FTP program you use
    • If you are concerned about this, rather copy the individual files across as per instructions below
  4. Log into the WordPress Administrator console.
  5. Using the main menu, navigate to Settings > Invoice > Settings > Payments.
  6. Select the default payment method drop-down and click 'PayFast'.
  7. Click on the PayFast link that appears and the options will then be shown below.
  8. Leave everything else as per default and click 'Save All Settings'.
  9. The module is now and ready to be tested with the PayFast Sandbox (note: sandbox does not currently work with subscriptions).
  10. To setup a subscription, select ‘Recurring Bill’ in the right side menu and fill in the PayFast Subscription fields as necessary
  11. Ensure that subscriptions are enabled on the Integration page (under Settings) on your PayFast account

Note: When creating an invoice, the current PayFast configuration is set to that invoice can not be changed. (eg. If PayFast is set to test mode when you create invoice 1, then invoice 1 will always use the sandbox, even if PayFast is later set to live mode).

Going live

In order to make the module “LIVE”, follow the instructions below:

  1. Log into the WordPress Administrator console.
  2. Using the main menu, navigate to Invoice > Settings > Payments.
  3. Click 'PayFast', change the configuration values as below:  
    • PayFast Mode = “LIVE”
    • Merchant ID = <Integration Page>
    • Merchant Key = <Integration Page>
    • Log Debugging Info = No
  4. Change the other fields as per your preferences.
  5. Click 'Save'.
Choose files or drag and drop files
Helpful?
Yes
No