In order to use PayFast with PrestaShop, you will need to install the PayFast payment module for PrestaShop, which is provided by PayFast.
To install the PayFast payment module, do the following:
- Download the correct version for your PrestaShop installation: v1.5-1.6 or v1.7.*
- Unzip the module to a temporary location on your computer.
- Copy the modules folder in the archive to your base PrestaShop 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.
- Using your FTP program, ensure that the /modules as well as /modules/payfast directories are set to CHMOD 0755, otherwise, the validation script will not be accessible to set successful payments as paid. - Delete the install folder in your Prestashop folder.
- Log in to the PrestaShop Back Office console.
- Using the top navigation bar, navigate to Modules Catalog.
- Click Categories and select Other. Alternatively, type PayFast in the search bar and click Search.
- Click Install to install the module.
- Once the module is installed, click Configure below the PayFast name.
- The PayFast options will then be shown, and you will see the module is ready to be tested.
- Leave everything as per default and click Save.
- Set your shipping/ carrier details to your preferred countries/locations for delivery.
- The module is now ready to be tested with the 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
The list of files needed in your online installation is as follows:
modules/payfast/config.xml modules/payfast/logo.gif modules/payfast/payfast.log modules/payfast/payfast.php modules/payfast/payfast.png modules/payfast/payfast_common.inc modules/payfast/payfast_payment.tpl modules/payfast/payfast_success.tpl modules/payfast/validation.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 purchasing from your site as a buyer normally would. You will be redirected to PayFast for payment and can 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.
Going live
In order to make the module 'live', do the following:
- Log in to the PrestaShop Back Office.
- Using the top navigation bar, navigate to Modules.
- Click Payments & Gateways to expand the options.
- Under PayFast, click Configure.
- In the PayFast Settings block, use the following settings:
- Mode = “Live”
- Merchant ID = <Login to PayFast -> Integration Page>
- Merchant Key = <Login to PayFast -> Integration Page>
- Debugging = Unchecked
- Click Save.