In der Administration kann unter Verwaltung → Shops → bearbeiten → Rechnungserstellung die Rechnungserstellung pro Shop aktiviert werden. Hierfür muss die Vorlage befüllt werden. Bitte alten die 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 | Währungssymbol |
{$cart} | array | Warenkorb |
{$serviceprovider} | array | Dienstleister |
{$PaymentId} | int | Zahlungsart-Id |
{$PaymentMethod} | string | Bezeichung der Zahlungsart |
{$Payment} | array | Zahlungsart (Live) |
{$arr_paymentfelder} | array | Zusatzfelder Zahlungsart |
{$orderTotalShipping} | float | Summe der Bestellung inkl. Versandkosten |
{$orderTotalWithoutShipping} | float | Summe der Bestellung exkl. Versandkosten |
{$orderTotal} | float | Summe der Bestellung exkl. Versandkosten |
{$Versandkosten} | array | Versandkosten |
{$Total} | string | Rechnungsbetrag |
{$NetTotal} | string | Rechnungsbetrag |
{$VAT} | string | MwSt. |
{$Kunde} | array | Daten des Benutzers (live) |
{$Kundendaten} | array | Daten des Benutzers (live) |
{$Bestelldaten} | array | Bestelldaten |
{$Firma1} | string | Lieferadresse: Firma |
{$InvoiceCompany} | string | Lieferadresse: Firma |
{$LieferadresseFirma} | string | Lieferadresse: Firma |
{$Firma2} | string | Lieferadresse: Firma 2 |
{$InvoiceCompany2} | string | Lieferadresse: Firma 2 |
{$Ansprechpartnter} | string | Lieferadresse: Ansprechpartner |
{$Strasse} | string | Lieferadresse: Straße |
{$PLZ} | string | Lieferadresse: PLZ |
{$Ort} | string | Lieferadresse: Ort |
{$Kostenstelle} | string | Kostenstelle |
{$RechnungsadresseFirma} | string | Rechnungsadresse: Firma |
{$RechnungsadresseFirma2} | string | Rechnungsadresse: Firma 2 |
{$RechnungsadresseAnsprechpartnter} | string | Rechnungsadresse: Ansprechpartner |
{$RechnungsadresseStrasse} | string | Rechnungsadresse: Straße |
{$RechnungsadressePLZ} | string | Rechnungsadresse: PLZ |
{$RechnungsadresseOrt} | string | Rechnungsadresse: Ort |
{$RechnungsadresseCountry} | string | Rechnungsadresse: Land |
{$Bestellcode} | string | Auftragscode (berücksichtigt aus dem individuellen Code) |
{$Rechungscode} | string | 6-stelliger Auftragscode |
{$ustid} | string | Umsatzsteuer-Id |
{$ShopURL} | string | Shop URL |
{$orderObject} | object | Bestelldaten |
{$cart} (Version 1) | array | Bestellpositionen |
{$orderItems} (Version 2) | array | Bestellpositionen |
{$orderItem} (Version 2) | array | Bestellposition (pro Posten) |
Beispiele
Bestellcode
actionscript3{$orderObject->getOrderCode()} ]]>Benutzer der Bestellung / Besteller
actionscript3getCustomerUser()}Nur freigegebene Positionen berücksichtigen
actionscript3 0} Artikelbezeichnung: {$item['s_desc']} {/if} {/foreach} Bei Verwendung von $orderObject->getOrderCart(), werden grundsätzlich alle Positionen durchlaufen.Dabei müssen die Positionen mit dem nicht gewollten Status übersprungen werden. {foreach key=key item=item from=$orderObject->getOrderCart()} {if $item->get('status') != 'OK' && $item->get('status') != 'PACKED' && $item->get('status') != 'SHIPPED'} {continue} {/if} {if $item->get('aid') > 0} Artikelbezeichnung: {$item->get('s_desc')} {/if} {/foreach}]]>Benutzergruppe der Bestellung
actionscript3getCustomerUser() && $orderObject->getCustomerUser()->getBudgetgroup()}Personalisierungsfelder
actionscript3getOrderCart()} {/foreach} setzen Sie die Abfrage für die Personalisierungsfelder ein. {if $item->getPersData()} {foreach key=name item=value from=$item->getPersData()} {$name}: {$value}{/foreach} {/if} Beispiel: {foreach key=key item=item from=$orderObject->getOrderCart()} {if $item->getPersData()} {foreach key=name item=value from=$item->getPersData()} {$name}: {$value}
{/foreach} {/if} {/foreach} ]]>
Attribute / Zusatzfelder
actionscript3 {/foreach} {/if} ]]>Dateien eines Bestellpostens
actionscript3getFiles() item="file"} {/foreach} Beispiel: {foreach key=key item=item from=$orderObject->getOrderCart()}ID der Preisstaffel (Versandkosten)
actionscript3Name des Freigebers
actionscript3ID der dynamischen Optionen
actionscript3getInfo('dynamicOptions')|json_decode} {foreach from=$dynamicOptions item=option}Beispiele CSV-Export:
CSV
getPayment()} {assign value=$orderObject->getPayment()->get('payment_desc') var="payment_desc"} {assign value=$orderObject->getPayment()->get('price') var="payment_price"} {/if} {$exportColumns = array()}{foreach from=$cart item=orderItem}{$exportColumns[] = [ 'ID der Bestellposition' => $orderItem.id, 'Lieferanschrift Unternehmen' => $orderObject->get('order_DeliverAdressCompany'), 'Lieferanschrift Unternehmen 2' => $orderObject->get('order_DeliverAdressCompany2'), 'Lieferanschrift Anschrift' => $orderObject->get('order_DeliverAdressName'), 'Lieferanschrift Ansprechpartner Vorname' => $orderObject->get('order_DeliverAdressFirstname'), 'Lieferanschrift Ansprechpartner Nachname' => $orderObject->get('order_DeliverAdressLastname'), 'Lieferanschrift Ansprechpartner Straße' => $orderObject->get('order_DeliverAdressStreet'), 'Lieferanschrift Ansprechpartner PLZ' => $orderObject->get('order_DeliverAdressZIP'), 'Lieferanschrift Ansprechpartner Stadt' => $orderObject->get('order_DeliverAdressTown'), 'Lieferanschrift Ansprechpartner E - Mail' => $orderObject->get('order_DeliverAdressEMail'), 'Artikelnummer' => $orderItem.article_desc_intern, 'stueckzahl' => $orderItem.s_qty, 'aussendienstnummer' => 0, 'pdf_name' => $orderItem.filename, 'auftrags_datum' => $orderObject->get('cdate'), 'kunde' => $orderObject->getCustomer()->get('customer_company'), 'kundenid' => $orderObject->getCustomer()->get('id'), 'artikelid' => $orderItem.aid, 'InvoiceAdressCompany1' => $orderObject->get('InvoiceAdressCompany1'), 'InvoiceAdressCompany2' => $orderObject->get('InvoiceAdressCompany2'), 'InvoiceAdressName' => $orderObject->get('InvoiceAdressName'), 'InvoiceAdressStreet' => $orderObject->get('InvoiceAdressStreet'), 'InvoiceAdressZIP' => $orderObject->get('InvoiceAdressZIP'), 'InvoiceAdressTown' => $orderObject->get('InvoiceAdressTown'), 'preis_netto' => $orderItem.s_total, 'mwst' => $orderItem.s_mwst, 'persdata' => $orderItem.persdata, 'besteller' => $orderObject->get('order_customer_user_id'), 'md5' => $orderItem.md5, 'auftragsbezeichnung' => $orderObject->get('order_code'), 'articletyp' => $orderItem.article_type, 'sap_number' => $orderItem.article_sap_nummer, 'costcenter' => $orderObject->getCustomerUser()->get('customer_user_costcenter'), 'kundennummer' => $orderObject->getCustomerUser()->get('customer_user_kundennummer'), 'budgetgruppenid' => $orderObject->get('order_budgetgruppen_user_id'), 'lieferadresse_ansprechpartner' => $orderObject->get('order_DeliverAdressName'), 'rechnungsadresse_ansprechpartner' => $orderObject->get('InvoiceAdressName'), 'zahlungsart' => $payment_desc, 'zahlungsart_preis' => $payment_price, 'versandkosten' => $orderObject->get('versandkosten'), 'remark' => $orderItem.remark, 'auftragsname' => $orderItem.jobname, 'costcenterCart' => $orderItem.cstctr, 'price_total' => $orderObject->get('brutto'), 'country_code' => $orderObject->get('order_DeliverAdressCountryCode') ]}{/foreach}{array_keys($exportColumns[0])|implode:';'} {foreach from=$exportColumns item=row}{$row|implode:';'} {/foreach}]]>Adressliste für Liefer- und Rechnungsdaten - AddressListForCart
actionscript3getOrderInfo('AddressListForCart-delivery_address_list') var="deliveryAddressListValues"} {if !is_array($deliveryAddressListValues)} {assign value=[] var="deliveryAddressListValues"} {/if} {assign value=$orderObject->getOrderInfo('AddressListForCart-invoice_address_list') var="invoiceAddressListValues"} {if !is_array($invoiceAddressListValues)} {assign value=[] var="invoiceAddressListValues"} {/if} ... Rechnungsadresseliste Adressnummer: {if isset($invoiceAddressListValues['Adressnummer'])}{$invoiceAddressListValues['Adressnummer']}{/if} Lieferadresseliste Kundennummer: {if isset($deliveryAddressListValues['Kundennummer'])}{$deliveryAddressListValues['Kundennummer']}{/if}]]>zipDownloadUrl
actionscript3{$item.zipDownloadUrl} {/if} {/foreach} {/if} {*Version 2*} {if $orderItems} {foreach key=key item=item from=$orderItems} {if $item.orderItem.zipDownloadUrl}Reseller Artikel Informationen
actionscript3 {foreach key=name item=setting from=$object.settings} {$setting['name']}:{$setting['value']}{/foreach} {/if} {/foreach}]]>
Artikel Bestelloptionen (+global)
actionscript3getChosenArticleOptions() item=option} Gruppierung: {$option->tag} Bezeichnung: {$option->name} Benutzereingabe (nur gefüllt bei Typ "Textfeld"): {$option->inputValue} SAP-Nummer: {$option->sapNumber} Farbcode: {$option->backgroundColor} Lagerbestand: {$option->stock} {/foreach}]]>XML-Bestelldatenexport (Mustervorlage)
Mustervorlage<?xml version="1.0" encoding="UTF-8"?>
<Order>
<OrderID>{$Bestellcode}</OrderID>
<OrderDate>{$OrderDate|replace:" ":""}</OrderDate>
<RID>{$CustomerUser.customfield1}</RID>
<Shipping>
<FirstName>{$LieferadresseVorname}</FirstName>
<LastName>{$LieferadresseNachname}</LastName>
<Phone>{$order_DeliverAdressTel}</Phone>
<EMail>{$LieferadresseEmail}</EMail>
<Street><![CDATA[{$LieferadresseStrasse}]]></Street>
<City>{$LieferadresseOrt}</City>
<Country>{$LieferadresseCountry}</Country>
<PostalCode>{$LieferadressePLZ}</PostalCode>
<Company><![CDATA[{$LieferadresseFirma}{if $LieferadresseFirma2} {$LieferadresseFirma2}{/if}]]></Company>
</Shipping>
<Invoice>
<iFirstName>{$Bestelldaten.InvoiceAdressFirstname}</iFirstName>
<iLastName>{$Bestelldaten.InvoiceAdressLastname}</iLastName>
<iPhone>{$Bestelldaten.InvoiceAdressTel}</iPhone>
<iEMail>{$Bestelldaten.InvoiceAdressEMail}</iEMail>
<iStreet><![CDATA[{$Bestelldaten.InvoiceAdressStreet}]]></iStreet>
<iCity>{$Bestelldaten.InvoiceAdressCity}</iCity>
<iCountry>{$Bestelldaten.InvoiceAdressCountry}</iCountry>
<iPostalCode>{$Bestelldaten.InvoiceAdressZIP}</iPostalCode>
<iCompany><![CDATA[{$Bestelldaten.InvoiceAdressCompany1}{if $Bestelldaten.InvoiceAdressCompany2} {$Bestelldaten.InvoiceAdressCompany2}{/if}]]></iCompany>
</Invoice>
<Documents>
{counter start=0 print=false assign=pos}
{section name=item loop=$cart} {counter}
<Document>
<OrderID>{$Bestelldaten.id}</OrderID>
<DocumentID>{$cart[item].id}</DocumentID>
<ProductID>{$cart[item].attributes.attr1.value}</ProductID>
<ProductName><![CDATA[{$cart[item].s_desc}]]></ProductName>
<Personalization>{$cart[item].persdata|escape:"html"}</Personalization>
<Quantity>{$cart[item].quantity_value}</Quantity>
<Price>{$cart[item].s_ntotal/100}</Price>
{foreach from=$cart[item].files item=file}
<PrintingFile>{$file.modifiedFilename}</PrintingFile>
{/foreach}
</Document>
{/section}
</Documents>
</Order>