Mahnsystem: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
 
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 31: Zeile 31:


== Mahnungen verhindern ==
== Mahnungen verhindern ==
=== Verschieben des Fälligkeitsdatum ===


* Eine Rechnung hat ein fest eingetragenes Fälligkeitsdatum (FAELLIG). Um eine erste Mahnung zu verhindern, kann dieses Datum hochgesetzt werden.
* Eine Rechnung hat ein fest eingetragenes Fälligkeitsdatum (FAELLIG). Um eine erste Mahnung zu verhindern, kann dieses Datum hochgesetzt werden.
* Im Feld "Fälligkeiten nach dem [TT.MM.JJJJ] ausblenden" kann das Datum eingegeben bis zu welchen OrgaMon überhaupt Beleg anmahnen soll. Somit kann man aktuellere Forderungen ausblenden.  
* Im Feld "Fälligkeiten nach dem [TT.MM.JJJJ] ausblenden" kann das Datum eingegeben bis zu welchen OrgaMon überhaupt Beleg anmahnen soll. Somit kann man aktuellere Forderungen ausblenden.  
=== OLAP - Statement ===
* Ausschluss: Optional ist die Möglichkeit System-OLAPs zu erstellen, die einen ganzen PERSONEN-Kreis vom Mahnsystem ausschliesst. Der Dateiname muss <code> System.Mahnung.Ausschluss.*.OLAP.txt</code> lauten.
* Ausschluss: Optional ist die Möglichkeit System-OLAPs zu erstellen, die einen ganzen PERSONEN-Kreis vom Mahnsystem ausschliesst. Der Dateiname muss <code> System.Mahnung.Ausschluss.*.OLAP.txt</code> lauten.
=== Aussetzen ===
* Aussetzen: Einzelne Belege können vom Mahnsystem ausgeschlossen werden: Ankreuzfeld Spalte "Aus" in den Belegen. Oder Person->Beleg Spalte "Aus".
* Aussetzen: Einzelne Belege können vom Mahnsystem ausgeschlossen werden: Ankreuzfeld Spalte "Aus" in den Belegen. Oder Person->Beleg Spalte "Aus".


Zeile 43: Zeile 51:
== Verzugszinsen ==
== Verzugszinsen ==


Eintrittsschwelle für Mahnverzugszinsen ist angebbar. Dadurch wird bestimmt ab welchem Zins-Betrag überhaupt Angaben gemacht werden. Durch einen negativen Betrag kann ein "grundsätzlicher" Mahnzins vorgegeben werden, der als Mindestsatz immer berechnet wird.
Werden Forderungen nicht zum Fälligkeitsdatum ausgeglichen erhöht sich laut Gesetz die Gesamtforderung um Verzugszinsen.
 
* http://www.bundesbank.de/info/info_zinssaetze.php
 
<code>
#
# Stand 10.02.2012, gültig ab 01.01.2012
#
MahnungZinsSatzPrivat=5,12
MahnungZinsSatzGewerblich=8,12
</code>
 
=== MahnungMahnstufeZinsEintritt= ===
 
Neben der Angabe der Zinssätze muss diese Berechnung in den Systemeinstellungen erst aktiviert aktiviert werden.
 
* Aktivierung dieser Funktion UND Ausweis der Zinsen
 
<code>
MahnungMahnstufeZinsEintritt=-1
</code>
 
 
* Stille Aktivierung der Funktion. Hierbei kann angegeben werden ab welcher maximalen Mahnstufe auf einem Beleg die Zinsberechnung startet. Sie wirkt sich dann aber auf alle fälligen Beträge aus, und nicht nur auf die Belege einer gewissen Mahnstufe.
 
<code>
MahnungMahnstufeZinsEintritt=2
</code>
 
 
=== MahnungZinsSatz*= ===
 
* Endkunden kann je nach Einstufung (Privat/Gewerblich) ein unterschiedlicher Verzugszins berechnet werden. Als Grundlage dient das Datenbank Feld "RABATT_CODE"
** Privatkunden sind: Person->Reiter Rabatt->bei "Rabbat Kattegorie" steht nicht drin
** Gewerbliche Kunden sind: Person->Reiter Rabatt->bei "Rabbat Kattegorie" ist etwas eingetragen
 
 
Es wird der Jahreszins angegeben. Die Verzinsungsberechnung erfolgt taggenau nach der Formel:
 
