Steuerfallstricke @ its Best: Späte Rechnungsstellung bringt nicht nur Ihrer Firma verspätet Geld

… sondern auch dem Finanzamt. Mal wieder geht es hier um die Umsatzsteuer. Wir beleuchten, wann die Umsatzsteuer eigentlich entsteht und auch entsprechend zu erklären ist … und wie Sie in SAP herausfinden können, ob Sie spät dran sind mit der Umsatzsteuer. Denn mit dem Finanzamt ist häufig nicht zu spaßen: Vater Staat braucht Geld!

Wann entsteht die Umsatzsteuer eigentlich?

Alles ist geregelt im Gesetz. Man könnte annehmen, die Umsatzsteuer für die eigenen Ausgangsleistungen entsteht, wenn die Rechnung erstellt und versendet wurde. Dem ist aber in der Regel nicht so, denn die Entstehung der Umsatzsteuer ist an die eigentliche Leistungserbringung geknüpft und nicht an die Rechnung selbst:

„§ 13 Umsatzsteuergesetz

(1) Die Steuer entsteht

1. für Lieferungen und sonstige Leistungen

a) bei der Berechnung der Steuer nach vereinbarten Entgelten (§ 16 Abs. 1 Satz 1) mit Ablauf des Voranmeldungszeitraums, in dem die Leistungen ausgeführt worden sind. […]“

Dies dürfte der häufige Standardfall sein. Alle größeren Unternehmen müssen in der Regel nach vereinbarten Entgelten ihren Umsatz versteuern. Die Umsatzsteuer entsteht also schon bei Ausführung der Leistung selbst.

Bei kleineren Unternehmen ist die Umsatzversteuerung auch nach vereinnahmten Entgelten möglich. In diesem Fall gilt:

„[…]b) bei der Berechnung der Steuer nach vereinnahmten Entgelten (§ 20) mit Ablauf des Voranmeldungszeitraums, in dem die Entgelte vereinnahmt worden sind, […]“

Die Entstehung der Umsatzsteuer nach vereinnahmten Entgelten ist also deutlich liquiditätsfreundlicher für Ihr Unternehmen, da die Umsatzsteuer erst entsteht, wenn auch schon Geld vom Kunden da ist.

Wir bleiben aber im Folgenden bei dem Fall nach vereinbarten Entgelten, da dies als der übliche Standardfall anzusehen ist.

Was sind die Folgen, wenn die Umsatzsteuern nicht rechtzeitig erklärt werden?

Wir wollen nicht den Teufel an die Wand malen, aber schauen wir doch mal nach, was eigentlich Steuerhinterziehung ist (geregelt in der Abgabenordnung):

„§ 370 Steuerhinterziehung

(1) Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer

1. den Finanzbehörden oder anderen Behörden über steuerlich erhebliche Tatsachen unrichtige oder unvollständige Angaben macht,

2. die Finanzbehörden pflichtwidrig über steuerlich erhebliche Tatsachen in Unkenntnis lässt oder

[…] und dadurch Steuern verkürzt oder für sich oder einen anderen nicht gerechtfertigte Steuervorteile erlangt.“

Wenn man das liest, stellt sich einem die Frage, ob die spät erklären Umsatzsteuern nun unter Steuerhinterziehung fallen oder nicht. Immerhin könnte man sagen, man erklärt nichts unrichtig oder unvollständig, sondern nur etwas später. Stimmt. Aber leider gibt es noch keine komplette Entwarnung, denn Absatz 4 verrät uns:

„(4) Steuern sind namentlich dann verkürzt, wenn sie nicht, nicht in voller Höhe oder nicht rechtzeitig festgesetzt werden; dies gilt auch dann, wenn die Steuer vorläufig oder unter Vorbehalt der Nachprüfung festgesetzt wird oder eine Steueranmeldung einer Steuerfestsetzung unter Vorbehalt der Nachprüfung gleichsteht.“

Hier steht es also: die nicht rechtzeitige Festsetzung von Steuern trägt bereits zur Verkürzung von Steuern bei. Auch, wenn die Umsatzsteuervoranmeldung nur eine vorläufige Steuerfestsetzung ist.

Nun sollte man die Kirche im Dorf lassen, aber sicherlich dennoch darauf achten, dass Leistungen nicht systematisch zu spät umsatzsteuerlich erklärt werden.

Als abgeschwächte Version der Steuerhinterziehung gibt es dann noch die sog. leichtfertige Steuerverkürzung:

„§ 378 Leichtfertige Steuerverkürzung

(1) Ordnungswidrig handelt, wer als Steuerpflichtiger oder bei Wahrnehmung der Angelegenheiten eines Steuerpflichtigen eine der in § 370 Abs. 1 bezeichneten Taten leichtfertig begeht. § 370 Abs. 4 bis 7 gilt entsprechend.“

Wie kann ich in SAP herausfinden, ob Rechnungen spät ausgestellt wurden?

Ob Sie von dem Problem zu spät in Rechnung gestellter Leistungen betroffen sind, können Sie in SAP herausfinden. Dazu können Sie folgende SQL Abfrage auf Ihre SAP Datenbank abfeuern. Nutzen Sie dafür wie gewohnt die Transaktion „DBACOCKPIT – Diagnose – SQL Editor“.

