Skip to main content

Documentation Index

Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt

Use this file to discover all available pages before exploring further.

Mit dem $wsCheckout Modul können Sie alle Daten des Bestellvorgangs dynamisch im Frontend verwenden. Es enthält Informationen zu Zahlungs- und Versandarten, Rechnungs- und Lieferadressen, Bestellsummen sowie Validierungsergebnisse.

Modulübersicht

Beispiel / Ausschnitt über $wsCheckout
{{= $wsCheckout | json }}
JSON-Ausgabe
{
  "accountType": "...",
  "customerData": { },
  "freeFields": [...],
  "guestMail": "...",
  "isExpressCheckoutLocked": false,
  "isPPCExpressCheckout": false,
  "isPPCApplePayExpressCheckout": false,
  "isPPCGooglePayExpressCheckout": false,
  "isValid": false,
  "problems": {
    "billAddress": [...],
    "clearing": [...],
    "freeFields": [...],
    "general": [...],
    "payment": [...],
    "shippingAddress": [...],
    "shippingMethod": [...]
  },
  "selectedBillAddress": "...",
  "selectedPayment": "...",
  "selectedPseudoCC": "...",
  "selectedShippingAddress": "...",
  "selectedShippingMethod": "...",
  "selectedStoreId": 0,
  "sum": {
    "currency": "...",
    "paymentCost": 0.0,
    "shippingCost": 0.0,
    "surchargeCost": 0.0,
    "total": 0.0,
    "totalPreDeduction": 0.0,
    "totalGross": 0.0,
    "totalNet": 0.0,
    "totalTax": 0.0,
    "totalVoucher": 0.0,
    "totalWeight": 0.0
  },
  "useAlternativeShippingAddress": false,
  "verificationStatus": 0,
  "verificationStatusOptions": [...],
  "voucherAppliesPerItem": false,
  "fieldStates": {
    "payment": "...",
    "shippingMethod": "...",
    "billAddress": "...",
    "shippingAddress": "..."
  },
  "getAmountInSmallestUnit": "ƒ()",
  "getShippingMethodDisabledErrors": "ƒ()",
  "isFinished": "ƒ()",
  "isPending": "ƒ()",
  "isValidBillAddress": "ƒ()",
  "isValidPayment": "ƒ()",
  "isValidShippingAddress": "ƒ()",
  "isValidShippingMethod": "ƒ()",
  "itemVoucherDiscount": "ƒ()"
}
Anmerkung: “f()” kennzeichnet eine Funktion. Variablen und Methoden in der Übersicht
NameRückgabe-TypBeschreibung
accountTypestringGibt den Typ des Kontos aus.
Mögliche Werte:
- guest - Gastkonto
- new - Neues Konto
- registered - Registriertes Konto
customerDatamapMap mit Kundendaten-Feldern.
fieldGroupsarrayGibt eine Liste der Feldgruppen innerhalb der Kundendaten aus.
[].hiddenboolGibt aus, ob eine Feldgruppe im Frontend ausgeblendet werden soll.
useAlternativeShippingAddressboolGibt aus, ob eine abweichende Lieferadresse aktiv ist.
selectedPaymentstringGibt die ID der gewählten Zahlungsart aus.
selectedShippingMethodstringGibt die ID der gewählten Versandart aus.
selectedBillAddressstringGibt die ID der ausgewählten Rechnungsadresse aus.
draftBillAddressIdstringGibt die ID der temporären Rechnungsadresse aus, die nur für die aktuelle Session existiert und noch nicht im Kundenkonto gespeichert ist..
selectedShippingAddressstringGibt die ID der ausgewählten Lieferadresse aus.
draftShippingAddressIdstringGibt die ID der temporären Lieferadresse aus, die nur für die aktuelle Session existiert und noch nicht im Kundenkonto gespeichert ist.
selectedPseudoCCstringGibt den Pseudo-Kreditkarten-Token aus.
selectedStoreIdintGibt die ID der ausgewählten Filiale aus.
freeFieldsmapGibt eine Map mit Informationen zu freien Checkout-Feldern aus.
[$i].defaultstringGibt den Standardwert des freien Checkout-Feldes aus.
[$i].idstringGibt die ID des freien Checkout-Feldes aus.
[$i].namestringGibt den technischen Namen des freien Checkout-Feldes aus.
[$i].typestringGibt den Typ des freien Checkout-Feldes aus.
[$i].requiredstringGibt aus, ob das freie Checkout-Feld ein Pflichtfeld ist.
[$i].valuestringGibt den aktuellen Wert des freien Checkout-Feldes aus.
[$i].textstringGibt den konfigurierbaren Text zum freien Checkout-Feld aus.
[$i].checkedboolGibt aus, ob die Checkbox des frei verfügbaren Felds angehakt ist. (Nur bei type “checkbox”).
guestMailstringGibt die E-Mail des Gastkontos aus.
isValidboolGibt aus, ob die Bestellung ausgeführt werden kann.
isExpressCheckoutLockedboolGibt aus, ob der Express-Checkout gesperrt ist (z.B. nach PayPal-Zahlung).
isPPCExpressCheckoutboolGibt aus, ob der PayPal Commerce Platform Express Checkout aktiv ist.
isPPCApplePayExpressCheckoutboolGibt aus, ob der Apple Pay Express Checkout aktiv ist.
isPPCGooglePayExpressCheckoutboolGibt aus, ob der Google Pay Express Checkout aktiv ist.
problemsmapGibt eine Map mit Checkout-Problemen aus, wenn isValid den Wert false hat.
paymentarrayGibt Probleme zur ausgewählten Zahlungsart aus.
[$i].codestringGibt den Fehlercode aus.
[$i].textstringGibt den Fehlertext aus der Konfiguration aus.
[$i].checkstringGibt den Service-Namen des Checks aus.
shippingMethodarrayGibt Probleme zur ausgewählten Versandart aus.
[$i].codestringGibt den Fehlercode aus.
[$i].textstringGibt den Fehlertext aus der Konfiguration aus.
[$i].checkstringGibt den Service-Namen des Checks aus.
billAddressarrayGibt Probleme zur ausgewählten Rechnungsadresse aus.
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehlercode aus.
[$i].textstringGibt den Fehlertext aus der Konfiguration aus.
[$i].checkstringGibt den Service-Namen des Checks aus.
shippingAddressarrayGibt Probleme zur ausgewählten Lieferadresse aus.
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehlercode aus.
[$i].textstringGibt den Fehlertext aus der Konfiguration aus.
[$i].checkstringGibt den Service-Namen des Checks aus.
freeFieldsarrayGibt Probleme zu freien Checkout-Feldern aus.
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehlercode aus.
clearingarrayGibt Probleme bei der Zahlungsabwicklung aus.
generalarrayGibt Allgemeine Checkout-Probleme aus.
summapGibt eine Map mit Preisinformationen zum Checkout aus.
currencystringGibt den Währungscode des Warenkorbs aus (z.B. “EUR”).
paymentCostfloatGibt die Kosten der Zahlungsart aus, falls vorhanden.
surchargeCostfloatGibt Zusatzkosten Aufschläge aus, falls vorhanden.
totalWeightfloatGibt das Gesamtgewicht der Bestellung aus.
totalfloatGibt den Gesamtbetrag des Warenkorbs aus.
totalNetfloatGibt den Nettobetrag des Warenkorbs aus.
totalGrossfloatGibt den Bruttobetrag des Warenkorbs aus.
totalPreDeductionfloatGibt den Gesamtbetrag ohne Abzug der Steuer aus.
totalTaxfloatGibt die gesamte Mehrwertsteuer des Warenkorbs aus.
shippingCostfloatGibt die Versandkosten des Warenkorbs aus.
totalVoucherfloatGibt den Wert der eingelösten Gutscheine des Warenkorbs aus.
verificationStatusintGibt den Verifizierungsstatus der Bestellung aus.
verificationStatusOptionsarrayArray mit verfügbaren Verifizierungsstatus-Optionen.
voucherAppliesPerItemboolGibt aus, ob ein Gutschein für Artikel angewendet wird.
fieldStatesmapGibt den aktuellen Zustand jedes Checkout-Feldes aus.
Mögliche Werte:
- “untouched”, “empty”, “invalid”, “incompatible”, “valid”
paymentstringGibt den Zustand der gewählten Zahlungsart aus.
shippingMethodstringGibt den Zustand der gewählten Versandart aus.
billAddressstringGibt den Zustand der gewählten Rechnungsadresse aus.
shippingAddressstringGibt den Zustand der gewählten Lieferadresse aus.
isValidPayment()boolPrüft, ob die Zahlungsart mit der angegebenen ID verfügbar ist.
isValidShippingMethod()boolPrüft, ob die Versandart mit der angegebenen ID verfügbar ist.
isValidBillAddress()boolPrüft, ob die Adresse mit der angegebenen ID eine gültige Rechnungsadresse ist.
isValidShippingAddress()boolPrüft, ob die Adresse mit der angegebenen ID eine gültige Lieferadresse ist.
isPending()boolPrüft, ob ein Zahlungsvorgang noch aussteht.
isFinished()boolPrüft, ob eine Bestellung abgeschlossen wurde.
getAmountInSmallestUnit()intGibt den Betrag in der kleinsten Währungseinheit zurück (z.B. Cent statt Euro).
getShippingMethodDisabledErrors()arrayGibt zurück, warum eine Versandart deaktiviert ist.
itemVoucherDiscountfloatBerechnet den Gutscheinrabatt für einen Artikel.