Zins = SaldoLautBeleg * (ZinsSatz / 100.0) * (TageFaellig / 360)
 
<code>
# Systemparameter
MahnungZinsSatzPrivat=6,2
MahnungZinsSatzGewerblich=8,9
</code>
 
=== MahnungMindestZins= ===
 
* Die Eintrittsschwelle für Mahnverzugszinsen ist angebbar. Dadurch wird bestimmt ab welchem Zins-Betrag überhaupt Angaben zur Verzinsung gemacht werden.
 
<code>
# Systemparameter
MahnungMindestZins=0,25
</code>
 
In diesem Fall werden Zinsen ab 25 Cent ausgewiesen.
 
 
* Durch einen negativen Betrag kann ein "grundsätzlicher" Mahnzins vorgegeben werden, der als Mindestsatz immer berechnet wird.


<code>
<code>
MahnungMindestZins=-1,00
# Systemparameter
 
MahnungMindestZins=-1,00
</code>
</code>


Berechnet also immer Grundsätzlich zumindest einen Euro als Zinsen
Berechnet wird in diesem Fall immer grundsätzlich zumindest einen Euro als Zinsen, insofern die Zinsen zumindest 0,01 Euro überschreiten.


Nach der Eurozinsmethode wird jeder Monat kalendergenau, das Jahr mit 360 Zinstagen gerechnet (Methode "aktuell/360"). Der erste Kalendertag des Zinszeitraums wird nicht mitgezählt, der letzte Kalendertag mitgezählt (BGB § 187, 188).
== Mahngebühr ==


Beispiele: 20.02. -  20.03. = 28 Tage; 28.02. - 31.03. = 31 Tage
Mahngebühren werden auf der Mahnung ab einer einstellbaren Mahnstufe erhoben. Die Forderung wird NICHT auf dem Konto Ausgangsrechnungen gebucht, da in der Regel die Zahlung des eigentlichen Rechnungsbetrages toleriert wird. Zahlt jedoch ein Kunde den Rechnungsbetrag incl. Mahngebühr, so muss die Forderung um die Mahngebühr erhöht werden.  


Berechnung des Verzugsschadens:
=== Voraussetzungen ===
Rechnungsbetrag fällig seit 15.10. 20 000,00 EUR
 
+ Verzugszinsen+ nachweisbare Auslagen 10,57 % × 46 × 20000/360/100
Bestimmen Sie zunächst ein Sortiment ohne MwSt. denn die Mahngebühren sind nicht umsatzsteuerpflichtig. Legen Sie einen Artikel "Mahngebühr" an.
Telefonate, Porto, Zeitaufwand 270,12 EUR20,00 EUR
 
Forderungsbetrag am 30.11. 20 290,12 EUR
=== Korrektes Verbuchen der Mahngebühr ===
 
Zunächst stellt sich ja das Problem, dass die Rechnung "überzahlt" ist. Man geht also in die Rechnung und fügt ganz unten den Mahngebühr Artikel hinzu und verbucht die Rechnung (es entsteht eine weitere Teillieferung dieses Belegs!). Das Rechnungsformular muss ausgedruckt werden, da eine weitere Rechnungsnummer verbraucht wird. Der Kunde hat also 2 Rechnungen mit einem Betrag bezahlt, das sollte sich im automatischen Forderungsausgleich mit einem Volltreffer auswirken.


== Diagnose-Möglichkeiten ==
== Diagnose-Möglichkeiten ==
Zeile 74: Zeile 147:


