Anlage im rentoffice Cloud unter Einstellung -> Gutscheine:


Damit der Menüpunkt für die Bearbeitung von Gutscheinen in rentoffice Cloud in den Einstellungen angezeigt wird, muss ggf. unter Konfiguration Onlinereservierung der Schalter "ShowTextBoxVoucher" auf "Ja" gestellt werden. Dieser Schalter blendet außerdem das Eingabefeld für Gutschein-Codes in der Onlinereservierung ein. Nach dem Aktivieren des Schalters muss man sich im Web einmal neu anmelden.



Anschließend wird oben im Menü der Menüpunkt "Gutscheine" angezeigt.



In der Übersicht werden die angelegten Gutscheine angezeigt und es können dort neue Gutscheine anlegt werden. 


Gutschein-Code: Code, der in der Onlinereservierung eingegeben werden muss, um den Rabatt zu erhalten.

Bezeichnung: Bezeichnung des Rabatts, wie er in den Tarifpositionen des Vertrags gelistet wird.

Einheit: Stk. = Pauschaler Rabatt (fester Betrag); Prozent = prozentualer Rabatt

Preis brutto/Prozent: Absoluter Rabattbetrag bzw. Höhe des prozentualen Rabatts

Gültigkeit: Beliebig oft = Gutschein kann uneingeschränkt eingesetzt werden (auch von ein und dem gleichen Kunden); Einmal pro Kunde = Code kann einmal pro Kunde eingesetzt werden (Prüfung erfolgt nach Absenden der Reservierung); Einmalig = Code kann insgesamt nur einmal eingesetzt werden

gültig ab/gültig bis: Freiwillige Felder, um einen Gültigkeitszeitraum für den Rabattcode festzulegen



Anlage im RentOffice Classic unter Tarife -> Zubehör Gutschein:


(Wir empfehlen die Anlage von Gutscheinen in RentOffice Cloud.)



Gutscheine im Webdienst:


Von zentraler Bedeutung ist der "Gutschein-Code", der an unseren Webdienst übergeben werden muss.

Für die Anwendung in einer App gibt es drei Stellen, an denen der Gutschein relevant ist:

1. Prüfung des Gutscheins
Es gibt einen Endpunkt "api/OR/ValidateVoucher", der für die Prüfung des Gutscheins während des Buchungsprozesses (aber vor dem Abschicken der Buchung) verwendet wird. Die App muss die Ident des Kunden (AdrIdent) und den Gutschein-Code (Voucher) an diesen Endpunkt schicken und erhält als Ergebnis, ob der Gutschein gültig ist. Wenn der Gutschein gültig ist, dann kann anschließend der nachfolgende Endpunkt aufgerufen werden.

Weitere Informationen zum Endpunkt gibt es hier:


https://api.rentoffice.org/Swagger/ui/index#!/OR/OR_ValidateVoucher 

2. Berechnung des Tarifs mit Gutschein
Der Endpunkt api/OR/GetTarifExtras dient dazu, die Tarifpositionen für die gewünschten Buchungsparameter (Mietbeginn, -ende, Station, Tarifgruppe) zu berechnen. Dabei kann optional auch der Gutschein-Code übergeben werden. Im Ergebnis erhält die App die Tarifpositionen inkl. einer Rabattposition für den Gutschein zurück.

Hier ist ein Beispiel-Aufruf mit den nötigen Parametern:


https://www.rentoffice.org/ROWebApiService/api/OR/GetTarifExtras?ROType=rodemo&station=ZE&dateStart=28.11.2019&timeStart=08:00&dateStop=29.11.2019&timeStop=08:00&tarifgroup=A&voucher=4711

Die Tarifpositionen stehen im Rückgabeobjekt unter Tarifgroup.TarifPos.

3. Abschicken der Buchung
Damit der Gutschein dann auch in der Buchung berücksichtigt wird (falls beim Aufruf von api/OR/PostReservation keine Tarifpositionen übergeben werden, sondern nur die Buchungsparameter, und der Tarif vom Server berechnet wird), muss hier auch der Gutscheincode übergeben werden.


Gekürztes Beispiel:
{
  "OrderData": {
    "UserData": {
      "Ident": "..."
    },
    "RentalObjectData": {
      "Ident": "..."
    },
    "RentData": {
      "BeginnDatum": "21.11.2019",
      "BeginnUhrzeit": "14:00",
      "AbgabeDatum": "21.11.2019",
      "AbgabeUhrzeit": "17:00"
    },
    "OrderDataId": "...",
    "Voucher": "4711"
  }
}


Anschließend wird ein Vorgang angelegt, bei dem für den Gutschein eine Zubehörposition mit negativem Betrag enthalten ist. Bei der Zahlung (z.B. über Stripe) wird der Gutschein natürlich auch berücksichtigt, weil die Gesamtsumme inkl. Gutschein benutzt wird.