Templates

Der Checkoutvorgang ist vollkommen flexibel, Sie können ihn frei gestalten. Er kann eine oder mehrere Shopseiten umfassen. Bei der Auswahl der Elemente ist die Reihenfolge beliebig.

Variablen

$wsCheckout.accountType

Gibt den Kontotyp aus: "guest" (Gast), "new" (neues Konto) oder "registered" (angemeldet).
{{ if $wsCheckout.accountType == "guest" }}
  // Es handelt sich um ein Gastkonto
{{ /if }}

$wsCheckout.customerData

Gibt eine Map mit Kundendaten-Feldern aus.
{{ if $wsCheckout.customerData }}
  // Kundendaten-Felder verfügbar
{{ /if }}

$wsCheckout.customerData.fieldGroups

Gibt eine Liste der Feldgruppen innerhalb der Kundendaten aus. Jede Gruppe fasst zusammengehörige Felder unter einem gemeinsamen Label zusammen.
{{ foreach $group in $wsCheckout.customerData.fieldGroups }}
  {{= $group.label }}
{{ /foreach }}

$wsCheckout.customerData.fieldGroups[].hidden

Gibt aus, ob eine Feldgruppe im Frontend ausgeblendet werden soll. Damit lässt sich steuern, welche Gruppen dem Kunden angezeigt werden.
{{ foreach $group in $wsCheckout.customerData.fieldGroups }}
  {{ if not $group.hidden }}
    <fieldset>
      <legend>{{= $group.label }}</legend>
      ...
    </fieldset>
  {{ /if }}
{{ /foreach }}

$wsCheckout.useAlternativeShippingAddress

Gibt aus, ob eine abweichende Lieferadresse verwendet wird.
{{ if $wsCheckout.useAlternativeShippingAddress }}
  // Abweichende Lieferadresse wird verwendet
{{ /if }}

$wsCheckout.selectedPayment

Gibt die ID der ausgewählten Zahlungsart aus.
{{ if $wsCheckout.selectedPayment == "stripe" }}
  // Stripe ist ausgewählt
{{ /if }}