Überzahlen Kunden einen Beleg, und wird diese Überzahlung später mit einem Beleg verrechnet, so muss folgendes gebucht werden: alter Beleg "-Betrag", neuer Beleg "+Betrag". Wichtig: Der alte Beleg sollte somit vollständig ausgeglichen werden, auch der neue hat bei passender Restzahlung Rechnungsbetrag=davon Bezahlt! Nur so verschwinden Belege aus dem Fokus von OrgaMon beim Erstellen der Mahnung.
Überzahlen Kunden einen Beleg, und wird diese Überzahlung später mit einem Beleg verrechnet, so muss folgendes gebucht werden: alter Beleg "-Betrag", neuer Beleg "+Betrag". Wichtig: Der alte Beleg sollte somit vollständig ausgeglichen werden, auch der neue hat bei passender Restzahlung Rechnungsbetrag=davon Bezahlt! Nur so verschwinden Belege aus dem Fokus von OrgaMon beim Erstellen der Mahnung.
=== !Unplausible Mahndaten ===
!Unplausible Mahndaten im Beleg ~Beleg#~ ~Person~
* hierzu liegt folgendes SQL-Statement zugrunde. Das (hoffentlich) mehr Klarheit bringt
<code>
select RID,PERSON_R from BELEG where
( (mahnung3 is not null) and ( (mahnung2 is null) or (mahnung1 is null) )) or
( (mahnung2 is not null) and (mahnung1 is null) ) or
( (mahnstufe is null) and ( (mahnung1 is not null) or (mahnung2 is not null) or (mahnung3 is not null) ) ) OR
( (mahnstufe is not null) and (mahnung1 is null) and (mahnung2 is null) and (mahnung3 is null) ) or
( (mahnstufe<>1) and (mahnung1 is not null) and (mahnung2 is null) and (mahnung3 is null) ) or
( (mahnstufe<>2) and (mahnung1 is not null) and (mahnung2 is not null) and (mahnung3 is null) ) or
( (mahnstufe<3) and (mahnung1 is not null) and (mahnung2 is not null) and (mahnung3 is not null) ) or
( (mahnstufe=1) and (mahnung1<>mahnung) ) or
( (mahnstufe=2) and (mahnung2<>mahnung) ) or
( (mahnstufe=3) and (mahnung3<>mahnung) )
</code>
des weitern ist zu beachten:
* MAHNUNG, MAHNUNG1, MAHNUNG2, MAHNUNG3 sind Timestamp Felder es muss also der Datums UND Zeitanteil identisch sein. Im Falle einer differenz einfach den Zeitanteil weglöschen.
=== !Differenz ===
Es werden die gebildeten Salden aus "AUSGANGSRECHNUNGEN" (Z) und "BELEGEN" (B) verglichen. Gibt es hier Unterschiede so muss jeweils per Hand die entsprechende Zahl korrigiert werden.
!Differenz ~SummeLautAusgangsRechnung~ ~SummeLautBelege~ ~SummeLautAusgangsRechnung - SummeLautBelege~ ~Person~
== HTML Vorlagen ==
* Mahnstufe=0:  "Mahnung.html"
* Mahnstufe=1:  "Mahnung2.html"
* Mahnstufe>=3: "Mahnung3.html"
wird die Mahnung auch mit MB (=Mahnbescheid) verbucht, so entfallen weiteren Mahnstufen. Der Ausgabebeleg wird in die Datei "Mahnbescheid.html" des Personen-Dokumentverzeichnisses kopiert.

Aktuelle Version vom 10. Oktober 2013, 08:33 Uhr

Überblick

#-------------------------- Aussenstände ---------------------------------> Zeit
#--- offen ---#--- fällig --- #-------------- in Verzug ------------------>
^             ^               #--- M1 ---#--- M2 ---#--- M3 ---#--- MB --->
|             |
|             ^               ^
|             |               | 
|             |               *-- Mahneintritt
|            >#---------------#<- Fälligkeitstoleranz
|             |
|             *-- Fälligkeitsdatum
|                            >#---------#<- Mahnabstand
*-- Buchungsdatum


offen = Forderung gestellt aber Zahlung noch nicht fällig
fällig = Forderung offen und jetzt zu zahlen

M1 = erste Mahnung
M2 = zweite Mahnung
M3 = dritte Mahnung
MB = Mahnbescheid

Dauer von "offen" : Systemeinstellung ZahlungInXTagen
Dauer von "fällig" : Systemeinstellung Mahntoleranz
Dauer von M1 : Systemeinstellung MahnfreierZeitraum

Mahnungen verhindern

Verschieben des Fälligkeitsdatum

  • Eine Rechnung hat ein fest eingetragenes Fälligkeitsdatum (FAELLIG). Um eine erste Mahnung zu verhindern, kann dieses Datum hochgesetzt werden.
  • Im Feld "Fälligkeiten nach dem [TT.MM.JJJJ] ausblenden" kann das Datum eingegeben bis zu welchen OrgaMon überhaupt Beleg anmahnen soll. Somit kann man aktuellere Forderungen ausblenden.

