Skip to Content
Account
Enter the email address on your account.
Forgot Your Username?
Enter your password.
Forgot Your Password?

Or continue with

J2Commerce 6

GoCardless Direct Debit

5 Min Read

Documentation current for GoCardless Direct Debit v6.0.12. Last checked November 14, 2026.

On This Page

The GoCardless plugin lets customers pay at checkout by Direct Debit (Bacs, SEPA, ACH, BECS, PAD). The customer authorises a mandate on a GoCardless hosted page, and the order is confirmed when GoCardless confirms the payment.

It is for store owners who have a GoCardless account and want to collect bank payments and subscription renewals.

Requirements

  • Joomla 6.0.0 or later.
  • J2Commerce 6.3.6 or later.
  • A GoCardless account with an access token, a webhook endpoint secret and a creditor ID. Use the sandbox values for testing.

Installation

  1. Go to System -> Install -> Extensions and upload the plugin package.
  2. Go to System -> Manage -> Plugins and search for GoCardless Direct Debit.
  3. Enable the plugin and open it to edit the settings.

Settings

Credential fields change with the Sandbox / Test Mode switch: sandbox fields show when it is on, live fields when it is off.

SettingWhat It DoesDefaultOptions
Display NameName shown to customers at checkout.GoCardless Direct DebitText
Display ImageImage shown next to the payment method.EmptyMedia file
Sandbox / Test ModeSends all transactions to the GoCardless sandbox. No real payments are collected.YesYes, No
Live Access TokenYour live access token (starts with live_).EmptyText
Live Webhook Endpoint SecretSecret used to verify live webhook signatures.EmptyText
Live Creditor IDYour creditor ID (CR_...). Used to check refund availability.EmptyText
Sandbox Access TokenYour sandbox access token (starts with sandbox_).EmptyText
Sandbox Webhook Endpoint SecretSecret used to verify sandbox webhook signatures.EmptyText
Sandbox Creditor IDYour sandbox creditor ID.EmptyText
Allow Mandate RenewalsLets stored mandates pay subscription renewals. Also lists mandates as saved payment methods for customers.YesYes, No
Payment Confirmed StatusOrder status set when GoCardless confirms the payment.Order status with ID 1Any order status
Payment Pending StatusOrder status set when the mandate is authorised but the payment is not yet confirmed.Order status with ID 7Any order status
Payment Settled StatusOptional status set when the payment is paid out to you. Empty means no change.EmptyAny order status
Payment Failed StatusOrder status set when a payment fails, is cancelled or is charged back.Order status with ID 6Any order status
Cancel Order StatusOrder status set when you cancel a payment from the admin order.Order status with ID 6Any order status
Refund Order StatusOrder status set when you issue a refund from the admin order. Empty means no change.EmptyAny order status
Debug ModeWrites debug logging to logs/payment_gocardless.php. Turn off in production.NoYes, No

The plugin also has the standard J2Commerce payment fields: sub-template, surcharge (name, percent, fixed amount, tax class), geozone restriction, minimum and maximum subtotal, thank-you article, custom messages for each payment stage, and dashboard icon options.


How Payments Work

  1. At checkout the customer chooses the method and clicks Authorise Direct Debit.
  2. GoCardless shows a hosted page where the customer authorises the mandate.
  3. After the redirect back, the order gets the Payment Pending Status and the customer sees a pending page.
  4. When GoCardless sends the payments.confirmed webhook, the order gets the Payment Confirmed Status. This usually takes 2-5 business days.

The method is hidden at checkout when the order is outside the geozone or the subtotal is outside the minimum and maximum.

Webhook Setup

In your GoCardless dashboard, create a webhook endpoint that points to your site and paste its secret into the matching endpoint secret setting.

https://example.com/index.php?option=com_ajax&plugin=payment_gocardless&group=j2commerce&format=json&task=webhook

Admin Order Actions

On an order paid with GoCardless, administrators with permission to edit orders see these buttons.

  • Sync Payment Status reads the current payment status from GoCardless and updates the order.
  • Cancel Payment works only while the payment is pending submission.
  • Check Refund Availability checks whether your creditor account allows refunds.
  • Issue Refund refunds the payment. Leave the amount blank to refund in full.

Common Setups

Testing With the Sandbox

  1. Leave Sandbox / Test Mode on.
  2. Enter the sandbox access token, endpoint secret and creditor ID.
  3. Place a test order and authorise the mandate with GoCardless test bank details.

Going Live

  1. Enter the live access token, endpoint secret and creditor ID.
  2. Set Sandbox / Test Mode to No.
  3. Create the webhook endpoint in your live GoCardless account.

Troubleshooting

ProblemFix
Dashboard shows "GoCardless access token is not configured."Enter the access token for the mode you are in (live or sandbox).
Dashboard shows "GoCardless is running in sandbox mode."Turn off Sandbox / Test Mode to collect real payments.
"Unable to start the Direct Debit authorisation."Check the access token and enable Debug Mode to read the log.
Order stays pending.Direct Debit takes 2-5 business days. If it stays pending longer, check the webhook endpoint and secret, or use Sync Payment Status.
"Your GoCardless creditor account is not enabled for refunds."Contact GoCardless support to enable refunds.

Uninstalling

  1. Go to System -> Manage -> Extensions.
  2. Search for GoCardless, select the plugin and click Uninstall.

Related Products

GoCardless

Payment J2Commerce

Collect payments from customers' bank accounts with GoCardless Direct Debit, so renewals for subscription products don't fail on expired cards.

Related Products

GoCardless

Payment J2Commerce

Collect payments from customers' bank accounts with GoCardless Direct Debit, so renewals for subscription products don't fail on expired cards.

Still stuck? Our team can help.

Back to Top