How do I integrate PayFast with WP Invoice?

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.

Installing the PayFast module for WP Invoice v4.3.1


Please note: Our latest WP Invoice plugin v2.0.0 is only compatible with WP Invoice 4.0 and above. Please make sure you are using their latest version. 

 

To install the PayFast payment module, do the following:

  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 the instructions below.

  4. Log in to 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 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 ready to be tested with the PayFast Sandbox (note: Sandbox does not currently work with subscriptions).

  10. To set up a subscription, select “Recurring Billing” 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.

Please note: When creating an invoice, the current PayFast configuration is setup so 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”, do the following:

  1. Log in to 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”.

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/lib/gateways/js/wpi_payfast.js

wp-content/plugins/wp-invoice/lib/gateways/payfast/payfast_common.inc

wp-content/plugins/wp-invoice/lib/gateways/templates/wpi_payfast-frontend.tpl.php

wp-content/plugins/wp-invoice/lib/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. Log in 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.


    • Related Articles

    • How do I integrate PayFast with WP Invoicing?

      This module was developed by WP Invoicing, so please visit their website for integration support. You will need to be registered on PayFast to accept payments and get your Merchant ID. For further inquiries, visit the Invoice inquiry page. Demo site ...
    • I upgraded WordPress/WP Invoice and now 'PayFast' no longer appears as a payment option.

      When upgrading either WordPress or WP Invoice, the PayFast payment module files may be deleted. You simply need to reinstall the module following the installation procedures and the 'PayFast' option will reappear with your previous setting intact.
    • How do I integrate PayFast with Invoice Ninja?

      To integrate your PayFast account with Invoice Ninja, do the following:   Log in to your Invoice Ninja account. Navigate to Settings > Payment Settings. Click on Configure Gateways. Search for and select PayFast as the Provider. Enter your PayFast ...
    • How do I integrate PayFast with WP EasyCart?

      This module was developed by WP EasyCart, so please visit their website for integration support. You will need to be registered on PayFast to accept payments and get your Merchant ID. In order to use this integration, you would need to have the WP ...
    • How do I integrate PayFast with WP eCommerce?

      In order to use PayFast with WP e-Commerce, you will need to install the PayFast payment module for WP e-Commerce which is provided by PayFast. Installation requirements A working WordPress installation with the WP e-Commerce plugin installed ...