Umsatzsteuer falsch berechnet

Hallo zusammen,

unser SW5 berechnet manchmal die Umsatzsteuer falsch. Das sind zwar meisstens nur Cent-Beträge, nervt aber, da wir das Ganze noch in ein Sage100 übertragen und die Beträge nicht stimmen.

Zum Beispiel ist bei einem Auftrag der Nettowert bei 64 Euro. Das sind 12,16 Euro UST. Vom System weiter gegeben werden aber nur 12,12 Euro.

Kennt das Problem jemand??

Grüße,
Stephan

Dazu gibt es im Forum schon viele Beiträge. „Manchmal“ ist etwas wenig genau um das Problem nachvollziehen zu können.

@tarkka.ch

das ist mir welbst noch nicht so aufgefallen, da ich die Aufträge nicht in unser System übertrage. Die Kollegen meinten, das kommt relativ häufig vor. Ich habe das in allen Varianten nachgerechnet, es passt manchmal einfach nicht.
Selbst wenn ich die Berechnung auf Basis der Einzelpositionen machen kann/muss, kommt etwas anderes heraus, als das System ausgibt.

Ist jemand aus dem Support hier Online??

Wie setzen sich den die 64 Euro zusammen?

Pos 1: 28 Euro netto
Pos 2: 28 Euro netto
Versand 8 Euro netto

Summe 64 Euro netto

Ich habe es jetzt nicht nachgerechnet. Kann es ein Rundungsfehler sein, wenn die Steuer auf einzelne Positionen berechnet wird?

Sieht ganz nach Rundungsfehler aus. Allerdings liegt dies meist an einem Programmierfehler, häufig werden für die Berechnung von Beträgen die Datentypen double (oder noch schlimmer float) verwendet. Warum dies eine schlechte Idee ist wird in diesem Artikel erläutert und für Java gleich eine Lösung aufgezeigt.

Ob dies bei SW5 der Fall ist, mögen andere beurteilen - in die Tiefen der Betragsberechnung bin ich noch nicht vorgedrungen :innocent:

LG Phil

Ich vergaß: falls der Rundungsfehler bei einer Netto-Bestellung auftrat, prüf mal ob in den Grundeinstellungen → Storefront → Warenkorb/Artikeldetails der Parameter „Netto-Bestellungen konsequent auf 2 Stellen runden“ auf „Ja“ steht. Glaube das war der Fix für SW-22338. Laut Doku: „Erzwingt bei Netto-Bestellungen konsequent auf zwei Nachkommastellen zu runden, um „Rundungsfehler“ zu vermeiden.“