$wsCheckout.selectedShippingMethod

Gibt die ID der ausgewählten Versandart aus.
Versandart: {{= $wsCheckout.selectedShippingMethod }}

$wsCheckout.selectedBillAddress

Gibt die ID der ausgewählten Rechnungsadresse aus.
Rechnungsadresse-ID: {{= $wsCheckout.selectedBillAddress }}

$wsCheckout.draftBillAddressId

Gibt die ID der temporären Rechnungsadresse aus. Diese Adresse existiert nur in der aktuellen Session und ist noch nicht im Kundenkonto gespeichert. Sie wird verwendet, wenn der Kunde im Bestellvorgang eine neue Rechnungsadresse anlegt.
Temporäre Rechnungsadresse: {{= $wsCheckout.draftBillAddressId }}

$wsCheckout.selectedShippingAddress

Gibt die ID der ausgewählten Lieferadresse aus.
Lieferadresse-ID: {{= $wsCheckout.selectedShippingAddress }}

$wsCheckout.draftShippingAddressId

Gibt die ID der temporären Lieferadresse aus. Diese Adresse existiert nur in der aktuellen Session und ist noch nicht im Kundenkonto gespeichert. Sie wird verwendet, wenn der Kunde im Bestellvorgang eine neue Lieferadresse anlegt.
Temporäre Lieferadresse: {{= $wsCheckout.draftShippingAddressId }}

$wsCheckout.selectedStoreID

Gibt die ID der ausgewählten Filiale aus (z.B. für Click & Collect).
{{ if $wsCheckout.selectedStoreId > 0 }}
  // Filiale ausgewählt
{{ /if }}

$wsCheckout.selectedPseudoCC

Gibt den Pseudo-Kreditkarten-Token aus.
Token: {{= $wsCheckout.selectedPseudoCC }}

$wsCheckout.freeFields

Gibt eine Liste mit freien Checkout-Feldern aus.
{{ foreach $field in $wsCheckout.freeFields }}
  {{= $field.name }}: {{= $field.value }}
{{ /foreach }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].checked

Gibt aus, ob eine Checkbox angehakt ist.
{{ foreach $myFieldVariable in $wsCheckout.freeFields }}
  {{ if $myFieldVariable.id == "agb" and not $myFieldVariable.checked }}
    Bitte akzeptieren Sie die AGB
  {{ /if }}
{{ /foreach }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].default

Gibt den Standardwert des freien Checkout-Feldes aus.
Standardwert: {{= $wsCheckout.freeFields["agb"].default }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].id

Gibt die ID des freien Checkout-Feldes aus.
{{ foreach $myAGBField in $wsCheckout.freeFields }}
  {{ if $myFreeFieldVariable.id == "agb" }}
    {{ $myAGBField = $cField }}
  {{ /if }}
{{ /foreach }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].name

Gibt den technischen Namen des freien Checkout-Feldes aus.
{{ foreach $myFreeFieldVariable in $wsCheckout.freeFields }}
  {{ if $myFreeFieldVariable.id == "comment" }}
    <h5>{{= $myFreeFieldVariable.name }}</h5>
  {{ /if }}
{{ /foreach }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].type

Gibt den Typ des freien Checkout-Feldes aus.
AGB-Typ: {{= $wsCheckout.freeFields["agb"].type }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].required

Gibt aus, ob das freie Checkout-Feld ein Pflichtfeld ist.
{{ if $wsCheckout.freeFields["agb"].required }}
  // Pflichtfeld
{{ /if }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].value

Gibt den Wert des freien Checkout-Feldes aus (Text oder true/false).
Wert von AGB: {{= $wsCheckout.freeFields["agb"].value }}