Im Folgenden wird geprüft, ob es Lieferungen im SAP SD gab (Tabelle LIKP) für die es eine SD Rechnung gab (Tabelle VBRK), in der Rechnungspositionen (Tabelle VBRP) mit Umsatzsteuerbetrag enthalten sind (Tabelle VBRP Datenfeld MWSBP). Dabei muss die Erfassung/Ausfertigung der Rechnung mindestens 90 Tage nach Erfassung/Ausfertigung des Lieferscheins geschehen sein:

1SELECT VBRP.MANDT, VBRP.VBELN BELNR, VBRK.ERDAT VBRK_ERDAT, LIKP.ERDAT LIKP_ERDAT, LIKP.VBELN LIKP_VBELN, DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT)) "DAYS_DIFF", SUM(VBRP.MWSBP) AMOUNT, STRING_AGG(VBRP.POSNR, ',' ORDER BY VBRP.POSNR) RECH_POS
FROM VBRP
JOIN VBRK ON (VBRP.MANDT=VBRK.MANDT AND VBRP.VBELN=VBRK.VBELN)
JOIN LIKP ON (VBRP.MANDT=LIKP.MANDT AND VBRP.VGBEL=LIKP.VBELN)
WHERE VBRP.MWSBP>0 AND DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT))>=90
GROUP BY VBRP.MANDT, VBRP.VBELN, VBRK.ERDAT, LIKP.ERDAT, LIKP.VBELN
ORDER BY DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT)) ASC

Wenn Sie bei dem Query eine leere Menge als Ergebnis erhalten, gibt es zunächst keine Indikation dafür, dass Sie ein Problem der beschriebenen Art haben.

Für die etwas unerfahrenen im Umgang mit SQL gucken wir uns die einzelnen Bestandteile des Queries wieder an. Für ein beispielhaftes Ergebnis und dem Überspringen der Erklärung klicken Sie hier.

Zunächst überlegen wir, welche Felder für eine sinnvolle Auswertung notwendig sind:

2SELECT VBRP.MANDT, VBRP.VBELN BELNR, VBRK.ERDAT VBRK_ERDAT, LIKP.ERDAT LIKP_ERDAT, LIKP.VBELN LIKP_VBELN, DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT)) "DAYS_DIFF", SUM(VBRP.MWSBP) AMOUNT, STRING_AGG(VBRP.POSNR, ',' ORDER BY VBRP.POSNR) RECH_POS

Das klassische „SELECT“ ist der lesende Zugriff auf die Datenbank und beschreibt diejenigen Felder, die am Ende im Ergebnis angezeigt werden sollen. Dazu gehören in diesem Fall besonders: Belegnummer der SD Rechnung (VBRP.VBELN), Erfassungsdatum der SD Rechnung (VBRK.ERDAT), Belegdatum des SD Lieferscheins (LIKP.ERDAT), Belegnummer des SD Lieferscheins (LIKP.VBELN), die Differenz in Tagen zwischen Erfassungsdatum der SD Rechnung und Erfassung / Ausfertigung des SD Lieferscheins (DATEDIFF[…]), Summe des Umsatzsteuerbetrags (SUM(VBRP.MWSBP)) und einer Auflistung aller betroffenen SD Rechnungspositionen.

Im Anschluss werden die benötigen Tabellen für die Auswertung über Tabellenjoins „verknüpft“:

3FROM VBRP 
JOIN VBRK ON (VBRP.MANDT=VBRK.MANDT AND VBRP.VBELN=VBRK.VBELN) 
JOIN LIKP ON (VBRP.MANDT=LIKP.MANDT AND VBRP.VGBEL=LIKP.VBELN) 

Anschließend werden noch Parameter festgelegt, nach denen die Ergebnismenge gefiltert werden soll. Die Umsatzsteuer soll zum einen natürlich größer als 0 sein und die Differenz in Tagen zwischen Erfassungsdatum der SD Rechnung und Erfassung / Ausfertigung des SD Lieferscheins soll größer oder gleich 90 Tage sein.

4WHERE VBRP.MWSBP>0 AND DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT))>=90 

Das „GROUP BY“ im Anschluss gruppiert die Ergebnismenge lediglich. Diese SQL Funktion verwendet man in aller Regel in Kombination mit den Aggregatfunktionen, wie z.B. „AVG, COUNT, MAX, MIN, SUM“:

5GROUP BY VBRP.MANDT, VBRP.VBELN, VBRK.ERDAT, LIKP.ERDAT, LIKP.VBELN 

Im Anschluss sortieren wir die Differenz in Tagen zwischen Erfassungsdatum der SD Rechnung und Erfassung / Ausfertigung des SD Lieferscheins noch aufsteigend (ASC = ascending):

6ORDER BY DAYS_BETWEEN(TO_DATE(LIKP.ERDAT), TO_DATE(VBRK.ERDAT)) ASC

Ein beispielhaftes Ergebnis könnte dann wie folgt aussehen:

Differenz Rechnungsstellung Lieferschein

Zu kompliziert?

Die beschriebene Fragestellung haben wir in zap Audit bereits als Indikator implementiert. Wenn Sie sich mit dieser Fragestellung befassen, dann melden Sie sich gern bei uns.

Artikel teilen

Facebook
Twitter
XING
LinkedIn