Magento: Zwischensummen und Versandkosten inkl. MWSt. anzeigen

Lustiger Weise gibt es bei Magento bis zur aktuellen Version 1.3.2.4 immer noch keine Einstellung, um die Zwischensumme und die die Versandkosten inklusive MWSt. anzuzeigen. Dies ist insbesondere bei einem deutschen B2C-Shop jedoch dringend erforderlich. Ansonsten geht man das Risiko ein von der Konkurrenz kostenpflichtig Abgemahnt zu werden.

Gott sei dank war Tschan so nett im Magento-Forum eine Anleitung zu posten. Diese besteht aus zwei Schritten:

1. Oben in die Datei /app/design/frontend/default/YourTheme/template/checkout/total/default.phtml das folgende einfügen.

getTotals();

if ($this->getTotal()->getCode() == 'subtotal') {
    $subtotal = $this->getTotal()->getValue();
    $subtotal += $totals['tax']->getValue()-$totalsObj->getQuote()->getShippingAddress()->getShippingTaxAmount();
    $this->getTotal()->setValue($subtotal);
    $this->getTotal()->setTitle(Mage::helper('sales')->__('Subtotal incl. Tax'));
}

if ($this->getTotal()->getCode() == 'shipping') {
    $shipping = $this->getTotal()->getValue();
    $shipping += $totalsObj->getQuote()->getShippingAddress()->getShippingTaxAmount();
    $this->getTotal()->setValue($shipping);
}

?>

2. In die beiden Dateien /app/design/frontend/default/YourTheme/template/sales/order/items.phtml und /app/design/frontend/default/YourTheme/template/email/order/items.phtml nach der Zeile getOrder() ?> das folgende einfügen.

getSubtotal() + $_order->getTaxAmount() - $_order->getShippingTaxAmount();
$_order->setSubtotal($subtotalInclTax);

$shippingInclTax = $_order->getShippingAmount() + $_order->getShippingTaxAmount();
$_order->setShippingAmount($shippingInclTax);

?>

9 Antworten auf „Magento: Zwischensummen und Versandkosten inkl. MWSt. anzeigen“

  1. Ja ich war ein bisschen Faul und habe in dem englischen Beispiel „Subtotal incl. Tax“ nicht gegen den entsprechenden deutschen Satz ersetzt. Dazu einfach in Zeile 10 der Datei default.phtml „Subtotal incl. Tax“ übersetzen.

  2. Hallo,
    ich habe alles nach der Anweisung gemacht und für Deutschland klappt es super (Magento 1.3.2.4 und 1.1.8),
    aber ich habe ein Multistore und unter anderem dort einen Shop für die Schweiz,
    dort muss ich keine Steuer zahlen, also ist diese abgeschaltet.

    Und da kommt es zu einem bug (bei beiden Installationen),
    sobald ich in den Warenkorb will, oder bei dem letzten Schritt im CheckOut kommt folgendes:

    Notice: Undefined index: tax in /chroot/home/…/…/html/dev3/app/design/frontend/default/default/template/checkout/total/default.phtml on line 35

    damit ist das gemeint: $subtotal += $totals[’tax’]->getValue()-$totalsObj->getQuote()->getShippingAddress()->getShippingTaxAmount();

    warum das passiert verstehe ich auch nicht,
    ich hab sogar versucht für die Schweiz die gleichen Steuerregeln zu machen,
    aber trotzdem kommt es zum fehler.
    bitte, helft mir

  3. Der Sidebar-Cart zeigt nach der Anpassung nur noch netto an.

    Mit folgendem Snippet am Anfang der zuständigen default.phtml stehen da aber wieder Bruttowerte:

    getTotals();

    ?>

  4. Funktioniert gut aber bei Warenkorbregel mit %-Rabatt. Wird der Rabatt in netto gerechnet. Dann stimmt auch die Zwischensumme nicht mehr weil daruf schon diue rabattierte mwst angewendet wird.

  5. Ich habe in unserem Shop (Magento 1.3.2.4) oben aufgeführte Änderungen auch durchgeführt. Die Bestellungsemail des Kunden enthält die richtige Zwischensumme mit Bruttopreisen. Die Kopie dieser Bestellung, die man als Admin als Systembenachrichtignug erhält, enthält die Zwischensumme im Nettopreis. Auch wenn ich eine Rechnung im Adminbereich an den Kunden sende, ist die Zwischensumme in der Rechnungsemail Netto.

    Weiß jemand an welcher Stelle man die Emailvorlagen noch anpassen muss?

  6. Mindestens Teil 2 kann doch so eigentlich nicht gehen. Da fehlt doch was?

    Bei mir (1.4.2) gibt es auch die Zeile getOrder() ?> nicht, nur
    getOrder() ?>

    Aber Teil 2 dahinter eingefügt macht gar nichts.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.