wsCheckout.freeFields\[wsCheckout.freeFields\[.[i].text

Gibt den konfigurierbaren Text zum freien Input-Feld aus.
{{ foreach $myFreeFieldVariable in $wsCheckout.freeFields }}
  {{ if $myFreeFieldVariable.id == "comment" and $myFreeFieldVariable.text }}
    {{= $myFreeFieldVariable.text }}
  {{ /if }}
{{ /foreach }}

$wsCheckout.guestMail

Gibt die eingegebene E-Mail-Adresse eines Gastkontos aus.
E-Mail: {{= $wsCheckout.guestMail }}

$wsCheckout.isValid

Gibt aus, ob die Bestellung ausgeführt werden kann.
{{ if $wsCheckout.isValid }}
  // Bestellung kann ausgeführt werden
{{ /if }}

$wsCheckout.isExpressCheckoutLocked

Gibt aus, ob der Express-Checkout gesperrt ist (z.B. nach PayPal-Zahlung während der Bestellbestätigung).
{{ if $wsCheckout.isExpressCheckoutLocked }}
  // Warenkorb-Bearbeitung nicht möglich
{{ /if }}

$wsCheckout.isPPCExpressCheckout

Gibt aus, ob PayPal Commerce Platform Express Checkout aktiv ist.
{{ if $wsCheckout.isPPCExpressCheckout }}
  // PayPal Express Checkout aktiv
{{ /if }}

$wsCheckout.isPPCApplePayExpressCheckout

Gibt aus, ob Apple Pay Express Checkout aktiv ist.
{{ if $wsCheckout.isPPCApplePayExpressCheckout }}
  // Apple Pay Express Checkout aktiv
{{ /if }}

$wsCheckout.isPPCGooglePayExpressCheckout

Gibt aus, ob Google Pay Express Checkout aktiv ist.
{{ if $wsCheckout.isPPCGooglePayExpressCheckout }}
  // Google Pay Express Checkout aktiv
{{ /if }}

$wsCheckout.verificationStatus

Gibt den Verifizierungsstatus der Bestellung aus.
Status: {{= $wsCheckout.verificationStatus }}

$wsCheckout.verificationStatusOptions

Gibt die verfügbaren Verifizierungsstatus-Optionen aus.
{{ foreach $option in $wsCheckout.verificationStatusOptions }}
  {{= $option.id }}: {{= $option.name }}
{{ /foreach }}

$wsCheckout.voucherAppliesPerItem

Gibt aus, ob Gutscheine pro Artikel angewendet werden.
{{ if $wsCheckout.voucherAppliesPerItem }}
  // Gutschein wird pro Artikel berechnet
{{ /if }}

$wsCheckout.fieldStates

Gibt eine Map aus, die den aktuellen Zustand jedes Checkout-Feldes als Text enthält. Damit lässt sich auf einen Blick erkennen, ob ein Feld noch nicht ausgefüllt, fehlerhaft oder korrekt befüllt ist, z.B. um dem Kunden gezielt Hinweise anzuzeigen. Mögliche Abfragewerte (siehe Beispiele in den Unterpunkten)
WertBeschreibung
“untouched”Das Feld wurde vom Kunden noch nicht bearbeitet oder ausgewählt.
“empty”Das Feld wurde mindestens einmal mit einem tatsächlichen Wert befüllt, dieser wurde jedoch anschließend wieder entfernt.
“invalid”Es ist ein Wert vorhanden, dieser hat die Validierung jedoch nicht bestanden (z.B. ungültige Adresse).
“incompatible”Der Wert ist grundsätzlich gültig, im aktuellen Kontext jedoch nicht zulässig (z.B. Zahlungsart, für das gewählte Lieferland nicht verfügbar).
“valid”Das Feld ist korrekt ausgefüllt und alle Prüfungen wurden bestanden.
Hinweis zur Prüfreihenfolge:
Die Zustände bauen aufeinander auf. Das System prüft der Reihe nach:
1.) Wurde das Feld überhaupt angewählt (untouched)?
2.) Ist noch kein Wert eingetragen (empty)?
3.) Ist der Wert ungültig (invalid)?
4.) Ist der Wert im aktuellen Kontext nicht zulässig (incompatible)?
Erst wenn alle Prüfungen bestanden sind, gilt das Feld als valid. Der erste zutreffende Zustand wird ausgegeben.

$wsCheckout.fieldStates.payment

Gibt den Zustand der gewählten Zahlungsart aus.
{{ if $wsCheckout.fieldStates.payment == "valid" }}
  // Zahlungsart ist korrekt ausgewählt
{{ /if }}

$wsCheckout.fieldStates.shippingMethod

Gibt den Zustand der gewählten Versandart aus.
{{ if $wsCheckout.fieldStates.shippingMethod == "invalid" }}
  // Das Feld wurde ausgefüllt, hat die Validierung aber nicht bestanden
{{ /if }}

$wsCheckout.fieldStates.billAddress

Gibt den Zustand der gewählten Rechnungsadresse aus.
{{ if $wsCheckout.fieldStates.billAddress == "empty" }}
  // Ein Wert wurde eingetragen und wieder entfernt
{{ /if }}

$wsCheckout.fieldStates.shippingAddress

Gibt den Zustand der gewählten Lieferadresse aus.
{{ if $wsCheckout.fieldStates.shippingAddress == "incompatible" }}
  // Die Lieferadresse ist für die gewählte Versand- oder Zahlungsart nicht zulässig
{{ /if }}

$wsCheckout.problems

Gibt eine Map mit Checkout-Problemen aus, wenn isValid den Wert false hat.
{{ if $wsCheckout.problems.payment }}
  // Probleme bei der Zahlungsart
{{ /if }}

$wsCheckout.problems.clearing

Gibt Probleme zur Zahlungsabwicklung aus.
{{ if $wsCheckout.problems.clearing }}
  // Probleme bei der Zahlungsabwicklung
{{ /if }}

$wsCheckout.problems.general

Gibt allgemeine Checkout-Probleme aus.
{{ foreach $myProblemsVariable in $wsCheckout.problems.general }}
  {{= $myProblemsVariable.code }}: {{= $myProblemsVariable.text }}
{{ /foreach }}

Fehler-Codes in $wsCheckout.problems.*

Die folgenden vier problems.*-Felder payment, shippingMethod, billAddress und shippingAddress unterstützten drei mögliche Codes, die angeben, warum ein Feld als fehlerhalft gilt:
CodeBeschreibungBeispiel
“missing”Es wurde kein Wert ausgewählt oder eingetragen.Keine Zahlungsart gewählt, keine Adresse eingetragen.
“checkFailed”Ein Wert ist vorhanden, hat die Validierung aber nicht bestanden.Ungültige Postleitzahl, fehlerhaftes Geburtsdatum.
“checkIncompatible”Der Wert ist grundsätzlich gültig, im aktuellen Kontext jedoch nicht zulässig.Zahlungsart für das gewählte Lieferland gesperrt, Versandart mit dem aktuellen Warenkorbwert nicht kompatibel.
Beispiel, das alle drei Fehler-Codes für die Zahlungsart auswertet:
{{ foreach $prob in $wsCheckout.problems.payment }}
  {{ if $prob.code == "missing" }}
    Bitte wählen Sie eine Zahlungsart aus.
  {{ /if }}
  {{ if $prob.code == "checkFailed" }}
    Die gewählte Zahlungsart ist ungültig ({{= $prob.check }}).
  {{ /if }}
  {{ if $prob.code == "checkIncompatible" }}
    Die gewählte Zahlungsart ist für Ihre Auswahl nicht verfügbar ({{= $prob.check }}).
  {{ /if }}
{{ /foreach }}
Wann ein Fehler-Code erscheint, hängt davon ab, welcher Fehlertyp verwendet wird. Im Checkout stehen grundsätzlich zwei Arten von Fehler-Feedback zur Verfügung:
  • $wsCheckout.problems.* - Diese Fehler werden sofort angezeigt, sobald das Feld angewählt bzw. verlassen wurde, sofern show*BeforeSubmit in der Konfiguration auf true gesetzt ist. Sie greifen auch dann, wenn der Kunde noch nicht auf “Kaufen” geklickt hat.
  • actionResponse-Fehler - Diese Fehler stammen aus der Server-Antwort nach einer Aktion. Für die meisten Checkout-Sektionen werden sie ungefiltert ausgegeben, d.h. alle Fehler erscheinen unabhängig vom Interaktionsstatus des Feldes. Ausnahme: Bei Kundendatenfeldern und der draftAddress werden die actionResponse-Fehler über show*BeforeSubmit gefiltert, da für diesen Bereich kein $wsCheckout.problems.* zur Verfügung steht. Hier gilt also: Fehler aus der Server-Antwort erscheinen nur dann, wenn show*BeforeSubmit aktiv ist.

