SEPA-Lastschrift in Odoo: Mandat und Einzug
Kurz gesagt
Für den Einzug per SEPA-Lastschrift brauchen Sie je Kunde ein unterschriebenes Lastschriftmandat; in Odoo Enterprise 19.0 und 20.0 legen Sie es in der App Buchhaltung (Accounting) unter Buchhaltung ‣ Kunden ‣ Lastschriftmandate an und aktivieren es mit Validieren, nachdem Sie in den Einstellungen SEPA-Lastschrift (SDD) eingeschaltet haben. Die Editionsübersicht von Odoo S.A. führt die Zeile Accounting nur in der Enterprise-Spalte, und im öffentlichen Community-Addon-Verzeichnis der Zweige 19.0 und 20.0 steht kein SDD-Modul. Im SDD-Core-Verfahren senden Sie dem Kunden Betrag und Fälligkeitstag spätestens 14 Kalendertage vor dem Fälligkeitstag, sofern Sie keine andere Frist vereinbart haben; die Sammelzahlung erzeugt eine XML-Datei für Ihr Onlinebanking. Odoo dokumentiert für diese Datei das Format PAIN.008.001.02, die EPC-Customer-to-PSP-Leitlinien nennen pain.008.001.08; klären Sie mit Ihrer Bank, welches Format sie annimmt.
Das Wichtigste
- SEPA-Lastschrift (SDD Core) in Odoo Enterprise 19.0 und 20.0: ein Mandat je Kunde und Konto, in der App Buchhaltung angelegt unter Buchhaltung ‣ Kunden ‣ Lastschriftmandate; die App Buchhaltung führt die Editionsübersicht nur für Enterprise, im Community-Addon-Verzeichnis fehlt das SDD-Modul; das Mandat unterschreibt der Kunde.
- Vorabinformation nach dem EPC-Core-Rulebook: Betrag und Fälligkeitstag spätestens 14 Kalendertage vor dem Fälligkeitstag absenden, sofern Sie mit dem Kunden keine andere Frist vereinbart haben.
- Die Bank des Kunden muss die Einziehung spätestens einen Inter-PSP-Bankarbeitstag vor dem Fälligkeitstag erhalten (D-1); die Cut-off-Zeit gibt Ihre Bank vor, das Rulebook regelt nur die Tage.
- Die Odoo-Dokumentation 20.0 (App Buchhaltung, laut Editionsübersicht Enterprise) nennt für die Sammelzahlung das XML-Format PAIN.008.001.02; die EPC-Customer-to-PSP-Leitlinien (EPC130-08, 2025 Version 1.0, in Kraft seit 5. Oktober 2025) führen für die Einziehung pain.008.001.08.
- In Odoo Enterprise (App Buchhaltung) schließt Odoo ein Mandat ohne Einziehung nach 36 Monaten automatisch; geschlossene oder widerrufene Mandate lassen sich nicht reaktivieren.
- Im SDD-Core-Verfahren: Rückerstattung ohne Angabe von Gründen innerhalb von acht Wochen ab Belastung, Anspruch bei nicht autorisierter Einziehung innerhalb von 13 Monaten; im B2B-Verfahren gibt es für autorisierte Einziehungen keinen Rückerstattungsanspruch, und das Mandat trägt dort die Überschrift „SEPA Business to Business Direct Debit Mandate“.
Ein Lastschriftmandat ist die Grundlage jedes Einzugs: Ohne unterschriebenes Mandat, gültige Gläubiger-Identifikationsnummer und rechtzeitige Vorabinformation darf keine Einziehung auf den Weg. Odoo führt die Mandate in der App Buchhaltung (Accounting; die Editionsübersicht führt diese App nur für Enterprise) und erzeugt die Einzüge als XML-Datei, die Sie in Ihrem Onlinebanking hochladen; Geld bewegt Odoo nicht selbst.
Was Sie vorab brauchen
- Die App Buchhaltung (Accounting). Die Editionsseite von Odoo S.A. führt diese Zeile nur in der Enterprise-Spalte; Community enthält Invoicing. Auch das öffentliche Addon-Verzeichnis der Community-Zweige 19.0 und 20.0 enthält kein SEPA-Lastschrift-Modul. Prüfen Sie, ob das Menü Lastschriftmandate vorhanden ist.
- Enterprise läuft laut Preisseite auf Odoo Online, auf Odoo.sh oder selbst betrieben; die Lastschrift-Dokumentation unterscheidet nicht nach Hosting.
- Die Gläubiger-Identifikationsnummer Ihres Unternehmens. In Deutschland vergibt sie die Deutsche Bundesbank in Abstimmung mit der Deutschen Kreditwirtschaft; Anträge sind nur elektronisch möglich, und die Zuteilung erlaubt noch keinen Einzug, dafür muss Ihr Kreditinstitut zustimmen.
- Die IBAN jedes Kunden, dessen Konto belastet werden soll, und ein Bankjournal mit gültiger IBAN für den Empfang.
- Ein unterschriebenes oder elektronisch signiertes Mandat je Kunde und Konto; das Formular druckt Odoo als PDF.
- Die Annahmezeit Ihrer Bank (Cut-off-Zeit); das EPC-Core-Rulebook regelt nur die Tage, nicht die Uhrzeit.
- Das Exportformat, das Ihre Bank annimmt: Odoo dokumentiert PAIN.008.001.02, die EPC-Customer-to-PSP-Leitlinien nennen pain.008.001.08 (Schritt 6).
- Für Änderungen an den Buchhaltungs-Einstellungen brauchen Sie ein Konto mit den entsprechenden Rechten.
Wie der Einzug nach dem EPC-Core-Rulebook abläuft
Das SEPA-Lastschriftverfahren geht auf das Regelwerk des European Payments Council (EPC) zurück; für Sie wird es über den Vertrag mit Ihrer Bank und die Mandatsvereinbarung mit dem Kunden verbindlich. Maßgeblich ist die Fassung 2025 Version 1.2, in Kraft seit 30. September 2026.
Das Mandat ist die Zustimmung des Kunden, dass Sie sein Konto belasten dürfen. Es muss vom Kunden oder einer bevollmächtigten Person unterschrieben sein, auf Papier oder elektronisch mit einer rechtlich bindenden Signatur. Datensatz DS-01 des Core-Rulebooks verlangt im SDD-Core-Mandat die eindeutige Mandatsreferenz; Name, Postleitzahl und Ort, Land und IBAN des Kunden; Ihren Firmennamen, Ihre Gläubiger-Identifikationsnummer und Ihre Adresse mit Straße und Nummer, Postleitzahl und Ort und Land; die Art der Zahlung; Ort und Zeit der Unterschrift und die Unterschrift selbst; dazu die Überschrift „SEPA Direct Debit Mandate“ mit dem Text zur Autorisierung und zum Rückerstattungsrecht. Für das B2B-Schema verlangt Datensatz DS-01 des B2B-Rulebooks stattdessen die Überschrift „SEPA Business to Business Direct Debit Mandate“ und einen Autorisierungstext, der den Schuldner darauf hinweist, dass er keinen Rückerstattungsanspruch hat. Die Adresse des Kunden ist nur zwingend, wenn Ihre Bank oder die Bank des Kunden in einem SEPA-Land oder -Gebiet außerhalb des EWR sitzt (non-EEA SEPA country or territory); die BIC der Kundenbank nur, wenn Sie sie ausdrücklich verlangen und mindestens eine der beiden Banken dort sitzt. Das unterschriebene Mandat bewahren Sie auf, solange es gilt, und danach mindestens so lange, wie der Kunde eine nicht autorisierte Einziehung anfechten kann (13 Monate); länger, wenn nationales Recht oder Ihr Vertrag mit der Bank es verlangen.
Vor jeder Einziehung steht die Vorabinformation: Sie senden dem Kunden Betrag und Fälligkeitstag spätestens 14 Kalendertage vor dem Fälligkeitstag ab, sofern Sie mit ihm keine andere Frist vereinbart haben; auf den Zugang beim Kunden stellt das Rulebook nicht ab. Die Mitteilung darf der Rechnung beiliegen; bei wiederkehrenden Einziehungen genügt ein Zahlungsplan.
Für den Weg zur Bank gilt D-1: Die Bank des Kunden muss die Einziehung spätestens einen Inter-PSP-Bankarbeitstag vor dem Fälligkeitstag erhalten. An Ihre eigene Bank dürfen Sie die Einziehung nach dem Versand der Vorabinformation vorlegen, aber nicht früher als 14 Kalendertage vor dem Fälligkeitstag, sofern Sie mit Ihrer Bank nichts anderes vereinbart haben; die Uhrzeit bestimmt die Cut-off-Zeit, die Ihre Bank vorgibt. Das Rulebook verlangt ferner, dass die Bank des Kunden die Einziehung nicht vor D-14 erhält.
Die Übersicht ordnet die Stichtage. Die Spalte Verfahren nennt, für welches Verfahren die Zeile gilt; Anhang V des Core-Rulebooks ist eine informative Übersicht und kein Teil des Regelwerks.
| Stichtag | Verfahren | Was gilt |
|---|---|---|
| D-14 | SDD Core | Früheste Vorlage der Einziehung an Ihre Bank, sofern Sie mit Ihrer Bank keine frühere Vorlage vereinbart haben; spätestens an diesem Tag muss die Vorabinformation abgesendet sein, sofern mit dem Kunden keine andere Frist vereinbart ist |
| D-1 | SDD Core und SDD B2B | Spätestens jetzt hat die Bank des Kunden die Einziehung (Inter-PSP-Bankarbeitstag); früher als D-14 darf die Bank des Kunden die Einziehung nach dem Core-Rulebook nicht erhalten |
| D | SDD Core | Fälligkeitstag, Verrechnungs- und Belastungstag fallen nach der Grundregel zusammen; fällt D auf einen Tag, der kein Inter-PSP-Bankarbeitstag ist, rückt der Verrechnungstag auf den nächsten nach |
| D+5 | SDD Core | Späteste Verrechnung einer Rückgabe (fünf Inter-PSP-Bankarbeitstage); für SDD B2B nennt Anhang V des Core-Rulebooks drei |
| acht Wochen nach Belastung | SDD Core | Rückerstattung ohne Angabe von Gründen auf Verlangen des Kunden; im SDD-B2B-Verfahren besteht für autorisierte Einziehungen kein Rückerstattungsanspruch |
| 13 Monate nach Belastung | SDD Core und SDD B2B | Späteste Geltendmachung eines Anspruchs bei nicht autorisierter Einziehung |
Eine Einziehung ist einmalig oder wiederkehrend. Die Kennung der ersten Einziehung einer Reihe ist nach dem Core-Rulebook optional, und eine so gekennzeichnete Einziehung gilt als wiederkehrend; die Änderung stammt aus der Rulebook-Fassung 9.0. Das Core-Verfahren wählen Sie für Verbraucher, B2B für Geschäftskunden; B2B ist optional. Die Fristen und Rechte in diesem Abschnitt beschreiben SDD Core; für B2B gelten nach der Übersicht in Anhang V des Core-Rulebooks andere Regeln, insbesondere kein Rückerstattungsanspruch des Schuldners für autorisierte Einziehungen.
Lebenszyklus des Mandats in Odoo
Die Dokumentation nennt zwei Zustände des Mandats: Entwurf (Draft) vor dem Unterschreiben und Aktiv nach dem Validieren. Die folgende Ordnung ergänzt sie um redaktionelle Phasen; die Phasen 3 und 5 sind keine Zustandsbezeichnungen aus der Dokumentation:
- Entwurf (Odoo-Zustand): Das Mandat ist angelegt, aber noch nicht unterschrieben.
- Aktiv (Odoo-Zustand): Nach dem Unterschreiben validieren Sie es; ab jetzt bucht Odoo Zahlungen darauf.
- Einziehung (redaktionelle Phase): Jede Zahlung erscheint als Einzug; Konto-, Namens- oder Referenzänderungen ziehen Sie nach.
- Beendet: Die letzte Einziehung oder Schließen und Widerrufen beenden es; ohne Einziehung schließt Odoo es automatisch nach 36 Monaten.
- Aufbewahrung (redaktionelle Phase): Es bleibt gespeichert, lässt sich aber nicht mehr aktivieren; nationale Aufbewahrungsfristen und Ihr Bankvertrag können über die 13-Monats-Frist des Rulebooks hinausgehen.
Die 36-Monats-Regel stammt aus dem Core-Rulebook: Ohne vorgelegte Einziehung über 36 Monate muss der Gläubiger das Mandat kündigen und für weitere Einzüge ein neues einholen; prüfen müssen das nur Sie, nicht die Banken.
Schritt für Schritt: Mandat und Einzug in Odoo
Schritt 1: SEPA-Lastschrift aktivieren
Öffnen Sie Buchhaltung ‣ Konfiguration ‣ Einstellungen, scrollen Sie zum Abschnitt Kundenzahlungen und aktivieren Sie SEPA-Lastschrift (SDD). Speichern Sie, und tragen Sie danach im selben Abschnitt die Gläubiger-Identifikationsnummer Ihres Unternehmens ein; auch diese Eingabe speichern Sie. Für Tests nennt die Dokumentation die Nummer DE98ZZZ09999999999; verwenden Sie sie nur zum Ausprobieren.
Ergebnis: Der Abschnitt zeigt Ihre Gläubiger-Identifikationsnummer, und SEPA-Lastschrift steht als Zahlungsmethode zur Verfügung.
Schritt 2: Mandat anlegen
Gehen Sie zu Buchhaltung ‣ Kunden ‣ Lastschriftmandate und klicken Sie auf Neu. Wählen Sie den Kunden, tragen Sie dessen IBAN ein und wählen Sie das SDD-Schema: CORE für Verbraucher, B2B für Geschäftskunden; B2B ist optional und wird nicht von jeder Bank angenommen. Das Feld Gültigkeit (in der deutschsprachigen 19.0-Fassung Enddatum) setzt ein Datum, nach dem das Mandat endet; bleibt es leer, gilt es bis zum Schließen oder Widerrufen.
Ergebnis: Das Mandat steht als Entwurf mit Kunde, IBAN und Schema.
Schritt 3: Mandatsformular drucken und unterschreiben lassen
Klicken Sie auf Senden & Drucken und erzeugen Sie das PDF des Mandatsformulars. Prüfen Sie vor dem Versand, dass es die Pflichtangaben aus Datensatz DS-01 des jeweiligen Rulebooks trägt (Core-Rulebook bei CORE, B2B-Rulebook bei B2B): die Mandatsreferenz; Name, Postleitzahl und Ort, Land und IBAN des Kunden; Ihren Firmennamen, Ihre Gläubiger-Identifikationsnummer und Ihre Adresse mit Straße und Nummer, Postleitzahl und Ort und Land; die Art der Zahlung; Ort und Zeit der Unterschrift. Überschrift und Autorisierungstext richten sich nach dem in Schritt 2 gewählten Schema: Im SDD-Core-Verfahren verlangt das Core-Rulebook die Überschrift „SEPA Direct Debit Mandate“ mit einem Text, der Autorisierung und Rückerstattungsrecht nennt; im B2B-Verfahren verlangt das B2B-Rulebook die Überschrift „SEPA Business to Business Direct Debit Mandate“ mit einem Autorisierungstext, der den Schuldner darauf hinweist, dass er keinen Rückerstattungsanspruch hat. Die Adresse des Kunden ist nur zwingend, wenn Ihre Bank oder die Bank des Kunden in einem SEPA-Land oder -Gebiet außerhalb des EWR sitzt (non-EEA SEPA country or territory); die BIC der Kundenbank nur, wenn Sie sie ausdrücklich verlangen und mindestens eine der beiden Banken dort sitzt. Der Kunde ergänzt fehlende Angaben und unterschreibt.
Ergebnis: Ein unterschriebenes Mandat liegt vor; erst danach sollte die Validierung folgen.
Schritt 4: Mandat validieren
Klicken Sie am Mandat auf Validieren. Odoo aktiviert es, und die Zahlungsmethode steht für diesen Kunden bereit. Später drucken Sie das Formular über das Aktionssymbol (in der deutschsprachigen 19.0-Fassung das Zahnrad-Symbol) und den Eintrag Mandatsformular erneut. Ein falsch angelegtes Mandat schließen oder widerrufen Sie; beide Schritte sind endgültig.
Ergebnis: Das Mandat trägt den Status aktiv und lässt sich in Zahlungen auswählen.
Schritt 5: Zahlungen registrieren und vorab informieren
Registrieren Sie die Zahlung an der Rechnung oder unter Kunden ‣ Zahlungen mit der Zahlungsmethode SEPA-Lastschrift. Der Fälligkeitstag muss so weit in der Zukunft liegen, dass Ihre Vorabinformation spätestens 14 Kalendertage vorher abgesendet ist, sofern Sie mit dem Kunden keine andere Frist vereinbart haben, und Ihre Bank die Einziehung rechtzeitig erhält. Die Vorabinformation ist im Abschnitt Mandate der geöffneten Dokumentation nicht beschrieben: Prüfen Sie in Ihrer Datenbank, ob Ihre Odoo-Version sie erzeugt, und senden Sie sie sonst selbst mit der Rechnung oder gesondert; halten Sie fest, wann Sie sie abgesendet haben.
Ergebnis: Die Zahlungen stehen als Lastschriftzahlungen bereit und sind noch nicht eingezogen.
Schritt 6: Sammelzahlung erzeugen und XML hochladen
Aktivieren Sie einmalig unter Buchhaltung ‣ Konfiguration ‣ Einstellungen im Abschnitt Kundenzahlungen die Stapelzahlungen. Gehen Sie zu Kunden ‣ Sammelzahlungen und klicken Sie auf Neu: Sammeltyp Eingehend, Bankjournal, Zahlungsmethode SEPA-Lastschrift, Datum. Fügen Sie über Zeile hinzufügen die Einzüge hinzu; mischbar sind nur Zahlungen derselben Methode. Mit Bestätigen erzeugt Odoo die XML-Datei, die im Chatter liegt.
Laden Sie die Datei in Ihrem Onlinebanking hoch. Nach der Odoo-Dokumentation erzeugt Odoo sie nach PAIN.008.001.02 und beruft sich dafür auf die SEPA-Customer-to-Bank-Leitlinien; die EPC-Customer-to-PSP-Leitlinien (EPC130-08, 2025 Version 1.0, in Kraft seit 5. Oktober 2025) führen in Abschnitt 2.1.1 für die Einziehung das Format pain.008.001.08 (Customer Direct Debit Initiation V08). Klären Sie deshalb vor dem ersten Einzug mit Ihrer Bank, welches Format sie annimmt, und stellen Sie bei Bedarf unter Buchhaltung ‣ Konfiguration ‣ Journale im Bankjournal auf dem Tab Eingehende Zahlungen im Feld SEPA Pain Version die verlangte Version ein. Erscheint die Sammelzahlung auf dem Kontoauszug, gleichen Sie die Transaktion mit ihr ab; danach stehen die Rechnungen als bezahlt. Den Abgleich beschreibt Bankabstimmung in Odoo.
Ergebnis: Die XML-Datei ist heruntergeladen und beim Institut eingereicht; nach dem Abgleich sind die Rechnungen bezahlt.
So prüfen Sie das Ergebnis
Die Kontrollen gelten für die App Buchhaltung von Odoo Enterprise 19.0 und 20.0; die Fristen stammen aus dem EPC-Rulebook.
- Öffnen Sie am Mandat über die Schaltflächen Einzüge und Bezahlte Rechnungen die zugehörigen Zahlungen; sie müssen zum Zeitraum der Sammelzahlung passen.
- Vergleichen Sie die Fälligkeitstage im XML mit dem Datum, an dem Sie die Vorabinformation abgesendet haben; das Core-Rulebook verlangt das Absenden spätestens 14 Kalendertage vor dem Fälligkeitstag, sofern Sie mit dem Kunden keine andere Frist vereinbart haben (PT-04.02). Für die Vorlage der Einziehung an Ihre eigene Bank gilt PT-04.03: Ihr Institut ersetzt ein überholtes Fälligkeitsdatum nur, wenn Sie das mit ihm vereinbart haben, sonst weist es die Datei zurück.
- Prüfen Sie, ob das Format der XML-Datei zu dem passt, was Ihre Bank annimmt (Odoo dokumentiert PAIN.008.001.02, die EPC-Customer-to-PSP-Leitlinien nennen pain.008.001.08). Anweisungen mit Syntaxfehlern schickt Ihr Institut nach PT-04.04 zur Korrektur zurück.
- Zählen Sie die Positionen der Sammelzahlung gegen die Zeilen im Kontoauszug; Odoo ordnet den Gesamtbetrag über die Stapelreferenz zu.
- Kontrollieren Sie bei wiederkehrenden Abos in Odoo-Abonnements, dass jede Folgezahlung ein aktives Mandat hat.
Wenn etwas nicht klappt
| Symptom | Ursache nach Odoo-Dokumentation 20.0 in der App Buchhaltung (Enterprise) oder Rulebook | Abhilfe |
|---|---|---|
| Die Bank weist die XML-Datei zurück | Syntaxfehler in den Anweisungen (PT-04.04) oder eine so späte Vorlage an Ihre Bank, dass der Zeitzyklus nicht mehr eingehalten wird und Sie kein neues Fälligkeitsdatum mit ihr vereinbart haben (PT-04.03) | Stichtage prüfen: Die Bank des Kunden muss die Einziehung spätestens am D-1 erhalten, und Ihre Bank muss die Datei innerhalb des Zeitzyklus bekommen; Syntax der Datei prüfen; das Format mit der Bank klären (Odoo dokumentiert PAIN.008.001.02, die EPC-Leitlinien nennen pain.008.001.08). Den Versand der Vorabinformation spätestens 14 Kalendertage vor dem Fälligkeitstag prüfen Sie zusätzlich als eigene Pflicht aus PT-04.02 |
| Eine Zahlung fehlt in der Sammelzahlung | Andere Zahlungsmethode oder noch nicht registriert | Zahlung registrieren und die Methode auf SEPA-Lastschrift stellen |
| Nach dem Schließen wird weiter eingezogen | Bereits registrierte Zahlungen nimmt Odoo noch in die nächste XML-Datei auf | Zahlungen vor dem Schließen entfernen; das Schließen verhindert nur neue Rechnungen |
| Die Lastschrift kommt als Rückgabe zurück | Im SDD-Core-Verfahren hat die Bank des Kunden die Einziehung zurückgegeben, etwa wegen fehlender Deckung | Die Buchung stornieren und das Storno mit der Transaktion mit negativem Betrag abgleichen |
| Bei einer Online-Bestellung bleibt das Mandat im Entwurf | Odoo legt Mandate für online bezahlte Verkaufsaufträge als Entwurf an und validiert sie erst, wenn die erste Zahlung per Überweisung eingegangen ist | Zahlungseingang abgleichen oder das Mandat nach unterschriebenem Formular von Hand validieren |
Wann Sie Hilfe holen sollten
Klären Sie mit Ihrer Bank die Cut-off-Zeiten, welches pain.008-Format sie annimmt (Odoo dokumentiert PAIN.008.001.02, die EPC-Customer-to-PSP-Leitlinien nennen pain.008.001.08) und ob sie das B2B-Schema annimmt; das Core-Rulebook lässt die Uhrzeiten offen. Die Gläubiger-Identifikationsnummer vergibt in Deutschland die Deutsche Bundesbank, die Zustimmung zum Einzug gibt Ihr Kreditinstitut. Bei übernommenen Mandaten aus einem Altsystem oder Einzügen für mehrere Gesellschaften prüfen Sie die Zuordnung mit Ihrer Steuerberatung in einer Kopie der Datenbank.