Rechnungserstellung
Innerhalb der Einstellungen zur Rechnungserstellung kann die Rechnungsgenerierung für Bestellungen mit einem Rechnungsbetrag von 0 € deaktiviert werden. Sobald diese Einstellung ausgewählt wird, wird bei den betroffenen Bestellungen keine Rechnung erstellt oder mitgesendet.
In der Administration kann unter Verwaltung → Shops → bearbeiten → Rechungserstellung die Rechnungserstellung pro Shop aktiviert werden. Hierfür muss die Vorlage befüllt werden. Bitte alten Sie die Mustervorlage und speichern Sie Ihre Änderungen ab. Die Rechnung ist somit aktiviert und wird an den jeweils eingestellten Stellen angezeigt/ausgegeben.
Variablen
Folgende Variablen stehen in der Rechnungsvorlage zur Verfügung:
Variable | Typ | Beschreibung |
---|---|---|
{$CurrencySymbol} | string | System - Währung |
{$cart} | array | Warenkorb |
{$freifelder} | array | Freifelder unter Kunden - bearbeiten - Freifelder |
{$orderInfo} | array | Zusätzliche Bestellinformationen |
{$gutscheinrechnung} | array | Rechnungstyp (bei = 1 handelt es sich um einen Gutschein) |
{$Budget} | string | Budget |
{$Total} | string | Rechungsbetrag |
{$NetTotal} | string | Rechungsbetrag |
{$VAT} | string | MwSt. |
{$VAT_SPLITTED} | string | MwSt. für gesplitteten Warenkorb |
{$module} | array | Für Abfragen ob jeweiliges Modul aktiv ist |
{$Versandart} | string | Bezeichung der Versandart |
{$VersandartPreis} | string | Preis der Versandart |
{$PaymentMethod} | string | Bezeichung der Zahlungsart |
{$Payment} | array | Zahlungsart (Live) |
{$arr_paymentfelder} | array | Zusatzfelder Zahlungsart |
{$PaymentId} | int | Zahlungsart-Id |
{$order_DeliverAdressCompany} | string | Lieferadresse: Firma |
{$Firma1} | string | Lieferadresse: Firma |
{$InvoiceCompany} | string | Lieferadresse: Firma |
{$LieferadresseFirma} | string | Lieferadresse: Firma |
{$Firma2} | string | Lieferadresse: Firma 2 |
{$InvoiceCompany2} | string | Lieferadresse: Firma 2 |
{$LieferadresseFirma2} | string | Lieferadresse: Firma 2 |
{$Titel} | string | Lieferadresse: Titel |
{$DeliverTitel} | string | Lieferadresse: Titel |
{$order_DeliverAdressTitle} | string | Lieferadresse: Titel |
{$LieferadresseTitel} | string | Lieferadresse: Titel |
{$order_DeliverAdressName} | string | Lieferadresse: Ansprechpartner |
{$LieferadresseAnsprechpartnter} | string | Lieferadresse: Ansprechpartner |
{$Strasse} | string | Lieferadresse: Straße |
{$InvoiceStreet} | string | Lieferadresse: Straße |
{$order_DeliverAdressStreet} | string | Lieferadresse: Straße |
{$LieferadresseStrasse} | string | Lieferadresse: Straße |
{$PLZ} | string | Lieferadresse: PLZ |
{$InvoiceZIP} | string | Lieferadresse: PLZ |
{$order_DeliverAdressZIP} | string | Lieferadresse: PLZ |
{$LieferadressePLZ} | string | Lieferadresse: PLZ |
{$Ort} | string | Lieferadresse: Ort |
{$InvoiceTown} | string | Lieferadresse: Ort |
{$order_DeliverAdressTown} | string | Lieferadresse: Ort |
{$LieferadresseOrt} | string | Lieferadresse: Ort |
{$InvoiceCountry} | string | Lieferadresse: Land |
{$LieferadresseCountry} | string | Lieferadresse: Land |
{$order_DeliverAdressTel} | string | Lieferadresse: Telefon |
{$order_DeliverAdressFax} | string | Lieferadresse: Fax |
{$order_DeliverAdressEMail} | string | Lieferadresse: E-Mail |
{$LieferadresseEmail} | string | Lieferadresse: E-Mail |
{$Kostenstelle} | string | Kostenstelle |
{$InvoiceCompany} | string | Rechnungsadresse: Firma |
{$RechnungsadresseFirma} | string | Rechnungsadresse: Firma |
{$InvoiceCompany2} | string | Rechnungsadresse: Firma 2 |
{$RechnungsadresseFirma2} | string | Rechnungsadresse: Firma 2 |
{$InvoiceCompany3} | string | Rechnungsadresse: Firma 3 |
{$InvoiceTitle} | string | Rechnungsadresse: Titel |
{$RechnungsadresseTitel} | string | Rechnungsadresse: Titel |
{$InvoiceName} | string | Rechnungsadresse: Ansprechpartner |
{$RechnungsadresseAnsprechpartnter} | string | Rechnungsadresse: Ansprechpartner |
{$InvoiceStreet} | string | Rechnungsadresse: Straße |
{$RechnungsadresseStrasse} | string | Rechnungsadresse: PLZ |
{$RechnungsadressePLZ} | string | Rechnungsadresse: PLZ |
{$InvoiceTown} | string | Rechnungsadresse: Ort |
{$RechnungsadresseOrt} | string | Rechnungsadresse: Ort |
{$InvoiceCountry} | string | Rechnungsadresse: Land |
{$RechnungsadresseCountry} | string | Rechnungsadresse: Land |
{$InvoiceEMail} | string | Rechnungsadresse: E-Mail |
{$ustid} | string | Umsatzstreuer-Id |
{$Bestelldatum} | string | Bestelldatum |
{$DeliveryDate} | string | Bestelldatum |
{$InvoiceDate} | string | Bestelldatum formatiert (%e.%m.%Y) |
{$DateOfInvoice} | string | Rechnungsdatum formatiert (DD.MM.YYYY) |
{$Datum} | string | Bestelldatum formatiert (%e.%m.%Y) |
{$Bestellcode} | string | Auftrags-Code (berücksichtigt aus den individuellen Code) |
{$OrderCode} | string | 6-stelliger Auftrags-Code |
{$LieferscheinCode} | string | 6-stelliger Auftrags-Code |
{$Rechungscode} | string | 6-stelliger Auftrags-Code |
{$OrderNr} | string | Bestellnummer |
{$LieferscheinNr} | string | Bestellnummer |
{$InvoiceNr} | string | Bestellnummer |
{$billNumber} | string | Bestellnummer für Dienstleister |
{$Lieferscheindatum} | string | Datum zum Zeitpunkt des Aufrufes |
{$Bemerkung} | string | Bemerkung |
{$CustomerUser} | array | Daten des Benutzers (live) |
{$Kundendaten} | array | Daten des Benutzers (live) |
{$Kunde} | array | Kundennummer des Benutzers (live) |
{$ShopURL} | string | Url des Kunden-Shops |
{$orderTaxRates} | array | default, reduced – enthält den jeweiligen Steuersatz zum Zeitpunkt der Bestellung |
{$voucherGrossValue} | string | In Euro mit zwei Nachkommastellen. Wenn vorhanden, dann wurde bei der Bestellung ein Bruttogutschein verwendet. |
{$subTotalGross} | string | In Euro mit zwei Nachkommastellen. Nur vorhanden, wenn auch {$voucherGrossValue} gesetzt ist. Dann enthält diese Variable die Bruttosumme bevor der Gutschein abgezogen wurde. |
Beispiele
MwSt
# Mit dem folgenden Beispiel kann man den verwendeten MwSt-Satz und den dazugehörigen Wert ausgeben. # Falls der Warenkorb einen der beiden Steuersätze nicht hat, wird dieser nicht angezeigt mit "floatval($vatValue) !== 0.0". {foreach from=$VAT_SPLITTED item=vatValue key=vatKey} {if floatval($vatValue) !== 0.0 } <tr> <td></td> <td></td> <td></td> <td></td> <td colspan="2"> {$vatKey}% MwSt</td> <td align="right"></td> <td align="right" nowrap> {$vatValue} EUR </td> </tr> {/if} {/foreach}
# Mit dem folgenden Beispiel kann man den verwendeten MwSt-Satz und den dazugehörigen Wert ausgeben. # Falls der Warenkorb einen der beiden Steuersätze nicht hat, wird diese nicht angezeigt mit "floatval($vatValue) !== 0.0". {foreach from=$taxSplitted->orderItemTaxSums item=vat key=vatKey} {if floatval($vat->taxValue) !== 0.0 } <tr> <td></td> <td></td> <td></td> <td></td> <td colspan="2"> {$vatKey}% MwSt</td> <td align="right"></td> <td align="right" nowrap> {$vat->taxValue/100} EUR </td> </tr> {/if} {/foreach}
POSTAKTUELL Verteilung - Shop-Betreiber (MwSt)
# Es muss bei den Unterelementen die Elemente nicht angezeigt werden, bei denen die MwSt includiert ist. {foreach from=$item->getChildItems() item=childItem key=childId} {if isset($postAktuellGrossPriceDistributionPositions[$childItem->get('id')])} {continue} {/if} ... {/foreach} # Ebenso muss dann die weitere Position ausgegeben werden, damit die Kosten die nicht unter dem Netto-Wert fallen, aber im Brutto auftauchen ausgewiesen werden: {if $postAktuellGrossPriceDistributionSum > 0} <tr> <td></td> <td></td> <td></td> <td></td> <td colspan="2">Verteilung (brutto) gesamt</td> <td align="right"></td> <td align="right" nowrap> {$postAktuellGrossPriceDistributionSum|string_format:"%.2f"} EUR </td> </tr> {/if}
Stornierte Artikel ausblenden
Währung
Rechnungsdatum
Rechnungsdatum in deutscher Schreibweise
Sie können $DateofInvoice über Smarty aufsplitten und so eine deutsche Ausgabe erzwingen: {assign var="VARIABLE_NEU" value="-"|explode:$VARIABLE} {$VARIABLE_NEU[2]}.{$VARIABLE_NEU[1]}.{$VARIABLE_NEU[0]} Für VARIABLE nutzen Sie DateofInvoice
Notizen für Bestellungen
Gesamtgewicht des Warenkorbes
Ausgabe der Kundennummer
Zusatzfelder vom Dienstleister für die Bestellung
Budget
Guthaben
Handlingpauschale
Vorlage für Rechnungserstellung
Bei Klick auf "Vorlage laden" werden die Standardeinstellungen für "Vorlage für Rechnung", "Styles für Rechnung" sowie "Seitenränder" geladen. Durch betätigen des "Speichern"-Buttons werden die Einstellungen übernommen.
Vorschau personalisierter Artikel ( erste Seite )
Datumformat
Das Datumformat wird in der Vorlage nach dem Muster DD.MM.YYYY ausgegeben.
{$orderObject->get('date_of_invoice')|date_format:"%d.%m.%Y"}
Folgende Möglichkeiten gibt es im Format
%a - abgekürzter Name des Wochentages, abhängig von der gesetzten Umgebung %A - ausgeschriebener Name des Wochentages, abhängig von der gesetzten Umgebung %b - abgekürzter Name des Monats, abhängig von der gesetzten Umgebung %B - ausgeschriebener Name des Monats, abhängig von der gesetzten Umgebung %c - Wiedergabewerte für Datum und Zeit, abhängig von der gesetzten Umgebung %C - Jahrhundert (Jahr geteilt durch 100, gekürzt auf Integer, Wertebereich 00 bis 99) %d - Tag des Monats als Zahl (Bereich 00 bis 31) %D - so wie %m/%d/%y %e - Tag des Monats als Dezimal-Wert, einstelligen Werten wird ein Leerzeichen voran gestellt (Wertebereich Ž 0Ž bis Ž31Ž) %g - wie %G, aber ohne Jahrhundert. %G - Das vierstellige Jahr entsprechend der ISO Wochennummer (siehe %V). Das gleiche Format und der gleiche Wert wie bei %Y. Besonderheit: entspricht die ISO Wochennummer dem vorhergehenden oder folgenden Jahr, wird dieses Jahr verwendet. %h - so wie %b %H - Stunde als Zahl im 24-Stunden-Format (Bereich 00 bis 23) %I - Stunde als Zahl im 12-Stunden-Format (Bereich 01 bis 12) %j - Tag des Jahres als Zahl (Bereich 001 bis 366) %m - Monat als Zahl (Bereich 01 bis 12) %M - Minute als Dezimal-Wert %n - neue Zeile %p - entweder `am' oder `pm' (abhängig von der gesetzten Umgebung) oder die entsprechenden Zeichenketten der gesetzten Umgebung %r - Zeit im Format a.m. oder p.m. %R - Zeit in der 24-Stunden-Formatierung %S - Sekunden als Dezimal-Wert %t - Tabulator %T - aktuelle Zeit, genau wie %H:%M:%S %u - Tag der Woche als Dezimal-Wert [1,7], dabei ist 1 der Montag. %U - Nummer der Woche des aktuellen Jahres als Dezimal-Wert, beginnend mit dem ersten Sonntag als erstem Tag der ersten Woche. %V - Kalenderwoche (nach ISO 8601:1988) des aktuellen Jahres. Als Dezimal-Zahl mit dem Wertebereich 01 bis 53, wobei die Woche 01 die erste Woche mit mindestens 4 Tagen im aktuellen Jahr ist. Die Woche beginnt montags (nicht sonntags). (Benutzen Sie %G or %g für die Jahreskomponente, die der Wochennummer für den gegebenen Timestamp entspricht.) %w - Wochentag als Dezimal-Wert, Sonntag ist 0 %W - Nummer der Woche des aktuellen Jahres, beginnend mit dem ersten Montag als erstem Tag der ersten Woche. %x - bevorzugte Datumswiedergabe (ohne Zeit), abhängig von der gesetzten Umgebung. %X - bevorzugte Zeitwiedergabe (ohne Datum), abhängig von der gesetzten Umgebung. %y - Jahr als 2-stellige-Zahl (Bereich 00 bis 99) %Y - Jahr als 4-stellige-Zahl inklusive des Jahrhunderts %Z - Zeitzone, Name oder eine Abkürzung %% - ein %-Zeichen