OLAP - Statement

  • Ausschluss: Optional ist die Möglichkeit System-OLAPs zu erstellen, die einen ganzen PERSONEN-Kreis vom Mahnsystem ausschliesst. Der Dateiname muss System.Mahnung.Ausschluss.*.OLAP.txt lauten.

Aussetzen

  • Aussetzen: Einzelne Belege können vom Mahnsystem ausgeschlossen werden: Ankreuzfeld Spalte "Aus" in den Belegen. Oder Person->Beleg Spalte "Aus".

Fälligkeitstoleranz

Jede Rechnung hat ein festes Fälligkeitsdatum, das vom System berechnet und gesetzt wird. Bei Mahnlauf wird ausgehend vom aktuellen Datum nachgesehen, welche Belege nicht vollständig bezahlt UND Überfällig sind. Tritt auch nur ein einzelner Beleg eines Kunden hervor, der diesem Kriterium entspricht, so wird eine Kontoinfo / Mahnung für diesen Kunden erstellt. Dieser Beleg kann wiederum andere Belege enthalten die für sich genommen keine Mahnung ausgelößt hätten. Die Fälligkeitstoleranz verschiebt das Systemdatum um ganze Tage in die Zukunft, d.h. eigentlich fällige Belege werden mit zunehmender Toleranz zunehmend ausgeblendet.

Verzugszinsen

Werden Forderungen nicht zum Fälligkeitsdatum ausgeglichen erhöht sich laut Gesetz die Gesamtforderung um Verzugszinsen.

#
# Stand 10.02.2012, gültig ab 01.01.2012
#
MahnungZinsSatzPrivat=5,12
MahnungZinsSatzGewerblich=8,12

MahnungMahnstufeZinsEintritt=

Neben der Angabe der Zinssätze muss diese Berechnung in den Systemeinstellungen erst aktiviert aktiviert werden.

  • Aktivierung dieser Funktion UND Ausweis der Zinsen

MahnungMahnstufeZinsEintritt=-1


  • Stille Aktivierung der Funktion. Hierbei kann angegeben werden ab welcher maximalen Mahnstufe auf einem Beleg die Zinsberechnung startet. Sie wirkt sich dann aber auf alle fälligen Beträge aus, und nicht nur auf die Belege einer gewissen Mahnstufe.

MahnungMahnstufeZinsEintritt=2


MahnungZinsSatz*=

  • Endkunden kann je nach Einstufung (Privat/Gewerblich) ein unterschiedlicher Verzugszins berechnet werden. Als Grundlage dient das Datenbank Feld "RABATT_CODE"
    • Privatkunden sind: Person->Reiter Rabatt->bei "Rabbat Kattegorie" steht nicht drin
    • Gewerbliche Kunden sind: Person->Reiter Rabatt->bei "Rabbat Kattegorie" ist etwas eingetragen


Es wird der Jahreszins angegeben. Die Verzinsungsberechnung erfolgt taggenau nach der Formel:

Zins = SaldoLautBeleg * (ZinsSatz / 100.0) * (TageFaellig / 360)

# Systemparameter

MahnungZinsSatzPrivat=6,2
MahnungZinsSatzGewerblich=8,9

MahnungMindestZins=

  • Die Eintrittsschwelle für Mahnverzugszinsen ist angebbar. Dadurch wird bestimmt ab welchem Zins-Betrag überhaupt Angaben zur Verzinsung gemacht werden.

# Systemparameter

MahnungMindestZins=0,25

In diesem Fall werden Zinsen ab 25 Cent ausgewiesen.


  • Durch einen negativen Betrag kann ein "grundsätzlicher" Mahnzins vorgegeben werden, der als Mindestsatz immer berechnet wird.

# Systemparameter
MahnungMindestZins=-1,00

Berechnet wird in diesem Fall immer grundsätzlich zumindest einen Euro als Zinsen, insofern die Zinsen zumindest 0,01 Euro überschreiten.

Mahngebühr

Mahngebühren werden auf der Mahnung ab einer einstellbaren Mahnstufe erhoben. Die Forderung wird NICHT auf dem Konto Ausgangsrechnungen gebucht, da in der Regel die Zahlung des eigentlichen Rechnungsbetrages toleriert wird. Zahlt jedoch ein Kunde den Rechnungsbetrag incl. Mahngebühr, so muss die Forderung um die Mahngebühr erhöht werden.

