Anzeige/Berechnung der MwST bei best. Artikeln - §25a UStG

Hallo,

Ich arbeite mich gerade etwas in die Materie Anpassung Oxid ein, da ein Bekanter von mir dabei ist, einen neuen Shop aufzusetzen und ich ihm dabei ein wenig unter die Arme greife. Auskommentieren diverser Stellen in products.tpl und diverse Anpassungen etc. haben dank dem prima Forum schon ganz gut geklappt. Leider habe ich noch nichts zu meinem folgendem Problem gefunden:
Ich bin auf der Suche nach einer Möglichkeit, bei bestimmten Artikeln den Ausweis der MwSt anzupassen. Laut §25a des UStG (Differenzbesteuerung) kann/darf bei Gebrauchtartikeln die MwSt/USt lediglich aus der Differenz von Einkaufspreis und Verkaufspreis errechnet werden. Nun soll im Shop bei solchen Artikeln die Anzeige der Mehrwertsteuer dahingehend angepasst werden, daß nicht 0% angezeigt wird sondern so etwas wie “keine MwSt. ausweisbar, da Gebrauchtartikel (§25a UStG)”. Die speziellen Artikel (bzw. die Artikel der Kategorie “Gebraucht”) auf 0% MwSt zu setzen ist daher nicht ganz das richtige.
Vielleicht hat ja jemand eine Idee oder einen Tipp für mich, wie so etwas gelöst werden kann? An welcher Stelle müsste ich hier ansetzen?
Viele Grüße,
Cooper_999

Hallo Cooper_999,

bevor Du Dich ins Basteln stürzt - bist Du sicher, dass das rechtlich durchgeht? Die Mehrwertsteuer kann zwar auf der Rechnung nicht ausgewiesen werden, ist jedoch sehr wohl enthalten. Am besten nochmal mit dem Steuerberater sprechen, bevor eine Abmahnung kommt?

Gruß

Hallo Marco,
ich bin “nur” der Bastler…werde die Frage aber weitergeben! Gesetzt den Fall, es ist OK - hättest Du eine Idee…:slight_smile:
Grüße,
Cooper_999

Hi,

Du mußt für diese betroffenen Produkte einen eigenen Flag in der Datenbank setzen, den Du a) per Admin-Panel eintragen und b) übers Frontend im Template über [if] abfragen kannst. Zusätzlich solltest Du einen neuen Eintrag in der Sprachdatei setzen.

Gruß

Hallo Marco,
also die Artikel-Tabelle aufbohren um ein Flag §25 Ja/Nein (also X oder blank) und dann im tpl für die Artikeladministration etwas passendes für die Pflege einfrickeln - hast Du evtl. noch einen Tipp für mich wo ich für die Berechnung Richtung Warenkorb und Rechnung etc. ansetzen kann? Idee: könnte vielleicht doch in Kombination mit MwSt-Satz 0% gehen -> If §25Flag=x und MwSt=0, dann setze Text aus Sprachdatei "§blabla-Artikel etc."
Puh, da muß ich wohl dann doch tiefer in die Coding Feinheiten einsteigen. Fürs auskommentieren hat ja ein bisschen lesen können ausgereicht, aber das wird wohl doch etwas kniffliger…:wink:
Grüße,
Cooper_999

Hi,

wo ich für die Berechnung Richtung Warenkorb und Rechnung etc. ansetzen kann?

Du darfst die Mehrwertsteuer nicht “ausweisen” heisst nicht, dass Du Netto-Preise ansetzen sollst. Ergo ist ein Eingriff an dieser Stelle nicht nötig. :wink:

Gruß

mal sehen, wie weit ich komme… :slight_smile:

Hi,
es hat geklappt! Habe zuerst einen neuen Eintrag in die cust_lang eingefügt (für den §25 Text), danach dann einen Check in die basket-tpl auf MwSt-Satz = 0 eingebaut:

  <!-- product VAT percent -->
      <!-- hier Abfrage auf Steuer = 0 wg. §25a -->
      <td id="test_basket_Vat_[{ $basketproduct->oxarticles__oxid->value }]_[{$smarty.foreach.test_Contents.iteration}]" class="vat">
        [{if !$basketitem->isBundle() || !$basketitem->isDiscountArticle()}]
         [{if $basketitem->getVatPercent() ne 0 }]
          [{ $basketitem->getVatPercent() }]%
         [{else}]
         [{ oxmultilang ident="BASKET_TAX25A" }]
        [{/if}]
        [{/if}]
      </td>

–> bei 0% Artikeln kommt nun im Warenkorb der geünschte Text :):smiley:

Marco, Danke nochmal für Deine Tipps!
Grüße,
Cooper_999

Supi. Danke für die Rückmeldung!

…wollte nochmal Rückmeldung geben, falls jemand mal ein ähnliches Problem hat… Nur mit dem oben genannten Coding gibt es Probleme, falls ein Ausländer (z.B. Schweiz) bestellt - bei dem wird nämlich der MwSt-Satz auch zu Null und damit jeder Artikel zum §25a Artikel… :frowning:
Die Lösung bei mir war dann ein zusätzliches Flag am Artikel über Erweiterung der OXARTICLES und Pflege in \out\admin pl\article_main.tpl:

Zeile 93 ff:
<!–{neue Checkbox} //–>
<tr>
<td class=“edittext” width=“120”>
[{ oxmultilang ident=“ARTICLE_MAIN_25” }]
</td>
<td class=“edittext”>
<input class=“edittext” type=“checkbox” name=“editval[oxarticles__oxused]” value=‘1’ [{if $edit->oxarticles__oxused->value == 1}]checked[{/if}]>
</td>
<!–{neue Checkbox} //–>
</tr>

Dann habe ich per lazy loading modul die Tabelle oxarticles in den Speicher gepackt und kann dadurch dann in den Templates order.tpl bzw. basket.tpl auf das neue Feld prüfen - z.B. so in der basket.tpl:

  &lt;!-- product VAT percent --&gt;
  &lt;!-- Prüfung §25a --&gt;
  &lt;td id="test_basket_Vat_[{ $basketproduct-&gt;oxarticles__oxid-&gt;value }]_[{$smarty.foreach.test_Contents.iteration}]" class="vat"&gt;
    [{if !$basketitem-&gt;isBundle() || !$basketitem-&gt;isDiscountArticle()}]

[{if $basketproduct->oxarticles__oxused->value ne 1 }]

      [{ $basketitem-&gt;getVatPercent() }]  %
       [{else}]
     [{ oxmultilang ident="BASKET_TAX25A" }]

[{/if}]

    [{/if}]
  &lt;/td&gt;

Das funktioniert nun deutlich besser… :slight_smile:

Grüße,
Cooper_999