A und O Posted July 31, 2013 Share Posted July 31, 2013 Hallo, ich habe ein Problem mit der MwSt-Berechnung der Versandkosten. Ich habe Artikel für 7% und 19%. Die Versandkosten sind netto eingetragen und die MwSt. wird dann dazugerechnet. Wenn ich jetzt aber einen Artikel mit 7% MwSt habe, komme ich natürlich nicht auf den Versandpreis, den ich grundsätzlich für die Versandkosten angegeben habe. Ich habe gelesen, dass man die Versandkosten so einstellen kann, dass die %e jeweils abgerechnet werden. Ich weiß allerdings nicht wie und wo. Ich habe schon alles durchgesucht. Vielen Dank im Voraus. Link to comment Share on other sites More sharing options...
eleazar Posted August 10, 2013 Share Posted August 10, 2013 Hi, nein, diese Einstellung, die für den deutschen Raum benötigt würde, gibt es derzeit leider noch nicht. Das liegt aber aber an einem Denkfehler in der PrestaShop-Berechnung. Besser wäre es, wenn man statt des Nettobetrages den Bruttobetrag eingeben könnte. Grundsätzlich ist es aber möglich, diesen kleinen Fauxpas innerhalb der Rechnung zu korrigieren. Dazu muss man allerdings zunächst einmal ermitteln, welcher MwSt-Satz in der Bestellung überwiegt, da davon die MwSt-Berechnung auf die Versandkosten abhängt. Weil aber die Beträge für die PDF-Ausgabe zur Laufzeit zusammengetragen werden, kommt man m.E. nicht umhin, die Summen in einem ersten Schritt selbst zu bilden. Ich habe das Problem für mich wie folgt gelöst: Step 1: Der Stückpreis wird bei mir in der Sektion PRODUCTS der invoice.tpl nur brutto angezeigt, gefolgt von der Angabe des MwSt-Satzes. Hier läuft zugleich eine Summenbildung mit. <!-- Bruttobeträge nach MwSt-Satz getrennt aufsummieren --> {if ((($order_detail.unit_price_tax_incl - $order_detail.unit_price_tax_excl) / $order_detail.unit_price_tax_excl) * 100) > 10} {l s='19%' pdf='true'} {$total_price_tax_incl_19 = ($total_price_tax_incl_19 + ($order_detail.unit_price_tax_incl * $order_detail.product_quantity))} {else} {l s='7%' pdf='true'} {$total_price_tax_incl_7 = ($total_price_tax_incl_7 + ($order_detail.unit_price_tax_incl * $order_detail.product_quantity))} {/if} Diese beiden Summen sind auch für die Bereinigung der Rundungsfehler in PrestaShop erforderlich, die z. Z. noch immer dann auftauchen, wenn von einem Produkt mehrere Exemplare geordert werden. Step 2: Mit diesen beiden neuen Variablen kann ich nicht nur die korrekte MwSt nach Steuersätzen berechnen, sondern ich kann sie auch für eine Abfrage nutzen, welche MwSt bei den Versandkosten anzusetzen ist. Wenn du also, was ich nach deiner Angabe vermute, den Nettobetrag der Versandkosten als Brutto ./. 19% MwSt errechnet hast, dann ergäbe sich folgende Erweiterung der Rechnung. <!-- MwSt-Beträge vom Gesamtbrutto berechnen --> {assign var="total_tax_19" value=($total_price_tax_incl_19 / 119 * 19)} {assign var="total_tax_7" value=($total_price_tax_incl_7 / 107 * 7)} <!-- Hier korrekte Nettoversandkosten u. MwSt auf Versandkosten berechnen --> {if ($total_tax_19 > $total_tax_7)} {assign var="shipping_tax_new_amount" value=($order_invoice->total_shipping_tax_incl / 119 * 19)} {assign var="total_shipping_tax_excl_new" value=$order_invoice->total_shipping_tax_excl} {else} {assign var="total_shipping_tax_excl_new" value=($order_invoice->total_shipping_tax_excl * 119 / 107)} {assign var="shipping_tax_new_amount" value=($total_shipping_tax_excl_new / 100 * 7)} {/if} Damit das Ganze auch funktioniert, müssten natürlich diese neuen Variablen in der Steuerzusammenstellung stehen, die in der invoice.tax-tab.tpl vorgenommen wird. Da sind sie aber nicht bekannt. Der Einfachheit halber kann man aber anstelle von der eingeblendeten Datei zwischen dem Ende von PRODUCTS TAB und der Anweisung {if isset($HOOK_DISPLAY_PDF)} den Inhalt der invoice.tax-tab.tpl in die invoice.tpl kopieren. Damit kommen wir zu Step 3 Jetzt müssen die neuen Werte auch Netto-Versandkosten und MwSt darauf für jeden Fall richtig anzeigen: {if isset($shipping_tax_breakdown)} {foreach $shipping_tax_breakdown as $shipping_tax_infos} <tr style="line-height:6px;background-color:{cycle values='#FFF,#EEE'};"> <td style="width: 40%">{l s='Shipping' pdf='true'}</td> <td style="width: 20%; text-align: right;">{$shipping_tax_infos.rate|round:"0"} %</td> {if !$use_one_after_another_method} <td style="width: 20%; text-align: right;">{if isset($is_order_slip) && $is_order_slip}- {/if} <!-- Hier korrekte Netto-Versandkosten anzeigen --> {displayPrice currency=$order->id_currency price=$total_shipping_tax_excl_new} </td> <td style="width: 20%; text-align: right;"> <!-- Hier korrekte MwSt auf Versandkosten anzeigen --> {displayPrice currency=$order->id_currency price=$shipping_tax_new_amount} </td> {/if} </tr> {/foreach} {/if} Step 4 Ud damit PrestaShop bei 7 % Versandkosten nicht auf Idee kommt, meine Versandkostenpauschale zu reduzieren, bediene ich mich eines kleinen Tricks: {if $order_invoice->total_shipping_tax_incl > 0} <tr style="line-height:5px;"> <td style="text-align: right; font-weight: bold">{l s='Shipping Cost' pdf='true'}</td> <td style="width: 15%; text-align: right;"> {if $tax_excluded_display} {displayPrice currency=$order->id_currency price=$order_invoice->total_shipping_tax_excl} {else} <!-- Hier mit einem kleinen Trick die Versandkostenpauschale erzwingen --> {displayPrice currency=$order->id_currency price=($order_invoice->total_shipping_tax_excl * 119 / 100)} {/if} </td> </tr> {/if} Das alles funktioniert natürlich so nur für den innerdeutschen Handel. Link to comment Share on other sites More sharing options...
A und O Posted August 11, 2013 Author Share Posted August 11, 2013 Vielen Dank für die Mühe! Ich habe von diesen Dingen leider überhaupt keine Ahnung. Ich frage mich nur, wofür man unter Versanddienste - Bearbeiten Steuerfrei auswählen kann. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now