Zum Inhalt springen

Gutschein- und Rabattcodes mit der Booking API einlösen

Last verified
Last verified 23. Sept. 2026

Mit dieser Anleitung fügen Sie Ihrem Warenkorb ein Codefeld hinzu. Eine einzige Mutation verarbeitet Gutscheinnummern, Couponcodes und Aktionscodes, sodass Kunden alle im selben Feld eingeben können.

Bevor Sie beginnen

  • Ein Warenkorb und sein Warenkorb-Token. Der Schnellstart für die Booking API zeigt, wie Sie einen anlegen.
  • Ein Code zum Testen, zum Beispiel die Nummer eines Gutscheins mit Restwert.

Code einlösen

Senden Sie den Code genau so, wie der Kunde ihn eingegeben hat, mit dem Warenkorb-Token als id.

graphql
mutation ApplyCode($input: RequestApplyCodeInput!) {
  requestApplyCode(input: $input) {
    request {
      vouchers {
        number
        value
      }
      discounts {
        label
        value
        coupon {
          number
        }
      }
      totalGrossValue
    }
    followUpProducts {
      id
      name
    }
    errors {
      key
      message
      messageTranslated
    }
  }
}
json
{ "input": { "id": "<cart token>", "code": "3278598764" } }
json
{
  "data": {
    "requestApplyCode": {
      "request": {
        "vouchers": [{ "number": "3278598764", "value": { "amount": -1000, "currency": "EUR" } }],
        "discounts": [],
        "totalGrossValue": { "amount": 1000, "currency": "EUR" }
      },
      "followUpProducts": null,
      "errors": null
    }
  }
}

Zeigen Sie das Ergebnis aus dem zurückgegebenen Warenkorb an:

FeldInhalt
vouchersAls Zahlung eingesetzte Gutscheine. value ist negativ, weil er den zu zahlenden Betrag verringert.
discountsRabatte aus Coupons und Aktionen. coupon.number ist der Code, der den Rabatt gewährt hat.
totalVouchersDie Summe aller eingesetzten Gutscheine.
totalDiscountDie Summe aller Rabatte.
totalGrossValueDer Betrag, den der Kunde noch zahlt.

Kann der Code nicht eingelöst werden, bleibt der Warenkorb unverändert und errors nennt den Grund. Zeigen Sie messageTranslated neben dem Codefeld an.

Gutschein gegen einen Artikel einlösen

Manche Gutscheine werden gegen einen bestimmten Artikel eingelöst, zum Beispiel eine Führung. Gibt der Kunde einen solchen Gutschein ein, enthält die Antwort einen Fehler mit dem Schlüssel requestItem und listet in followUpProducts die Artikel auf, gegen die der Gutschein eingelöst werden kann.

Lassen Sie den Kunden einen dieser Artikel wählen und lösen Sie den Code erneut mit dem Artikel als requestItem ein. KORONA Event legt den Artikel in den Warenkorb und löst den Gutschein dafür ein.

json
{
  "input": {
    "id": "<cart token>",
    "code": "3278598764",
    "requestItem": {
      "offerableType": "PRODUCT",
      "offerableId": "<product id>",
      "pricings": [{ "quantity": 1, "priceOriginType": "PRODUCT", "priceOriginId": "<product id>" }]
    }
  }
}

Code entfernen

Entfernen Sie einen Gutschein mit seiner number oder einen Coupon mit seiner coupon.number.

graphql
mutation RemoveCode($input: RequestRemoveCodeInput!) {
  requestRemoveCode(input: $input) {
    request {
      vouchers {
        number
      }
    }
    errors {
      key
      message
      messageTranslated
    }
  }
}
json
{ "input": { "id": "<cart token>", "code": "3278598764" } }

Verwandte Artikel