$wsCheckout.problems.payment

Gibt eine Liste mit Problemen zur gewählten Zahlungsart aus.
{{ if $wsCheckout.problems.payment }}
  //Es sind Probleme zur gewählten Zahlungsart vorhanden
{{ /if }}
Hinweis: Zu $wsCheckout.problems.payment stehen weitere Untervariablen zur Verfügung (Fehlercodes, Fehlertext und Check-Name). Diese sind nachfolgend in der Tabelle aufgelistet.Untervariablen von $wsCheckout.problems.payment:
VariableRückgabe-TypBeschreibung
[$i].codestringGibt den Fehler-Code für den betreffenden Fehler aus. Möglicher Werte: - missing - checkFailed - checkIncompatible
[$i].textstringGibt den sprechenden Fehlertext aus der Konfiguration für den betreffenden Fehler aus.
[$i].checkstringGibt den Service-Namen des Checks aus.

$wsCheckout.problems.shippingMethod

Gibt eine Liste mit Problemen zur gewählten Versandmethode aus. Beispiel, das prüft, ob es bei der gewählten Versandmethode zu Problemen gekommen ist.
{{ if $wsCheckout.problems.shippingMethod}}
  //Es sind Probleme zur gewählten Versandmethode vorhanden
{{ /if }}
Hinweis: Zu $wsCheckout.problems.shippingMethodstehen weitere Untervariablen zur Verfügung (Fehlercodes, Fehlertext und Check-Name). Diese findest du nachfolgend in der Tabelle aufgelistet.Untervariablen von $wsCheckout.problems.shippingMethod:
VariableRückgabe-TypBeschreibung
[$i].codestringGibt den Fehler-Code für den betreffenden Fehler aus. Möglicher Werte: - missing - checkFailed - checkIncompatible
[$i].textstringGibt den sprechenden Fehlertext aus der Konfiguration für den betreffenden Fehler aus.
[$i].checkstringGibt den Service-Namen des Checks aus.

$wsCheckout.problems.billAddress

Gibt eine Liste mit Problemen zur gewählten Rechnungsadresse aus.
{{ if $wsCheckout.problems.billAddress}}
  //Es sind Probleme zur gewählten Rechnungsadresse vorhanden
{{ /if }}
Hinweis: Zu $wsCheckout.problems.billAddressstehen weitere Untervariablen zur Verfügung (Feld, Fehlercodes, Fehlertext und Check-Name). Diese finden Sie nachfolgend in der Tabelle aufgelistet.Untervariablen von $wsCheckout.problems.billAddress:
VariableRückgabe-TypBeschreibung
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehler-Code für den betreffenden Fehler aus. Möglicher Werte: - missing - checkFailed - checkIncompatible
[$i.].textstringGibt den sprechenden Fehlertext aus der Konfiguration für den betreffenden Fehler aus.
[$i].checkstringGibt den Service-Namen des Checks aus.

$wsCheckout.problems.shippingAddress

Gibt eine Liste mit Problemen zur gewählten Lieferadresse aus.
{{ if $wsCheckout.problems.shippingAddress}}
  //Es sind Probleme zur gewählten Lieferadresse vorhanden
{{ /if }}
Hinweis: Zu $wsCheckout.problems.shippingAddressstehen weitere Untervariablen zur Verfügung (Feld, Fehlercodes, Fehlertext und Check-Name). Diese findest du nachfolgend in der Tabelle aufgelistet.Untervariablen von $wsCheckout.problems.shippingAddress:
VariableRückgabe-TypBeschreibung
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehler-Code für den betreffenden Fehler aus. Möglicher Werte: - missing - checkFailed - checkIncompatible
[$i].textstringGibt den sprechenden Fehlertext aus der Konfiguration für den betreffenden Fehler aus.
[$i].checkstringGibt den Service-Namen des Checks aus.

$wsCheckout.problems.freeFields

Gibt eine Liste mit Problemen zu freien Checkout-Feldern aus.
{{ if $wsCheckout.problems.freeFields}}
  //Es sind Probleme zu freien Checkout-Feldern vorhanden
{{ /if }}
Hinweis: Zu $wsCheckout.problems.freeFieldsstehen weitere Untervariablen zur Verfügung (Feld und Fehlercode). Diese findest du nachfolgend in der Tabelle aufgelistet.Untervariablen von $wsCheckout.problems.freeFields:
VariableRückgabe-TypBeschreibung
[$i].fieldstringGibt das Feld aus, zu dem der Fehler gehört.
[$i].codestringGibt den Fehler-Code für den betreffenden Fehler aus (z.B. missing, checkFailed).
Anmerkung: Um auf ein bestimmtes Element im Array von $wsCheckout.problems.xyzzuzugreifen, muss [$i] muss durch den Wert des Elements im Array ersetzt werden.
Beispiel: $wsCheckout.problems.xyz[0].text - gibt den Fehlertext zum ersten Element des Arrays aus.