Voraussetzungen

Bestimmen Sie zunächst ein Sortiment ohne MwSt. denn die Mahngebühren sind nicht umsatzsteuerpflichtig. Legen Sie einen Artikel "Mahngebühr" an.

Korrektes Verbuchen der Mahngebühr

Zunächst stellt sich ja das Problem, dass die Rechnung "überzahlt" ist. Man geht also in die Rechnung und fügt ganz unten den Mahngebühr Artikel hinzu und verbucht die Rechnung (es entsteht eine weitere Teillieferung dieses Belegs!). Das Rechnungsformular muss ausgedruckt werden, da eine weitere Rechnungsnummer verbraucht wird. Der Kunde hat also 2 Rechnungen mit einem Betrag bezahlt, das sollte sich im automatischen Forderungsausgleich mit einem Volltreffer auswirken.

Diagnose-Möglichkeiten

Durch die OLAP-Abfrage Mahnung.unplausibel.OLAP.txt lassen sich Belege ausgeben bei denen die Fehler MAHNSTUFE (=M?) MAHNUNG1, MAHNUNG2, MAHNUNG3 nicht stimmen.

Reiter Diagnose

!Unplausible Mahndaten im Beleg !Differenz !Mahnschwelle

Zuviel bezahlt!

Überzahlen Kunden einen Beleg, und wird diese Überzahlung später mit einem Beleg verrechnet, so muss folgendes gebucht werden: alter Beleg "-Betrag", neuer Beleg "+Betrag". Wichtig: Der alte Beleg sollte somit vollständig ausgeglichen werden, auch der neue hat bei passender Restzahlung Rechnungsbetrag=davon Bezahlt! Nur so verschwinden Belege aus dem Fokus von OrgaMon beim Erstellen der Mahnung.

!Unplausible Mahndaten

!Unplausible Mahndaten im Beleg ~Beleg#~ ~Person~
  • hierzu liegt folgendes SQL-Statement zugrunde. Das (hoffentlich) mehr Klarheit bringt

select RID,PERSON_R from BELEG where
( (mahnung3 is not null) and ( (mahnung2 is null) or (mahnung1 is null) )) or
( (mahnung2 is not null) and (mahnung1 is null) ) or
( (mahnstufe is null) and ( (mahnung1 is not null) or (mahnung2 is not null) or (mahnung3 is not null) ) ) OR
( (mahnstufe is not null) and (mahnung1 is null) and (mahnung2 is null) and (mahnung3 is null) ) or
( (mahnstufe<>1) and (mahnung1 is not null) and (mahnung2 is null) and (mahnung3 is null) ) or
( (mahnstufe<>2) and (mahnung1 is not null) and (mahnung2 is not null) and (mahnung3 is null) ) or
( (mahnstufe<3) and (mahnung1 is not null) and (mahnung2 is not null) and (mahnung3 is not null) ) or
( (mahnstufe=1) and (mahnung1<>mahnung) ) or
( (mahnstufe=2) and (mahnung2<>mahnung) ) or
( (mahnstufe=3) and (mahnung3<>mahnung) ) 

des weitern ist zu beachten:

  • MAHNUNG, MAHNUNG1, MAHNUNG2, MAHNUNG3 sind Timestamp Felder es muss also der Datums UND Zeitanteil identisch sein. Im Falle einer differenz einfach den Zeitanteil weglöschen.

!Differenz

Es werden die gebildeten Salden aus "AUSGANGSRECHNUNGEN" (Z) und "BELEGEN" (B) verglichen. Gibt es hier Unterschiede so muss jeweils per Hand die entsprechende Zahl korrigiert werden.


!Differenz ~SummeLautAusgangsRechnung~ ~SummeLautBelege~ ~SummeLautAusgangsRechnung - SummeLautBelege~ ~Person~

HTML Vorlagen

  • Mahnstufe=0: "Mahnung.html"
  • Mahnstufe=1: "Mahnung2.html"
  • Mahnstufe>=3: "Mahnung3.html"

wird die Mahnung auch mit MB (=Mahnbescheid) verbucht, so entfallen weiteren Mahnstufen. Der Ausgabebeleg wird in die Datei "Mahnbescheid.html" des Personen-Dokumentverzeichnisses kopiert.