SEPA Direct Debit: Configuration
Settings of SEPA Direct Debit for Shopware 6.7: creditor data, mandate reference prefix, mandate texts in German and English, and managing mandates in the admin under Orders.
SEPA Direct Debit: Configuration
Live Demo: Try this and other plugins live — no installation, no risk: demo.markus-michalski.net
Opening the settings
You reach the plugin configuration in the admin under Extensions > My Extensions > SEPA Direct Debit Payment. The settings are split into three cards.
Creditor data and mandate texts can be overridden per Sales Channel. For the mandate reference prefix only the general value counts; a per-Sales-Channel value is not evaluated. The PDF download in the admin also always uses the general values.
General Settings (creditor data)
These values appear in the mandate PDF under "Creditor", not at checkout.
| Setting | Key | Required | Description |
|---|---|---|---|
| Creditor Identifier | creditorId |
Yes | Your SEPA Creditor ID, for example DE98ZZZ09999999999 |
| Creditor Name | creditorName |
Yes | Name that appears on the SEPA mandate |
| Creditor IBAN | creditorIban |
Yes | Your IBAN for direct debit collection |
| Creditor BIC | creditorBic |
No | Optional for domestic SEPA payments; shown in the PDF only when filled in |
You apply for the Creditor Identifier at the Deutsche Bundesbank: bundesbank.de
The plugin does not validate the creditor ID, IBAN or BIC. The fields are marked required but have no default value.
Mandate Settings
| Setting | Key | Default | Description |
|---|---|---|---|
| Mandate Reference Prefix | mandateReferencePrefix |
SEPA- |
Prefix for automatically generated mandate references. If the field is empty, SEPA- is used. Only the general value counts. |
| Allow Mandate Reuse | allowMandateReuse |
on | Not evaluated by the plugin, see the note below |
The "Allow Mandate Reuse" option has no effect. The plugin always offers an existing active mandate for reuse at checkout, regardless of this setting.
Mandate reference format
Each reference is generated automatically when a mandate is created and never changes afterwards.
{prefix}{YYYYMMDD}-{8 characters}
The last 8 characters are random uppercase letters and digits. With the default prefix a reference looks like this: SEPA-20261011-K3F9QX72. Every reference is unique in the database.
The plugin does not check the prefix length. A SEPA mandate reference may be at most 35 characters long, so the prefix should have at most 18 characters.
SEPA Mandate Text
| Setting | Key | Default |
|---|---|---|
| Mandate Text (DE) | mandateText |
Ich ermächtige den Zahlungsempfänger, Zahlungen von meinem Konto mittels Lastschrift einzuziehen. Zugleich weise ich mein Kreditinstitut an, die vom Zahlungsempfänger auf mein Konto gezogenen Lastschriften einzulösen. Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten dabei die mit meinem Kreditinstitut vereinbarten Bedingungen. |
| Mandate Text (EN) | mandateTextEn |
I authorize the creditor to collect payments from my account by direct debit. At the same time, I instruct my bank to honor the direct debits drawn on my account by the creditor. Note: I can demand a refund of the debited amount within eight weeks, starting from the debit date. The conditions agreed with my bank apply. |
Which text is used depends on the language:
- Checkout: If the storefront request language starts with
en, the English text is shown, otherwise the German one. - Mandate PDF: If the shop language (or the admin context language) starts with
en, the PDF is in English with the English mandate text, otherwise in German. In the PDF all HTML tags are removed from the mandate text except<br>,<p>,<strong>,<em>,<ul>,<ol>and<li>. These remain in the text but are displayed as literal text, not applied as formatting. - Customer account page: The form under "SEPA Direct Debit Mandate" always shows the default text from the plugin translations, not the texts configured here.
When you change the mandate text, the new wording applies to every PDF generated from then on, including those of existing mandates. The text is not stored per mandate.
Managing mandates in the admin
You find all mandates in the admin menu Orders under SEPA Mandates. The order detail page is not extended.
List: mandate reference, customer, account holder, status and creation date, sortable by column. The list has no search. The statuses are Active, Revoked and Expired.
The plugin never sets the status "Expired" itself. Mandates only become inactive through revocation.
Detail page (card "Mandate Details"): mandate reference, status, customer (link to the customer), account holder, BIC, "Signed at", "Revoked at" (revoked mandates only) and "Created at".
- Download PDF generates the mandate PDF with the full IBAN. The file is named
SEPA-Mandat-{mandate reference}.pdf. The download from the admin uses the general settings, not those of a single Sales Channel. - Revoke Mandate (active mandates only, with confirmation) sets the status to "Revoked" and records the revocation time. This cannot be undone.
- The field "IBAN (masked)" shows
****. You do not see the IBAN itself in the admin; it appears only in the PDF.
You cannot create or edit mandates in the admin.
Practical example: setup in four steps
- Assign the SEPA-Lastschrift payment method to the Sales Channel, see Installation.
- In the plugin configuration enter creditor ID, name and IBAN.
- Optionally set your own mandate reference prefix, for example
MMK-. - Place a test order, check the mandate in the admin and download the PDF.