Kaufgutscheine zum Ausdrucken mit mehreren Motiven anbieten

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":
Wegweiser: 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:
1. Die hinterlegte Standard-Währung der Vorlage wird mit der entsprechenden Währung des Subshops überschrieben.
2. Der Gutscheinwert der Vorlage wird mit dem Produktpreis überschrieben.

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:
1. Die hinterlegte Währung des Gutscheins aus dem Pool wird mit der entsprechenden Währung des Subshops überschrieben.
2. Der Gutscheinwert aus dem Pool wird mit dem Produktpreis überschrieben.

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