In diesem Anwendungsbeispiel erfahren Sie, wie Sie Kaufgutscheine zum Ausdrucken mit mehreren Motiven anbieten können.
Für jedes gewünschte Motiv muss ein einzelnes Produkt (=Kaufgutschein) angelegt werden. Diese Produkte/Kaufgutscheine sind identisch, sie unterscheiden sich lediglich im Motiv.
Integration
Hinweis: |
|
Die folgende Integrationsanleitung entspricht im Wesentlichen derjenigen der Grundfunktion "Kaufgutscheine zum Ausdrucken": Beachten Sie folgende Besonderheiten/Abweichungen: ▪Für das Anbieten mehrerer Motive sind zwei weitere Schritte nötig: Schritt 4 und Schritt 5 (Übergabe des Motivs/Produktdatenfelds). ▪Die Codebeispiele bei Schritt 10, Schritt 11 und Schritt 13 weichen von der Integrationsbeschreibung der Grundfunktion ab. ▪Für jedes Motiv muss ein einzelnes Produkt (=Kaufgutschein) angelegt werden. |
Schritt 1: Freischaltung des Gutschein-Generators
Falls Sie den Gutschein-Generator nutzen wollen, muss dieser zunächst freigeschaltet werden. Bitte wenden Sie sich dazu an Ihren WEBSALE-Ansprechpartner.
Schritt 2: "Gutscheine anbieten" integrieren
Wenn Sie in Ihrem Shop noch keine Gutscheine anbieten, müssen Sie zunächst die Gutscheineingabe integrieren: auf der Warenkorbseite (ws_basket.htm) und/oder auf der Bestellübersichtsseite (ws_place_order.htm).
Schritt 3: Anlegen der Kaufgutscheine als Produkte
Bei den Kaufgutscheinen handelt es sich um Produkte, die wie alle anderen Produkte in den Warenkorb gelegt werden und dem üblichen Bestellvorgang unterliegen.
Hinweis: |
|
Für jedes Motiv muss ein einzelnes Produkt (=Kaufgutschein) angelegt werden. Wünschen Sie z. B. drei verschiedene Motive, legen Sie bitte drei Produkte/Kaufgutscheine (mit gleichen Einstellungen) an. Legen Sie dann für jedes Produkt jeweils das gewünschtes Motiv fest (siehe Schritt 4). |
Die Kaufgutscheine müssen also entsprechend angelegt und definiert werden. Hierzu wird ein neues Produktfeld InstantVoucherProduct angelegt. Um den Kaufgutschein zu definieren, werden sämtliche im Folgenden beschriebenen Werte hintereinander als String in das Feld eingetragen. Der gesamte String wird durch das Tag <g> eingerahmt:
InstantVoucherProduct:
<g><1>Gutscheinprodukt y/n</1><2>ChargenID</2><3>Vorlagenwert überschreiben y/n</3><4>Gutscheinnummer neu generieren oder aus Pool nehmen y/n</4></g>
Tag 1:
▪y: Kaufgutschein ist aktiv
▪n: Kaufgutschein ist inaktiv bzw. kein Kaufgutschein. Alle weiteren Felder werden ignoriert.
Tag 2:
▪ChargenID
Tag 3:
▪y: Der Wert des Gutscheins entspricht dem Produktpreis. Ein evtl. vorhandener Vorlagenwert bzw. Gutscheinwert aus einem Pool wird überschrieben.
▪n: Der Wert des Gutscheins ist der Vorlagenwert bzw. der Gutscheinwert aus einem Pool
Tag 4:
▪y: Gutscheinnummer soll neu generiert werden
▪n: Gutscheinnummer soll aus einem vorhandenen Gutscheinnummern-Pool genommen werden
Beispiel:
<g><1>y</1><2>Kaufgutscheine</2><3>y</3><4>y</4></g>
In der Regel werden für den Produktpreis/Gutscheinwert Varianten verwendet. Die Variante "Gutscheinwert" beispielsweise folgende Werte haben:
Gutscheinwert:
▪10 EUR
▪20 EUR
▪50 EUR
▪100 EUR
▪200 EUR
▪500 EUR
Schritt 4: Motiv für Kaufgutschein übergeben
Legen Sie für das Motiv ein separates Produktdatenfeld an, z. B. IS_ZUSATZ00. Geben Sie in diesem Feld den Dateinamen der Motiv-Bilddatei an und speichern Sie die Datei im Verzeichnis benutzer/navigation/grafiken.
Wir empfehlen Ihnen, in diesem Verzeichnis zusätzlich ein Default-Motiv bereitzustellen, z. B. img_instantVoucher_default.jpg. Kann das gewünschte Motiv des Kunden nicht geladen werden, greift der Shop auf das hinterlegte Default-Motiv zurück (siehe Schritt 11).
Hinweis: |
|
Bitte beachten Sie, dass die Motive in druckfähiger Qualität (z. B. 150 dpi) auf dem Shop-Server bereitgestellt werden müssen. |
Hinweis: |
|
Der Name des Produktdatenfelds (IS_ZUSATZ00) wird in dieser Integrationsanleitung an mehreren Stellen in Codebeispielen verwendet. Bitte achten Sie darauf, die Codebeispiele entsprechend anzupassen, wenn Sie das Produktdatenfeld abweichend benennen. |
Schritt 5: Produktdatenfeld für das Motiv in der Bestellung übergeben
Ergänzen Sie in der Shopkonfiguration shop.config im Abschnitt <AdditionalProductFieldsInBasket> einen +Field-Eintrag mit dem technischen Namen des Produktdatenfelds, das Sie in Schritt 4 angelegt haben, z. B. IS_ZUSATZ00:
<AdditionalProductFieldsInBasket>
+Field = IS_ZUSATZ00
</AdditionalProductFieldsInBasket>
Referenz: Abschnitt AdditionalProductFieldsInBasket
Wegweiser: Freie Produktfelder im Warenkorb anzeigen
Schritt 6: Anlegen der Gutscheinnummern/Importieren des Gutscheinnummern-Pools
Der Shop unterstützt zwei Methoden, um Gutscheinnummern automatisch zu generieren. Entweder werden Gutscheinnnummern mittels Gutschein-Generator im Online-Servicebereich der WEBSALE AG angelegt, oder es werden von einem ERP-/Warenwirtschafts-System Gutscheinnummern importiert, die in einem Gutscheinnummern-Pool vorgehalten/gespeichert werden.
Anlegen von Gutscheinen im OSB
Mittels des Gutschein-Generators können Gutscheine und Gutscheinvorlagen angelegt werden. (Eine Gutscheinvorlage enthält alle wesentlichen Daten/Einstellungen der automatisch generierten Gutscheine.)
Hinweis: |
|
Wenn Sie beim Gutscheinprodukt definiert haben, dass der Produktpreis der Gutscheinwert ist, kommt es zu den folgenden Änderungen: |
Import eines Gutscheinnummern-Pools
Dem Shop kann per Importdatei ein Gutscheinnummern-Pool übermittelt werden. Das Format der Importdatei wird in einer separaten Dokumentation beschrieben, die Sie gerne von der WEBSALE AG anfordern können.
Beim Gutscheinprodukt muss das Tag 4 entsprechend auf "n" gesetzt werden.
Tag 4:
▪y: Gutscheinnummer soll neu generiert werden
▪n: Gutscheinnummer soll aus einem vorhandenen Gutscheinnummern-Pool genommen werden
Voraussetzung ist, dass jedem importierten Gutschein eine ChargenID zugewiesen wird, da diese beim Gutscheinprodukt angegeben werden muss.
Hinweis: |
|
▪Das ERP-System muss sicherstellen, dass stets eine ausreichende Anzahl an Gutscheinnummern zur Verfügung steht, ansonsten kann der Kauf eines Gutscheinproduktes nicht durchgeführt werden. Der Shop überprüft dies und zeigt im Fehlerfall eine entsprechende Meldung an. ▪Wenn Sie beim Gutscheinprodukt definiert haben, dass der Produktpreis der Gutscheinwert ist, führt das zu folgenden Änderungen: |
Weitere Informationen zum Anlegen von Gutscheinen und Gutscheinvorlagen mittels Gutschein-Generator finden Sie unter "Gutscheine anlegen oder importieren".
Schritt 7: Zahlungsarten für Kaufgutscheine festlegen
Im Shop kann eingestellt werden, dass nur noch Online-Bezahlmethoden (z. B. Kreditkarte, PayPal, Sofortüberweisung) angeboten werden, wenn mindestens ein Kaufgutschein im Warenkorb liegt. Da der Besteller nach dem Kauf eines Gutscheinproduktes die angezeigte Gutscheinnummer unmittelbar einlösen kann, empfiehlt es sich, diese Funktion im Shop zu aktivieren.
Stellen Sie bei den Zahlungsarten ein, die Sie in Ihrem Shop anbieten, ob diese für den Kauf eines Kaufgutscheins gelten sollen. Für jede Zahlungsart legen Sie das separat fest: in der Shopkonfiguration shop.config im Abschnitt <PaymentXXX-Txt> über den Parameter InstantVoucherProducts-Allow.
<PaymentXXX-Txt>
...
InstantVoucherProducts-Allow = yes
...
</PaymentXXX-Txt>
Referenz: PaymentXXX-Txt
Schritt 8: Anzeige auf der Produktübersichtsseite (ws_category.htm) und Produktdetailansicht (ws_product.htm) (optional)
Kaufgutscheine können auf der Produktübersichtsseite (ws_category.htm) und Produktdetailansicht (ws_product.htm) gesondert geklammert werden.
Fügen Sie hierzu folgenden Bereich auf dem gewünschten Template hinzu.
{PR-InstantVoucherProduct}
Das Produkt ist ein Kaufgutschein.
{/PR-InstantVoucherProduct}
Referenz: PR-InstantVoucherProduct
Schritt 9: Anzeige auf der Warenkorbseite (ws_basket.htm) (optional)
Kaufgutscheine können auch auf der Warenkorbseite (ws_basket.htm) gesondert geklammert werden.
Fügen Sie hierzu folgenden Bereich auf dem Template hinzu.
{BASKET-PR-InstantVoucherProduct}
Das Produkt ist ein Kaufgutschein.
{/BASKET-PR-InstantVoucherProduct}
Referenz: BASKET-PR-InstantVoucherProduct
Schritt 10: Anzeige der generierten Gutscheinnummer
Die automatisch generierte Gutscheinnummer sowie der Link zum PDF-Download können auf folgenden Seiten angezeigt werden:
▪HTML-Bestelleingangsbestätigungsseite (ws_confirm.htm)
▪Bestelleingangsbestätigungs-E-Mail
▪Bestellhistorie
Beispiel: HTML-Bestelleingangsbestätigungsseite (ws_confirm.htm)
{@BASKET-PR-Data}
...
{BASKET-PR-InstantVoucherProduct}
{BASKET-PR-InstantVoucherProductData}
{@BASKET-PR-InstantVoucherProductData}
...
<a href="~WS-Start~~BASKET-PR-InstantVoucherProductData_PDFLinkPart~{BASKET-PR-AF-IS_ZUSATZ00}&otp3=~BASKET-PR-AF-IS_ZUSATZ00~{/BASKET-PR-AF-IS_ZUSATZ00}">
Gutschein hier ausdrucken (Gutscheinnummer: ~BASKET-PR-InstantVoucherProductData_VoucherNumber~)
</a>
...
{/@BASKET-PR-InstantVoucherProductData}
{/BASKET-PR-InstantVoucherProductData}
{/BASKET-PR-InstantVoucherProduct}
...
{/@BASKET-PR-Data}
Referenz: BASKET-PR-InstantVoucherProduct
Referenz: BASKET-PR-InstantVoucherProductData
Referenz: BASKET-PR-InstantVoucherProductData_VoucherNumber
Referenz: BASKET-PR-InstantVoucherProductData_PDFLinkPart
Referenz: BASKET-PR-Data
Referenz: BASKET-PR-AF-"technische ID"
Referenz: WS-Start
Schritt 11: Template zum PDF-Download des Kaufgutscheins erstellen
Um den Kaufgutschein als PDF-Download anzubieten, ist ein eigenes Template notwendig.
1. Template zuweisen
Weisen Sie ein neues Template in Ihrer Shopkonfiguration shop.config im Abschnitt <Templates> dem Parameter InstantVoucherPDF zu.
<Templates>
...
InstantVoucherPDF = ws_instant_voucher.htm # Template PDF-Download Gutschein
...
</Templates>
Referenz: Abschnitt Templates
2. Template anlegen und speichern
Legen Sie ein neues Template an, das dem Kunden als PDF-Download zur Verfügung stehen soll und integrieren Sie darin die Daten des Kaufgutscheins.
Mithilfe der WS-OTP-Tags prüft der Shop, ob ein Motiv übergeben wurde (siehe Schritt 10) und ruft es auf. Andernfalls wird eine hinterlegte Default-Bilddatei geladen, die Sie in Schritt 4 definiert haben. Geben Sie hierzu unter <img src=""> den Pfad zur entsprechenden Bilddatei an.
Speichern Sie dieses Template unter dem Namen wie im vorigen Schritt angegeben in Ihrem Templateverzeichnis, z. B. benutzer/templates/translation.
...
Gutschein:
Betrag: ~INSTANTVOUCHER-Amount~ ~INSTANTVOUCHER-CurrencyCode~ ~INSTANTVOUCHER-CurrencySymbol~
Nummer: ~INSTANTVOUCHER-VoucherNumber~
Gültig bis: ~INSTANTVOUCHER-ValidUntil_day~.~INSTANTVOUCHER-ValidUntil_month~.~INSTANTVOUCHER-ValidUntil_year~
{!WS-OTP3}
<img src="../img_instantVoucher_default.jpg" width="" alt="">
{/!WS-OTP3}
{WS-OTP3}
<img src="../~WS-OTP3~" width="" alt="">
{/WS-OTP3}
...
Referenz: INSTANTVOUCHER-Amount
Referenz: INSTANTVOUCHER-CurrencyCode
Referenz: INSTANTVOUCHER-CurrencySymbol
Referenz: INSTANTVOUCHER-ValidUntil_day
Referenz: INSTANTVOUCHER-ValidUntil_month
Referenz: INSTANTVOUCHER-ValidUntil_year
Referenz: INSTANTVOUCHER-VoucherNumber
Referenz: WS-OTPX
3. PDF-Dateinamen angeben
Geben Sie im Abschnitt <PDFGenerator> Ihrer Shopkonfiguration shop.config im Parameter InstantVoucherPDFFilename den Dateinamen der zu generierenden PDF-Datei an.
<PDFGenerator>
...
InstantVoucherPDFFilename = gutschein.pdf
...
</PDFGenerator>
Referenz: Abschnitt PDFGenerator
Schritt 12: Fehlermeldung anlegen
Legen Sie im Parameter InstantVoucherError des Abschnittes <NotifyMessages-Txt> Ihrer Shopkonfiguration shop.config eine Fehlermeldung fest.
<NotifyMessages-Txt>
...
InstantVoucherError = Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut oder wenden Sie sich an den Shopbetreiber.
...
</NotifyMessages-Txt>
Referenz: NotifyMessages-Txt
Schritt 13: Download-Option in der Bestellhistorie zur Verfügung stellen
Um zu vermeiden, dass die E-Mail zur Bestellbestätigung gelöscht wird und der Kunde dann keine Möglichkeit mehr hat, den Gutschein auszudrucken, können Sie auf der WEBSALE-Bestellhistorie (ws_order_history.htm) einen Download-Link hinzufügen:
{@OH-S-Item}
...
~DC-FP1_set($OH-P-AF-IS_ZUSATZ00)~
{@OH-S-InstantVoucherProduct}
<a href="~WS-EnsureNextLinkContainsURLParams~~WS-Start~~OH-P-PDFLinkPart~&otp3=~DC-FP1~">Gutschein hier ausdrucken</a>
Gutscheinnummer: ~OH-P-Number~
{/@OH-S-InstantVoucherProduct}
...
{/@OH-S-Item}
Referenz: OH-S-"technische ID"
Referenz: OH-P-"technische ID"
Referenz: DC-FPX
Referenz: DC-FPX_set
Referenz: WS-EnsureNextLinkContainsURLParams
Referenz: WS-Start