Skip to content

Guide

Part of: Payments & settlement

Set up direct debit with Stripe or GoCardless

With SEPA direct debit the club collects its members' open balances automatically once a month – through its own Stripe or GoCardless account, so the money goes straight to the club. This guide covers the setup from the Stripe account to the first collection.

7 min read

First: what you should know

  • The money goes to the club's Stripe account and from there to your bank account. We are not involved in the payment and never see a full IBAN.
  • Stripe charges a fee for each direct debit and another one for returned debits. See Stripe for current prices.
  • Members can have a SEPA direct debit reversed by their bank up to eight weeks after collection. That applies to every direct debit.
  • Direct debit is only available for lists in euro.

What you need

  • A Stripe account for the club, fully verified and with a bank account for payouts.
  • The payment method SEPA Direct Debit switched on in Stripe.
  • An owner or administrator account for the club in Administration (/admin). Only they can switch direct debit on or off for a list – not the list's managers or cashiers.
  • Email addresses on the members' accounts: the notice before each collection and the receipt afterwards go to these addresses.

Prepare Stripe

  1. Sign in at dashboard.stripe.com or create an account for the club there.
  2. Complete the verification: details about the club, the authorised representative and the bank account Stripe pays out to. Until that is done, Stripe cannot collect anything.
  3. Open the payment method settings in Stripe and switch on SEPA Direct Debit.
  4. Open Developers → API keys in Stripe and copy the secret key (starts with sk_live_). Enter it only in the one place described below and never pass it on.

Add Stripe in Administration

  1. Open /admin, choose the club on the left and go to "Contract & payments" → "Online payment".
  2. Enter the secret key in the "Stripe" card.
  3. Click "Verify and save". We check the key with Stripe right away, store it encrypted and afterwards only show its last characters.
  4. Optional: a webhook address now appears below the card. Create a webhook with this address in Stripe, enter its secret (whsec_…) in the field "Webhook secret (optional, whsec_…)" and click "Replace credentials". Direct debit does not need it; it reports refunds faster.

Alternative: GoCardless instead of Stripe

  1. Instead of Stripe the club can also collect direct debits through its own GoCardless account (manage.gocardless.com). GoCardless pays the money out to the club's bank account and charges its own fee per collection.
  2. In the GoCardless dashboard create an access token with read and write access under Developers → Create → Access token.
  3. In /admin open "Contract & payments" → "Online payment", enter the access token in the "GoCardless (SEPA-Lastschrift)" card (to try it out use a sandbox token and tick "Sandbox") and click "Verify and save".
  4. In GoCardless create a webhook under Developers → Create → Webhook endpoint with the address shown below the card and enter the secret shown there in the "Webhook secret" field. Payments, failures and returned debits are then booked immediately, otherwise with the regular reconciliation. The address is unique to your club and only appears once the access token has been saved. If GoCardless still has the former shared address …/api/webhooks/gocardless (without a suffix), change the webhook to the new address – the former one is only accepted for a transition period.
  5. If both Stripe and GoCardless are set up, choose under "Online payment" → "SEPA direct debit via" which one new mandates use. Existing mandates stay with their provider. Everything else – collection day, notice, collection – is the same; the member then enters the IBAN on a GoCardless page. A returned debit is reversed automatically and the amount is open again.
  6. Payments are booked with the payment method "Direct debit (GoCardless)" and in accounting (DATEV) via the money-in-transit account: GoCardless pays out in batches minus its fees, and the treasurer matches the payout during reconciliation.
  7. GoCardless sends payers its own emails (mandate confirmation, notice of each collection) in addition to our notice. If you do not want that, you can apply to GoCardless for custom notifications.
  8. If you remove the GoCardless credentials, all mandates through it end. Announced collections are cancelled and members receive an email asking them to set up the direct debit again.

Switch on direct debit for the list

  1. Choose the list on the left and open "Operations" → "Direct debit".
  2. Tick "Offer SEPA direct debit for this list".
  3. Choose the "Collection day of month" (1 to 28), the minimum amount under "Collect from" and under "Notice (days before)" how many days in advance members are informed (2 to 14).
  4. Click "Save". If something is still missing – Stripe, for example – a yellow note appears next to it.

What members do

  1. The member opens their account in the WebApp or app. It now has a "Direct debit" section. If it says “You don’t have a member account in this list yet” instead, their sign-in is not linked to any account of the list: enter their email address on the account in the Administration under "Journals & accounts" → "Accounts".
  2. They tap "Set up direct debit". A secure Stripe page opens – in the app on iPhone, iPad and Android in the device's browser (Safari or Chrome).
  3. There they enter name, email address and IBAN and confirm the SEPA mandate.
  4. Back in the WebApp or app it says "Direct debit active" with the last four digits of the IBAN. The member can end it at any time with "End direct debit".

How a collection works

  • A few days before the collection day – as many as you set – every member with an open amount from the minimum upwards receives an email with amount, collection day, IBAN ending and mandate reference.
  • On the collection day the amount is collected: at most the announced amount and at most what is still open then. Anything booked after the notice goes with the next collection.
  • It is booked once Stripe confirms the payment – with SEPA that takes a few bank business days. The member then receives the settlement receipt as a PDF by email.
  • If a collection fails (for example insufficient funds or a closed account), the amount stays open and the member receives an email. It is tried again the next month.
  • If the open amount is below the minimum, nothing is collected that month.

The overview in /admin

  • "Operations" → "Direct debit": every member with direct debit, status, IBAN ending, last collection with amount and result, plus the number of active mandates and recently failed collections.
  • "Journals & accounts" → "Payment journal": every collected payment with payment method "Stripe" and the receipt as a PDF. If the club collects through its own bank without Stripe (for example with a batch direct debit), settle the accounts under "Journals & accounts" → "Accounts" with the payment method "Direct debit".
  • The Stripe dashboard shows payments, fees and payouts to your bank account.

If you get stuck

  • The member does not see the "Direct debit" section: direct debit is not switched on for this list, the list is not in euro, or Stripe has not been added yet.
  • "Der Verein hat Stripe nicht eingerichtet" (message in German: the club has not set up Stripe): enter the secret key under "Online payment" as described above and click "Verify and save".
  • "Setup is not finished yet": the member did not complete the Stripe page. Simply tap "Set up direct debit" again.
  • Stripe rejects the direct debit or does not offer it: check that SEPA Direct Debit is switched on in Stripe and the account is fully verified.
  • Trying it without real money: use a test key (sk_test_…) and Stripe's test IBAN DE89 3704 0044 0532 0130 00.

Still stuck?

If a guide leaves a question open, or something looks different from the description: open a ticket and we will reply inside it. Support runs through tickets only, not by email.