xpay✦ Commerce
Directory
WooCommerce plugins
GoCardless for WooCommerce
GoCardless for WooCommerce
Extends WooCommerce with a GoCardless gateway. A GoCardless merchant account is required.
5.0
(1 ratings)Will this break my store?
What the WordPress.org registry says about keeping GoCardless for WooCommerce running.
Tested to 7.0.2
Tested against the WordPress branch in use today.1 month ago
At least 8.8 releases a year since launch. WordPress.org only lists versions still available for download, so the real number may be higher.7.4
Your host must be running at least this version.6.8
woocommerce
These must be installed and active first.3
Maintenance & trust
Scored on how GoCardless for WooCommerce is looked after — not on how many stores run it.
Maintenance
35 / 35WordPress compatibility
20 / 20Support responsiveness
Not enough dataMerchant satisfaction
10 / 15Listing transparency
10 / 10Ratings
5.0
1 ratingThis is a feature plugin for accepting payments via GoCardless. It requires WooCommerce to be installed before GoCardless for WooCommerce can be activated.
Compatibility
This extension is compatible with:
Test Account Setup
You can create a user on gocardless.com for live transactions and on the sandbox for test transactions. When you first set up a site, you’ll be prompted to create a user for the correct GoCardless environment when setting up the webhooks.
Development
Install Dependencies & Build
The plugin uses Webpack to build the assets. To build the assets, follow these steps:
- Run
npm installto install the dependencies. - Run
npm run build:webpackto build the asset files. You can also runnpm run start:webpackto watch the files and rebuild them automatically when they change.
You can find the source files in the assets and client directories.
Yes, the GoCardless extension supports BACS and the payment methods mentioned in the GoCardless API documentation.
While GoCardless can collect from customers from many countries, note that GoCardless can only on-board merchants from Austria, Belgium, Finland, France, Germany, Ireland, Luxembourg, Netherlands, Spain, Sweden, United Kingdom, United States, and Canada.
Yes, you need to manually fill in the webhook secret and configure the webhook endpoint. It cannot be automated, so we made it as painless as possible.
If you use a security or firewall plugin or have a firewall application on your server, be sure that you allow requests from GoCardless in that plugin’s settings. GoCardless sends webhooks from the following IP addresses which you may wish to add to your firewall’s approved list:
- 35.204.73.47
- 35.204.191.250
- 35.204.214.181
Ensure that you’re verified by GoCardless, as no payouts are made until this is done. Keep an eye out for emails from GoCardless, and check your Spam folder, as you are also notified when funds are waiting.
Yes. Customers may opt to securely store payment information for future checkout.
GoCardless includes support for WooCommerce Pre-Orders (separate purchase).
Yes, it’s possible to use GoCardless to accept automatic, recurring payments for WooCommerce Subscriptions (separate purchase).
Merchants need only click the Connect button to hook up their GoCardless account. It’s not necessary to Create an App.
Create an App is for developers seeking to code their own applications from scratch and not use the GoCardless for WooCommerce extension or any other already made.
Yes. As of version 2.4.5, WooCommerce GoCardless includes support for merchants upgrading to Pro and/or Plus. It:
- Notifies via webhook with event “mandate_replaced” with the new mandate in the payload.
- Gives an error response about mandate replacement when payment is created with the old mandate.
The selection is automated and depends on two things: first, whether Pay by Bank payments are supported for both the customer and the merchant, and second, the items being purchased. For example, Pay by Bank will be used for simple product purchases where the customer’s billing address is in the UK (GBP), Germany (EUR), and France (EUR). Similarly, for the same setup, subscription product purchases will be completed using the Pay by Bank and Direct Debit (mandate) setup flow. For countries and currencies where instant payment is not supported, the Direct Debit (mandate) only flow will be used.
GoCardless collects payments by setting up a Direct Debit (Mandate). This Direct Debit mandate can be used to collect future payments. Even for a simple product, GoCardless sets up a Direct Debit and collects the payment under the mandate. As a result, every payment—whether for a one-time purchase or a subscription—is processed via this Direct Debit (Mandate), which is recurrent. Therefore, transactions appear as recurrent.
It is important to note that for merchants and customers in the UK (GBP), Germany (EUR), and France (EUR), GoCardless supports Pay by Bank. Pay by Bank allows for one-off payments that are collected instantly without setting up a Direct Debit, and these transactions are not marked as recurrent.
The GoCardless plugin uses the OAuth flow to connect with your GoCardless account. With OAuth, only the most recently connected access token remains active. This means if you use the “Connect with GoCardless” button on multiple stores, the connection for the most recently connected store will remain active, while connections for previously connected stores will be disabled.
To connect a single GoCardless account to multiple stores, follow these steps:
-
Create an Access Token: Log in to your GoCardless Dashboard and create an access token. Follow the instructions here: How to create an access token.
-
Set the Access Token in WordPress: Open your wp-config.php file and define the
WC_GOCARDLESS_ACCESS_TOKENconstant. Set the created access token as its value.define('WC_GOCARDLESS_ACCESS_TOKEN', 'your-access-token-here'); -
Add the Code Snippet: Add the code snippet below to your theme’s functions.php file or to a site-specific plugin:
`
add_filter( ‘option_woocommerce_gocardless_settings’, function ( $settings ) {
if ( ! is_array( $settings ) ) {
return $settings;
}// Set custom access token. “WC_GOCARDLESS_ACCESS_TOKEN” should be defined in wp-config.php.
if ( defined( ‘WC_GOCARDLESS_ACCESS_TOKEN’ ) && WC_GOCARDLESS_ACCESS_TOKEN ) {
$settings[‘access_token’] = WC_GOCARDLESS_ACCESS_TOKEN;
$settings[‘testmode’] = ‘no’; // Set to ‘yes’ for sandbox mode.
}return $settings;
} );
`
Following these steps will allow you to connect a single GoCardless account to multiple WooCommerce stores.
Yes, it uses GoCardless (privacy policy) to accept payments and WooCommerce (privacy policy) to connect GoCardless accounts to individual WooCommerce stores.
Plugin details
Tags on WordPress.org
