You can use the Stripe gateway to enable your supporters to set up Bacs Direct Debits associated with UK banks using their account number and sort code. The payments are managed by Engaging Networks, so you can control the recurring donations from within the Lookup Supporters Recurring Donations gadget.
For details on other direct debit payment methods using the Stripe gateway (such as iDEAL and SEPA), please refer to this article.
The supporter will land on an Engaging Networks page to begin with, to enter their personal details and payment information. Account number and sort code are not taken at this stage.
On submission of the page hosted by Engaging Networks, donors will be redirected to the Stripe Checkout page where they can enter their bank account details and billing address. This information cannot be retrieved from Engaging Networks and must be completed on the Stripe page.
Once completed, Stripe will show an additional confirmation page that will ask the donor to confirm their Direct Debit details, before they are redirected to the final thank you page in Engaging Networks.
How it works
There are some unique characteristics to Stripe Bacs Direct Debit.
When the page is submitted, Engaging Networks will create a mandate in Stripe. Then it will wait for the mandate to become active. At this point, no transaction is submitted, and no charges are made.
The ‘pending’ status will be visible for 3 days after submission on the Supporter Lookup page with the amount as set. After 3 days, this amount is then set to zero when the mandate becomes active, and the status will be updated to ‘success.’
Click here to read more about Stripe Bacs Direct Debit payments.
1) You will need a validated Stripe account.
Follow the instructions here to add a Stripe gateway connection to your Engaging Networks account. If you are already using Stripe for card processing, you can use an existing connection.
You will also need to add a number of settings inside the gateway to get the Stripe Bacs integration working on your donation pages.
2) Enable Bacs Direct debit
Your Stripe account will need to have Bacs enabled. To do that:
a) In your Stripe dashboard, go to Settings > Payments > Payment methods.
b) Enable Bacs direct debit
3) Add webhooks and Stripe callback events
You will need to add webhooks to allow Engaging Networks and Stripe to communicate about payments.
a) In Stripe, go to Developers > Webhooks or search for “webhooks”
b) Click “+ add endpoint“
c) Type in the webhook URL (https://ca.engagingnetworks.app/page/stripe/webhook) and click “+ Select events“
d) Add the following Stripe callback events (you can use top search tool to search for relevant event names)
4) Set up a Stripe PDD donation page in Engaging Networks
|Form Field||Recommend form block field type||Comments|
|Email Address||Text with Email Validator||Email address identifying the supporter record|
Select or Radio
Must be submitted as bacs_debit
|Donation Amount||Text, Radio with Input or Select with Input with Donation Amount validator||May be entered as a whole number or number with two decimal places. Eg. Twelve dollars may be entered as ’12’ or ‘12.00’. Should not include the currency symbol|
|Recurring Payment||Radio with Y and N values||Must equal Y to submit as recurring payment|
|Recurring Frequency||Hidden field with default value||Must equal MONTHLY. Additional frequencies are not currently supported to process through Stripe Bacs.|
|Recurring Day||Hidden field||The day of the monthly when the recurring payment is collected. If no value is passed into the Recurring Day field, the first payment will occur on the same day the following month.|
|Payment Currency||If allowing other options for additional payment types: select or radio||Must equal GBP|
|First Name||Text||The cardholder’s first name.|
|Last Name||Text||The cardholder’s last name.|
|Address 1||Text||The first address line of the cardholder|
|City||Text||The address city of the cardholder|
|ZIP/ postal code||Text||The post/postal/zip code of the
After direct debit submission
When the mandate is initially submitted, you will see a transaction with status set to pending through the Supporter Lookup view.
After 3 days, this status will update to ‘Success’ once the mandate is cleared.
At this point, the amount will reset to 0, and the Transaction ID will update to reflect the initial mandate.
Each payment processed as part of this mandate will then generate a transaction each month. You will also notice an UPDATE transaction in the Transaction History gadget.
The transaction types mentioned above with respective statuses will also be reflected in the exported file.
To export your Stripe Bacs transactions, please follow the instructions through finance reports.
For all Stripe Bacs transactions, select ‘Bank payments recurring transactions.’
Updating the Mandate
Once the mandate is submitted, its details can be edited inside the Engaging Networks dashboard. You will be able to:
- Update the amount
- Update day of charge
- Update frequency