PayGate

The PayGate for WooCommerce payment gateway allows customers to make payments online.

PayGate is a South African payment processor and has support for MasterCard and Visa, and optionally American Express and Diners Club.

Note: This product is no longer for sale at WooCommerce.com. Documentation is not being updated. Go to GitHub to download PayGate for free.

Requirements ↑ Back to top

  • PayGate account
  • SSL certificate – see SSL and HTTPS for free and low-cost options
  • Your store’s location must be set to South Africa and currency set to ZAR (rand)

Sign up with PayGate ↑ Back to top

  1. Go to: Getting Started with PayGate.
  2. Complete the form.
  3. Select Get Started.

Installation ↑ Back to top

  1. Download the .zip file from your WooCommerce account.
  2. Go to: WordPress Admin > Plugins > Add New and Upload Plugin with the file you downloaded with Choose File.
  3. Install Now and Activate the extension.

More information at: Install and Activate Plugins/Extensions.

Setup and Configuration ↑ Back to top

  1. Go to: WooCommerce > Settings > Payments.
    Note: ‘Payments’ formerly called ‘Checkout’ prior to WooCommerce 3.4.
  2. Select PayGate. You are taken to the Settings screen.
  3. Configure your settings:
    • Enable/Disable – Enable to use. Disable to turn off.
    • Title – Choose the title shown to customers during checkout
    • Description – Add info shown to customers if they use PayGate
    • Yes/No to display the Description.
    • PayWeb or PayXML – Should match what you signed up for at the PayGate website.
    • PayGate Test Mode – Enable if store is in development. Disable Enable PayGate if this is the case.
    • PayGate ID and PayGate Password (Secret Key) – Enter, as shown on your PayGate account.
    • Accept Diners Club and American Express – Tick checkboxes if you are using PayXML and already enabled these options with PayGate. Not applicable to PayWeb.
  4. Save changes.

Usage ↑ Back to top

The PayWeb payment option allows users to check out using PayGate’s hosted payment facility, and redirects them to handle the payment processing and then back to your site once the payment is complete.

The PayXML payment option allows a seamless payment process by keepings users on your site (except for 3D Secure verification) by handling the entry of credit card details directly on the checkout page and processing the payment via an API call using XML.

The PayXML option requires a valid SSL certificate be installed and enforces the “Force SSL” option in WooCommerce settings in live mode.

Troubleshooting ↑ Back to top

PayXML: When making a payment and I am requested to verify my payment using 3D Secure, when I am redirected back to my online store after verification, the order is not processed and my basket still contains the items, but payments are being processed by PayGate.

The biggest cause of this issue is due to a non-standard WP .htaccess redirect. The PayGate 3D Secure handler sends data back to the website containing transaction information (approval, references, transaction ID’s etc) and the PayGate payment gateway requires this information to process the order correctly. Certain server setups can cause this information to be dropped off before reaching the WooCommerce API.
If you are using the normal WP htaccess file, please check with your host or check your server settings to ensure that POST data is handled correctly. More details can be found here:

Frequently Asked Questions ↑ Back to top

PaySubs Notes and Caveats ↑ Back to top

There are limitations to the PayGate PaySubs product that must be noted.

  • PaySubs works alongside the PayWeb product offered by PayGate and currently there is no option to take credit card details directly on your site for subscriptions. If you do use the PayXML product, be aware that users are redirected to the PayGate site for the actual transaction process.
  • PaySubs is currently only available to merchants with Nedbank and Standard Bank accounts.
  • PaySubs allows a maximum subscription frequency of up to three months, e.g., Subscription renews every 3 months for the duration of the subscription.
  • If no end date is provided for the subscription product in WooCommerce Subscriptions, the PayGate plugin will by default end the subscription after 1 year. To customize this, you can use the following filter
    add_filter('woocommerce_paygate_subscription_total_duration', function($duration){ return '2 years'; });

I enabled the method but PayGate is not available during checkout. ↑ Back to top

PayGate only allows processing of payments in South African Rand (ZAR). Ensure that your default WooCommerce currency is set to South African Rand (ZAR); or in the case of multiple currency support, that checkout currency is set to South African Rand.

I finished testing and disabled test mode, but PayGate is not available during checkout. ↑ Back to top

This is applicable to the PayXML payment option only.


The PayXML payment option requires that a valid SSL certificate is installed on your server and the “Force SSL” option in WooCommerce to be active. Check your WooCommerce settings to ensure you meet requirements.

Questions and Feedback ↑ Back to top

Already purchased and need some assistance? Get in touch with a Happiness Engineer via the Help Desk.

WooCommerce - the most customizable eCommerce platform for building your online business.

Back to the top