$wsCheckout.sum

Gibt eine Map mit Preisinformationen zum Checkout aus.

Properties von $wsCheckout.sum

$wsCheckout.sum.total

Gibt den Gesamtbetrag der Bestellung (inkl. Versandkosten etc.) aus. Beispiel, das den aktuellen Gesamtbetrag ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Gesamtbetrag: {{= $wsCheckout.sum.total | currency }}

$wsCheckout.sum.totalNet

Gibt den Nettobetrag der Bestellung aus. Beispiel, das den Nettobetrag ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Nettobetrag: {{= $wsCheckout.sum.totalNet | currency }}

$wsCheckout.sum.totalGross

Gibt den Bruttobetrag der Bestellung aus. Beispiel, das den Bruttobetrag ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Bruttobetrag: {{= $wsCheckout.sum.totalGross | currency }}

$wsCheckout.sum.totalPreDeduction

Gibt den Gesamtbetrag ohne den Abzug der Steuer aus. Beispiel, das den Gesamtbetrag ohne Abzug der Steuer ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Gesamtbetrag (vor Steuerabzug): {{= $wsCheckout.sum.totalPreDeduction | currency }}

$wsCheckout.sum.totalTax

Gibt die gesamten Steuern der Bestellung aus. Beispiel, das den Steuerbetrag ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Steuerbetrag: {{= $wsCheckout.sum.totalTax | currency }}

$wsCheckout.sum.shippingCost

Gibt die Versandkosten der Bestellung aus. Beispiel, das die Versandkosten ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Versandkosten: {{= $wsCheckout.sum.shippingCost | currency }}

$wsCheckout.sum.totalVoucher

Gibt den Wert der eingelösten Gutscheine aus. Beispiel, das den Wert der eingelösten Gutscheine ausgibt. | currency sorgt dafür, dass der Wert als formatierter Geldbetrag ausgegeben wird.
Eingelöste Gutscheine:{{= $wsCheckout.sum.totalVoucher | currency }}

$wsCheckout.sum.currency

Gibt den Währungscode aus.
Währung: {{= $wsCheckout.sum.currency }}

$wsCheckout.sum.paymentCost

Gibt die Kosten der Zahlungsart aus.
Zahlungskosten: {{= $wsCheckout.sum.paymentCost | currency }}

$wsCheckout.sum.surchargeCost

Gibt Zusatzkosten / Aufschläge aus.
Aufschläge: {{= $wsCheckout.sum.surchargeCost | currency }}

$wsCheckout.sum.totalWeight

Gibt das Gesamtgewicht der Bestellung aus.
Gewicht: {{= $wsCheckout.sum.totalWeight }}

Methoden

Dieses Kapitel dokumentiert die unter $wsCheckout bereitgestellten Methoden.

$wsCheckout.isValidPayment()

Prüft, ob die Zahlungsart mit der angegebenen ID verfügbar ist. Signatur
$wsCheckout.isValidPayment(paymentId)
Rückgabe
true / false - Zahlungsart verfügbar / nicht verfügbar.
Parameter
NameTypPflichtBeschreibung
paymentIdstringjaID der Zahlungsart, die geprüft werden soll.
Beispiel, das prüft, ob die Zahlungsart verfügbar ist.
{{ if $wsCheckout.isValidPayment("stripe") }}
  // Stripe ist verfügbar
{{ /if }}

$wsCheckout.isValidShippingMethod()

Prüft, ob die Versandart mit der angegebenen ID verfügbar ist. Signatur
$wsCheckout.isValidShippingMethod(shippingMethodId)
Rückgabe
true / false - Versandart verfügbar / nicht verfügbar.
Parameter
NameTypPflichtBeschreibung
shippingMethodIdstringjaID der Versandart, die geprüft werden soll.
Beispiel, das prüft, ob die angegebene Versandart verfügbar ist.
{{ if $wsCheckout.isValidShippingMethod("dhl_standard") }}
  // DHL Standard ist verfügbar
{{ /if }}

$wsCheckout.isValidBillAddress()

Prüft, ob die Adresse mit der angegebenen ID eine gültige Rechnungsadresse ist. Signatur
$wsCheckout.isValidBillAddress(addressId)
Rückgabe
true / false - Rechnungsadresse verfügbar / nicht verfügbar.
Parameter
NameTypPflichtBeschreibung
addressIdstringjaID der Adresse, die geprüft werden soll.
Beispiel, das die Rechnungsadresse validiert.
{{ if $wsCheckout.isValidBillAddress($wsCheckout.selectedBillAddress) }}
  // Rechnungsadresse ist gültig
{{ /if }}

$wsCheckout.isValidShippingAddress()

Prüft, ob die Adresse mit der angegebenen ID eine gültige Lieferadresse ist. Signatur
$wsCheckout.isValidShippingAddress(addressId)
Rückgabe
true / false - Lieferadresse verfügbar / nicht verfügbar.
Parameter
NameTypPflichtBeschreibung
addressIdstringjaID der Adresse, die geprüft werden soll.
Beispiel, das die Lieferadresse validiert.
{{ if $wsCheckout.isValidShippingAddress($wsCheckout.selectedShippingAddress) }}
  // Lieferadresse ist gültig
{{ /if }}

$wsCheckout.isPending()

Prüft, ob ein Zahlungsvorgang noch aussteht. Signatur
$wsCheckout.isPending()
Rückgabe
bool - true wenn die Zahlung aussteht, sonst false.
Beispiel, das prüft, ob eine Zahlung aussteht.
{{ if $wsCheckout.isPending() }}
  // Zahlungsvorgang ist noch aktiv
{{ /if }}

$wsCheckout.isFinished()

Prüft, ob eine Bestellung abgeschlossen wurde. Signatur
$wsCheckout.isFinished()
Rückgabe
bool - true wenn die Bestellung abgeschlossen ist, sonst false.
Beispiel, das prüft, ob die Bestellung abgeschlossen ist.
{{ if $wsCheckout.isFinished() }}
  // Bestellung wurde abgeschlossen
{{ /if }}

$wsCheckout.getAmountInSmallestUnit()

Gibt den Betrag in der kleinsten Währungseinheit zurück (z.B. Cent statt Euro). Signatur $wsCheckout.getAmountInSmallestUnit(amount) Rückgabe
int - Betrag in kleinster Einheit.
Parameter
ParameterTypPflichtBeschreibung
amountfloatjaBetrag in der Hauptwährung.
Beispiel, das den Gesamtbetrag in Cent umrechnet.
{{ var $cents = $wsCheckout.getAmountInSmallestUnit($wsCheckout.sum.total) }}

$wsCheckout.getShippingMethodDisabledErrors()

Gibt zurück, warum eine Versandart deaktiviert ist. Signatur
$wsCheckout.getShippingMethodDisabledErrors(shippingMethodId)
Rückgabe
array - Liste mit Fehlermeldungen.
Parameter
ParameterTypPflichtBeschreibung
shippingMethodIdstringjaID der Versandart, die geprüft werden soll.
Beispiel, das die Gründe für eine deaktivierte Versandart ausgibt:
{{ foreach $myError in $wsCheckout.getShippingMethodDisabledErrors("express") }}
  {{= $myError }}
{{ /foreach }}

$wsCheckout.itemVoucherDiscount()

Berechnet den Gutscheinrabatt für einen Artikel. Signatur
$wsCheckout.itemVoucherDiscount(itemId)
Rückgabe
float - Rabattbetrag für den Artikel.
Parameter
ParameterTypPflichtBeschreibung
itemIdstringjaID des Artikels im Warenkorb, für den der Rabatt errechnet werden soll.
Beispiel, das den Rabatt für einen Artikel berechnet.
Rabatt: {{= $wsCheckout.itemVoucherDiscount($item.id) | currency }}

Aktionen

Aktionen zu diesem Modul, die Änderungen auslösen (z. B. erstellen, bearbeiten, löschen), sind separat im Kapitel „Aktionen“ dokumentiert: Checkout

Beispiele für die Anzeige von Checkoutdaten

Kontotyp Prüfen

Dadurch wird geprüft, ob der Kunde Gastbesteller oder eingeloggter Kunde ist.
Kontotyp: {{= $wsCheckout.accountType  }}

Prüfung auf neues Konto

In diesem Beispiel wird geprüft, ob der Kunde beim Bestellablauf ein neues Konto erstellt hat.
{{ if $wsCheckout.accountType == "new" and not $wsAccount.isLoggedIn }}
  Ein neues Konto wird bei dieser Bestellung erstellt
{{ /if }}

Gastbesteller E-Mail Adresse

In diesem Beispiel wird die E-Mail Adresse eines Gastbestellers ausgelesen.
Ihre E-Mail Adresse: {{= $wsCheckout.guestMail }}

Rechnungsadresse

Gültigkeit der Adresse prüfen

In diesem Beispiel wird geprüft, ob die Rechnungsadresse gültig ist.
{{ if $wsCheckout.isValidBillAddress($wsCheckout.selectedBillAddress) }}
  Rechnungsadresse ist gültig
{{ /if }}

Index der Rechnungsadresse

Liefert die Listposition der gewählten Rechnungsadresse aus. Wenn nur eine Rechnungsadresse hinterlegt wurde und diese gewählt ist, dann wird der Indexwert ‘1’ ausgegeben.
Indexnummer der Rechnungsadresse: {{= $wsCheckout.selectedBillAddress}}

Fehler anzeigen

In diesem Beispiel wird die gewählte Rechnungsadresse auf Fehler überprüft. Falls Fehler auftreten, werden der entsprechende Fehlercode und die Fehlermeldung ausgegeben.
{{ if $wsCheckout.problems.billAddress }}
  {{ foreach $prob in $wsCheckout.problems.billAddress }}
	{{=$prob.code}} {{=$prob.check}} 
  {{ /foreach }}
{{ /if }}

Lieferadresse

Abweichende Lieferadresse

In diesem Beispiel wird geprüft, ob eine Abweichende Lieferadresse verwendet wird.
{{ if $wsCheckout.useAlternativeShippingAddress }}
  Eine Abweichende Lieferadresse wird verwendet  
{{ /if }}

Index der Lieferadresse

Liefert die Listposition der gewählten Lieferadresse aus. Wenn nur eine Lieferadresse hinterlegt wurde und diese gewählt ist, dann wird der Indexwert ‘1’ ausgegeben.
Indexnummer der Lieferadresse: {{= $wsCheckout.selectedShippingAddress}}

Lieferadresse Gültigkeit

In diesem Beispiel wird geprüft, ob die Lieferadresse gültig ist.
{{ if $wsCheckout.isValidShippingAddress($wsCheckout.selectedShippingAddress) }}
  Lieferadresse ist gültig
{{ /if }}

Fehler anzeigen

In diesem Beispiel wird die gewählte Lieferadresse auf Fehler überprüft. Falls Fehler auftreten, werden der entsprechende Fehlercode und die Fehlermeldung ausgegeben.
{{ if $wsCheckout.problems.shippingAddress }}
	{{ foreach $prob in $wsCheckout.problems.shippingAddress }}
		{{=$prob.code}} {{=$prob.check}} 
	{{ /foreach }}
{{ /if }}

Zahlung

Gewählte Zahlungsart

In diesem Beispiel wird die gewählte Zahlungsart angezeigt.
Gewählte Zahlungsart: {{= $wsCheckout.selectedPayment }

Zahlungsart Gültigkeit

In diesem Beispiel wird geprüft, ob die gewählte Zahlungsart gültig ist.
{{ if $wsCheckout.isValidPayment($wsCheckout.selectedPayment) }} 
  Die gewählte Zahlungsart ist gültig  
{{ /if }}

Fehler anzeigen

In diesem Beispiel wird die gewählte Zahlungsart auf Fehler überprüft. Falls Fehler auftreten, werden der entsprechende Fehlercode und die Fehlermeldung ausgegeben.
{{ if $wsCheckout.problems.payment }}
    {{ foreach $prob in $wsCheckout.problems.payment }}
        {{=$prob.code}} {{=$prob.check}}
    {{ /foreach }}
{{ /if }}

Versand

Gewählte Versandart

In diesem Beispiel wird die gewählte Versandart angezeigt.
Gewählte Versandart: {{= $wsCheckout.selectedShippingMethod }}

Restbetrag bis zum kostenlosen Versand

In diesem Beispiel wird der verbleibende Betrag bis zum Erreichen der kostenlosen Versandgrenze angezeigt.
Nur noch {{= $wsCheckout.restUntilFreeDelivery | currency }} {{= $wsConfig.currency.symbol }} bis zum kostenlosen Versand!

Versandart Gültigkeit

In diesem Beispiel wird geprüft, ob die gewählte Versandart gültig ist.
{{ if $wsCheckout.isValidShippingMethod($wsCheckout.selectedShippingMethod) }}
  Versandart ist gültig  
{{ /if }}

Fehler anzeigen

In diesem Beispiel wird die gewählte Versandart auf Fehler überprüft. Falls Fehler auftreten, werden der entsprechende Fehlercode und die Fehlermeldung ausgegeben.
{{ if $wsCheckout.problems.selectedShippingMethod }}
  {{ foreach $prob in $wsCheckout.problems.selectedShippingMethod }}
	{{=$prob.code}} {{=$prob.check}} 
  {{ /foreach }}
{{ /if }}

Checkoutstatus

Checkout Gültigkeit

In diesem Beispiel wird geprüft, ob die Rechnungs-/Lieferadressen, Versand-/Zahlungsart, Reservierungen und Produkte im Warenkorb gültig sind.
{{ if $wsCheckout.isValid }} 
  Checkoutstatus ist OK 
{{ /if }}

Prüfen, ob einen Bestellvorgang abgeschlossen wurde

In diesem Beispiel wird geprüft, ob in der aktuellen Session ein Bestellvorgang noch nicht abgeschlossen wurde. Dies kann passieren, wenn beispielsweise eine Bezahlung noch aussteht oder nicht bestätigt wurde.
{{ if $wsCheckout.isPending() }}
  Aktuell ist für diese Session ein Zahlungsvorgang aktiv (pending).
{{ /if }}
{{ if $wsCheckout.isFinished() }}
  Mit der Session wurde eine Bestellung abgeschlossen.
{{ /if }}

Express Checkout Locked

Nachdem der Nutzer über PayPal bezahlt hat, wird er aus zum Shop geleitet, um die Bestellung abzuschließen. Währenddessen sind bestimmte Shop-Funktionen nicht verfügbar, wie zum Beispiel das Bearbeiten des Warenkorbs oder das Einlösen und Entfernen von Gutscheinen. In diesem Beispiel wird die Eigenschaft isExpressCheckoutLocked überprüft, um dem Nutzer eine entsprechende Nachricht anzuzeigen.
{{ if $wsCheckout.isExpressCheckoutLocked }} 
  Die Bearbeitung Ihres Warenkorbs ist derzeit nicht möglich
{{ /if }}

Free Fields (Freifelder)

Der Zugriff auf Freifelder erfolgt über eine foreach Schleife, wobei ihre jeweiligen Eigenschaften überprüft werden können.

Beispiel: Prüfen, ob die AGBs akzeptiert wurden

In diesem Beispiel wird überprüft, ob das Feld agb innerhalb einer foreach Schleife geladen wird. Falls das Feld vorhanden ist, wird dessen boolesche Eigenschaft checked geprüft.
{{ foreach $checkoutField in $wsCheckout.freeFields }}
  {{ if $checkoutField.id == "agb" }}
	{{ if not $checkoutField.checked }} 
		Bitte akzeptieren Sie die AGBs
	{{ /if }}
  {{ /if }}
{{ /foreach }}

Sum (Summe, Rabatte & Zusatzkosten)

Versandkosten

In diesem Beispiel werden die gesamte Versandkosten angezeigt.
Versandkosten: {{= $wsCheckout.sum.shippingCost | currency }} {{= $wsConfig.currency.symbol }}

Total

In diesem Beispiel wird die Summe inklusive Versandkosten, Nachlässe/Rabatte und Steuern angezeigt.
Gesamtsumme: {{= $wsCheckout.sum.total | currency }} {{= $wsConfig.currency.symbol }}

Total Gross

In diesem Beispiel wird die Summe inklusive Versandkosten und Steuern angezeigt.
Summe (gross): {{= $wsCheckout.sum.totalGross | currency }} {{= $wsConfig.currency.symbol }}

Total Net

In diesem Beispiel wird die Summe inklusive Versandkosten, jedoch ohne Steuern angezeigt.
Summe (net): {{= $wsCheckout.sum.totalNet | currency }} {{= $wsConfig.currency.symbol }}

Total Tax

In diesem Beispiel wird die Gesamtsumme der Steuern angezeigt.
Steuern: {{= $wsCheckout.sum.totalTax | currency }} {{= $wsConfig.currency.symbol }}

Total Voucher

In diesem Beispiel wird die Summe der Nachlässe/Rabatte angezeigt.
Rabatte: {{= ($wsCheckout.sum.totalVoucher) | currency }} {{= $wsConfig.currency.symbol }}