Zum Inhalt springen

Überblick

  • Version: 2.0.0
  • Server: https://store.xsolla.com/api
  • Kontakt-E-Mail-Adresse
  • Kontakt-URL: https://xsolla.com/
  • Erforderliche TLS-Version: 1.2

Mit der Katalog-API können Sie aufseiten von Xsolla einen Katalog mit Ingame-Items konfigurieren und diesen Katalog den Nutzern in Ihrem Shop anzeigen.

Über die API können Sie die folgenden Katalogentitäten verwalten:

  • Virtuelle Gegenstände – Ingame-Items wie etwa Waffen, Skins, Booster.
  • Virtuelle Währung – Virtuelles Geld für den Kauf von virtuellen Gütern.
  • Virtuelle Währungspakete – vordefinierte Pakete voller virtueller Währung.
  • Bundles – eine Kombination aus virtuellen Gegenständen, Währung oder Spielschlüsseln. Bundles werden als eine einzelne SKU verkauft.
  • Spielschlüssel – Schlüssel für Spiele oder DLCs, die über Plattformen wie Steam oder andere DRM-Anbieter vertrieben werden.
  • Gruppen – logische Gruppierungen, um Artikel im Katalog zu organisieren und zu sortieren.

API-Aufrufe

Die API ist in die folgenden Gruppen unterteilt:

  • Admin – Aufrufe zum Erstellen, Aktualisieren, Löschen und Konfigurieren von Katalogartikeln und ‑gruppen. Die Authentifizierung erfolgt über die Basisauthentifizierung und Ihre Händler- oder Projekt-Anmeldedaten. Diese Aufrufe sind nicht für den Storefront bestimmt.
  • Catalog – Aufrufe zum Abrufen von Artikeln und zum Erstellen benutzerdefinierter Storefronts für Endnutzer. Konzipiert für den Einsatz unter hoher Auslastung. Unterstützt die optionale Nutzer-JWT-Autorisierung und kann personalisierte Daten (z. B. benutzerspezifische Limits und aktive Werbeaktionen) zurückgeben.

Authentifizierung

API-Aufrufe erfordern eine Authentifizierung entweder im Namen eines Nutzers oder im Namen eines Projekts. Das verwendete Authentifizierungsschema ist im Abschnitt Sicherheit – in der Beschreibung des jeweiligen Aufrufs – angegeben.

Authentifizierung mit Benutzer-JWT

Die Authentifizierung mit Benutzer-JWT kommt zum Einsatz, wenn eine Anfrage von einem Browser, einer App oder einem Spiel gesendet wird. Standardmäßig wird das Schema XsollaLoginUserJWT angewendet. Weitere Informationen zum Erstellen eines Tokens finden Sie in der Dokumentation zur Xsolla-Login-API.

Der Token wird im Authorization-Header im folgenden Format übermittelt: Authorization: Bearer <user_JWT>, wobei <user_JWT> der Benutzertoken ist. Der Token dient dazu, den Nutzer zu identifizieren und ihm Zugriff auf personalisierte Daten zu ermöglichen.

HTTP-Basisauthentifizierung

Die HTTP-Basisauthentifizierung wird für Server-zu-Server-Interaktionen verwendet, wenn ein API-Aufruf direkt von Ihrem Server und nicht von einem Browser oder einer App gesendet wird. Typischerweise wird die HTTP-Basisauthentifizierung gemeinsam mit einem API-Schlüssel verwendet.

Hinweis

Der API-Schlüssel ist vertraulich und darf nicht in Client-Anwendungen gespeichert oder verwendet werden.

Bei der serverseitigen Basisauthentifizierung müssen alle API-Anfragen den folgenden Header enthalten:

  • für basicAuth – Authorization: Basic <your_authorization_basic_key>, wobei your_authorization_basic_key das gemäß Base64-Verfahren kodierte project_id:api_key-Paar ist
  • für basicMerchantAuth – Authorization: Basic <your_authorization_basic_key>, wobei your_authorization_basic_key das gemäß Base64-Verfahren kodierte merchant_id:api_key Paar ist

Die Parameterwerte finden Sie im Kundenportal an folgenden Orten:

  • merchant_id wird angezeigt:
    • unter Firmeneinstellungen > Firma.
    • in der URL in der Adressleiste des Browsers auf einer beliebigen Seite im Kundenportal. Die URL hat das folgende Format: https://publisher.xsolla.com/<merchant_id>.
  • project_id wird angezeigt:
    • neben dem Projektnamen im Kundenportal.
    • in der URL in der Adressleiste des Browsers, wenn Sie im Kundenportal ein Projekt geöffnet haben. Die URL hat das folgende Format: https://publisher.xsolla.com/<merchant_id>/projects/<project_id>.
  • api_key wird im Kundenportal nur einmal angezeigt, nämlich dann, wenn er erstellt wird. Sie sind selbst dafür verantwortlich, den Schlüssel in Ihrem System zu speichern. Einen API-Schlüssel können Sie an den folgenden Orten erstellen:
Hinweis

Falls bei einem erforderlichen API-Aufruf der Pfadparameter project_id fehlt, müssen Sie einen API-Schlüssel verwenden, der für alle Projekte der Firma gültig ist.

Weitere Informationen zur Arbeit mit API-Schlüsseln finden Sie in den API-Referenzen.

Authentifizierung mit Unterstützung für Gastzugang

Das Authentifizierungsschema AuthForCart wird für Warenkorbkäufe verwendet und unterstützt zwei Modi:

  1. Authentifizierung mit einem Benutzer-JWT. Der Token wird im Authorization-Header im folgenden Format übermittelt: Authorization: Bearer <user_JWT>, wobei <user_JWT> der Benutzertoken ist. Der Token dient dazu, den Nutzer zu identifizieren und ihm Zugriff auf personalisierte Daten zu ermöglichen. Alternativ können Sie einen Token zum Öffnen des Zahlungsportals verwenden.

  2. Vereinfachter Modus ohne Autorisierungs-Header. Dieser Modus ist nur für nicht autorisierte Nutzer vorgesehen und kann lediglich für den Verkauf von Spielschlüsseln genutzt werden. Anstelle eines Tokens muss die Anfrage die folgenden Header enthalten:

    • x-unauthorized-id samt Anfrage-ID
    • x-user samt der E-Mail-Adresse des Nutzers, kodiert in Base64

Grundstruktur der Entität

Alle Artikeltypen (virtuelle Gegenstände, Bundles, virtuelle Währung und Schlüssel) haben eine ähnliche Datenstruktur. Kenntnisse über die Grundstruktur vereinfachen die Arbeit mit der API und erleichtern das Navigieren in der Dokumentation.

Hinweis

Einige Aufrufe können zusätzliche Felder enthalten, doch diese ändern nichts an der Grundstruktur.

Identifikation

  • merchant_id – Firmen-ID im Kundenportal
  • project_id – Projekt-ID im Kundenportal
  • sku – Artikel-SKU, einzigartig innerhalb des Projekts

Shop-Anzeige

  • name – Artikelname
  • description – Artikelbeschreibung
  • image_url – Bild-URL
  • is_enabled – Artikelverfügbarkeit
  • is_show_in_store – ob der Artikel im Katalog angezeigt wird

Weitere Informationen zur Verwaltung der Artikelverfügbarkeit im Katalog finden Sie in der Dokumentation.

Organisation

  • type – Artikeltyp, zum Beispiel ein virtueller Gegenstand (virtual_item) oder Bundle (bundle)
  • groups – Gruppen, zu denen der Artikel gehört
  • order – Anzeigereihenfolge im Katalog

Verkaufsbedingungen

  • prices – Preise in echter oder virtueller Währung
  • limits – Kauflimits
  • periods – Verfügbarkeitszeiträume
  • regions – regionale Beschränkungen

Grundstruktur einer Entität (Beispiel):

{
  "attributes": [],
  "bundle_type": "virtual_currency_package",
  "content": [
    {
      "description": {
        "en": "Main in-game currency"
      },
      "image_url": "https://.../image.png",
      "name": {
        "en": "Crystals",
        "de": "Kristalle"
      },
      "quantity": 500,
      "sku": "com.xsolla.crystal_2",
      "type": "virtual_currency"
    }
  ],
  "description": {
    "en": "Crystals x500"
  },
  "groups": [],
  "image_url": "https://.../image.png",
  "is_enabled": true,
  "is_free": false,
  "is_show_in_store": true,
  "limits": {
    "per_item": null,
    "per_user": null,
    "recurrent_schedule": null
  },
  "long_description": null,
  "media_list": [],
  "name": {
    "en": "Medium crystal pack"
  },
  "order": 1,
  "periods": [
    {
      "date_from": null,
      "date_until": "2020-08-11T20:00:00+03:00"
    }
  ],
  "prices": [
    {
      "amount": 20,
      "country_iso": "US",
      "currency": "USD",
      "is_default": true,
      "is_enabled": true
    }
  ],
  "regions": [],
  "sku": "com.xsolla.crystal_pack_2",
  "type": "bundle",
  "vc_prices": []
}

Grundlegender Kaufablauf

Über die Xsolla-API lässt sich die Logik für einen Ingame-Shop implementieren, darunter das Abrufen des Artikelkatalogs, die Verwaltung des Warenkorbs, das Anlegen von Bestellungen und die Verfolgung des Bestellstatus. Je nach Integrationsszenario sind die API-Aufrufe in die Unterbereiche Verwaltung und Katalog unterteilt, die unterschiedliche Authentifizierungsschemen verwenden.

Das folgende Beispiel zeigt den grundlegenden Ablauf für die Einrichtung und den Betrieb eines Shops, von der Artikelerstellung bis zum Kauf.

Artikel und Gruppen erstellen (Verwaltung)

Erstellen Sie für Ihren Shop einen Katalog mit Artikeln wie etwa virtuellen Gegenständen, Bundles oder virtueller Währung.

API-Aufrufe (Beispiele):

Werbeaktionen, Ketten und Limits einrichten (Verwaltung)

Konfigurieren Sie Tools für die Nutzergewinnung und Monetarisierung, wie etwa Rabatte, Boni, tägliche Belohnungen oder Angebotsketten.

API-Aufrufe (Beispiele):

Artikelinformationen abrufen (Client)

Konfigurieren Sie, wie Artikel in Ihrer Anwendung angezeigt werden sollen.

Hinweis

Verwenden Sie keine API-Aufrufe aus dem Unterabschnitt "Verwaltung", um einen Nutzerkatalog zu erstellen. Diese API-Aufrufe unterliegen Ratenbegrenzungen und sind nicht für Nutzer-Traffic vorgesehen.

API-Aufrufe (Beispiele):

Hinweis

Standardmäßig geben katalogbezogene API-Aufrufe Artikel zurück, die zum Zeitpunkt der Anfrage im Shop verfügbar sind. Um Artikel abzurufen, die noch nicht verfügbar oder nicht mehr verfügbar sind, müssen Sie den Parameter "show_inactive_time_limited_items": 1 in der Kataloganfrage ergänzen.

Artikel verkaufen

Artikel können Sie mit den folgenden Methoden verkaufen:

  • Schnellkauf – Verkauf einer einzelnen SKU in beliebiger Menge.
  • Warenkorbkauf – der Nutzer kann im Rahmen einer Bestellung Artikel in den Warenkorb legen, Artikel aus dem Warenkorb entfernen und die Menge jedes einzelnen Artikels ändern.

Wird ein Artikel mit virtueller Währung anstelle von echtem Geld gekauft, müssen Sie den API-Aufruf Bestellung mit einem angegebenen, in virtueller Währung gekauften Artikel anlegen verwenden. Das Zahlungsportal muss nicht aufgerufen werden, da die Zahlungsabwicklung bei Ausführung des API-Aufrufs erfolgt.

Beim Kauf eines kostenlosen Artikels müssen Sie den API-Aufruf Bestellung mit angegebenem kostenlosen Artikel anlegen oder den API-Aufruf Bestellung mit einem kostenlosen Warenkorb anlegen verwenden. as Zahlungsportal muss nicht aufgerufen werden – der Bestellung wird sofort der Status done zugewiesen.

Schnellkauf

Verwenden Sie den clientseitigen API-Aufruf, um eine Bestellung mit einem angegebenen Artikel anzulegen. Der Aufruf gibt einen Token zurück, mit dem sich das Zahlungsportal öffnen lässt.

Hinweis

Rabattinformationen sind für den Nutzer nur im Zahlungsportal verfügbar. Promocodes werden nicht unterstützt.

Warenkorbkauf

Die Einrichtung des Warenkorbs und der Kaufvorgang können sowohl client- als auch serverseitg erfolgen.

Warenkorb clientseitig einrichten und Artikel kaufen

Implementieren Sie die Logik für das Hinzufügen und Entfernen von Artikeln selbst. Bevor Sie die API zum Einrichten eines Warenkorbs aufrufen, liegen Ihnen keine Informationen darüber vor, welche Werbeaktionen auf den Kauf angewendet werden. Die Gesamtkosten und die Details der hinzugefügten Bonusartikel sind Ihnen also unbekannt.

Implementieren Sie die folgende Warenkorblogik:

  1. Verwenden Sie den API-Aufruf Artikel in den Warenkorb legen, nachdem der Spieler einen Warenkorb zusammengestellt hat. Der Aufruf gibt die aktuellen Informationen zu den ausgewählten Artikeln zurück (Preise mit und ohne Rabatt, Bonusartikel).
  2. Aktualisieren Sie den Warenkorbinhalt basierend auf den Aktionen des Nutzers:
Hinweis

Mit dem API-Aufruf "Warenkorb des aktuellen Benutzers abrufen" können Sie den aktuellen Status des Warenkorbs abrufen.
  1. Verwenden Sie den API-Aufruf Bestellung mit allen Artikeln aus dem aktuellen Warenkorb anlegen. Der Aufruf gibt die Bestell-ID und den Zahlungstoken zurück. Der neu angelegten Bestellung wird standardmäßig der Status new zugewiesen.

Warenkorb serverseitig einrichten und Artikel kaufen

Diese Einrichtungsoption kann länger dauern, da jede Änderung am Warenkorb durch API-Aufrufe vorgenommen werden muss.

Implementieren Sie die folgende Warenkorblogik:

  1. Verwenden Sie den API-Aufruf Artikel in den Warenkorb legen, nachdem der Spieler einen Warenkorb zusammengestellt hat. Der Aufruf gibt die aktuellen Informationen zu den ausgewählten Artikeln zurück (Preise mit und ohne Rabatt, Bonusartikel).
  2. Verwenden Sie den API-Aufruf Bestellung mit allen Artikeln aus dem aktuellen Warenkorb anlegen. Der Aufruf gibt die Bestell-ID und den Zahlungstoken zurück. Der neu angelegten Bestellung wird standardmäßig der Status new zugewiesen.

Zahlungsportal öffnen

Verwenden Sie den zurückgegebenen Token, um das Zahlungsportal in einem neuen Fenster zu öffnen. Weitere Möglichkeiten, das Zahlungsportal zu öffnen, sind in der Dokumentation beschrieben.

AktionEndpunkt
In der Produktionsumgebung öffnen.https://secure.xsolla.com/paystation4/?token={token}
In der Testumgebung öffnen.https://sandbox-secure.xsolla.com/paystation4/?token={token}
Hinweis

Nutzen Sie die Testumgebung während der Entwicklung und zum Testen. Es stehenn Test-Bankkarten bereit. Bei Testkäufen wird kein Geld von echten Konten abgebucht.

Sobald die erste tatsächliche Zahlung erfolgt ist, tritt eine strenge Zahlungsrichtlinie für die Testumgebung in Kraft: Ab dann dürfen nur noch die unter Kundenportal > Firmeneinstellungen > Nutzer angegebenen Nutzer ein Zahlung in der Testumgebung tätigen .

Der Kauf von virtueller Währung und Gegenständen gegen echtes Geld ist erst nach Unterzeichnung einer Lizenzvereinbarung möglich. Navigieren Sie dazu im Kundenportal zu Vereinbarungen und Steuern > Vereinbarungen, füllen Sie das Formular aus, und warten Sie auf die Bestätigung. Die Prüfung kann bis zu drei Werktage dauern.

Die Testumgebung können Sie aktivieren oder deaktivieren. Ändern Sie dazu einfach den Wert des Parameters sandbox in der Schnellkauf- bzw. Warenkorbkauf-Anfrage. Die Testumgebung ist standardmäßig deaktiviert.

Mögliche Bestellstatus:

  • new – Bestellung angelegt
  • paid – Zahlung erhalten
  • done – Artikel geliefert
  • canceled – Bestellung storniert
  • expired – Bestellung abgelaufen

Tracken Sie den Bestellstatus mit einer der folgenden Methoden:

Paginierung

API-Aufrufe, die umfangreiche Datensätze zurückgeben (beispielsweise beim Erstellen eines Katalogs), liefern Daten seitenweise. Die Paginierung ist ein Mechanismus, der die Anzahl der in einer einzelnen API-Antwort zurückgegebenen Elemente begrenzt und es ermöglicht, aufeinanderfolgende Seiten der Reihe nach abzurufen.

Mithilfe der folgenden Parameter können Sie die Anzahl der zurückgegebenen Elemente steuern:

  • limit – Anzahl der Elemente pro Seite
  • offset – Index des ersten Elements auf der Seite (Nummerierung beginnt bei 0)
  • has_more – gibt an, ob eine weitere Seite verfügbar ist
  • total_items_count – Gesamtanzahl der Elemente

Beispielanfrage:

GET /items?limit=20&offset=40

Beispielantwort:

{
  "items": [...],
  "has_more": true,
  "total_items_count": 135
}

Es wird empfohlen, nachfolgende Anfragen zu senden, bis die Antwort has_more = false zurückgibt.

Datums- und Zeitformat

Datums- und Zeitwerte werden im ISO 8601-Format übermittelt.

Folgende Formate werden unterstützt:

  • UTC-Offset
  • null-Wert, wenn keine zeitliche Einschränkung für die Anzeige eines Artikels besteht
  • Unix-Zeitstempel (in Sekunden), der in einigen Feldern verwendet wird

Format: YYYY-MM-DDTHH:MM:SS±HH:MM

Beispiel: 2026-03-16T10:00:00+03:00

Lokalisierung

Xsolla unterstützt die Lokalisierung von benutzerseitigen Feldern wie Artikelname und Beschreibung. Lokalisierte Werte werden als Objekt übermittelt, wobei der Sprachcode als Schlüssel verwendet wird. Die vollständige Liste der unterstützten Sprachen ist in der Dokumentation verfügbar.

Unterstützte Felder

Für die folgenden Parameter kann eine Lokalisierung festgelegt werden:

  • name
  • description
  • long_description

Gebietsschemaformat

Der Gebietsschemaschlüssel kann in einem der folgenden Formate angegeben werden:

  • Sprachencode bestehend aus zwei Buchstaben: en, ru
  • Sprachencode bestehend aus fünf Buchstaben: en-US, ru-RU, de-DE

Beispiele

Zweistelliger Sprachencode (Beispiel):

{
  "name": {
    "en": "Starter Pack",
    "ru": "Стартовый набор"
  }
}

Fünfstelliger Sprachencode (Beispiel):

{
  "description": {
    "en-US": "Premium bundle",
    "de-DE": "Premium-Paket"
  }
}

Fehlerantwortformat

Wenn ein Fehler auftritt, gibt die API einen HTTP-Statuscode und einen JSON-Antwortrumpf zurück. Die vollständige Liste der shopbezogenen Fehler ist in der Dokumentation verfügbar.

Antwort (Beispiel):

{
  "errorCode": 1102,
  "errorMessage": "Validation error",
  "statusCode": 422,
  "transactionId": "c9e1a..."
}
  • errorCode – Fehlercode.
  • errorMessage – kurze Fehlerbeschreibung.
  • statusCode – HTTP-Antwortstatus.
  • transactionId – Anfrage-ID. Wird nur in einigen Fällen zurückgegeben.
  • errorMessageExtended – zusätzliche Fehlerdetails, wie z. B. Anfrageparameter. Wird nur in einigen Fällen zurückgegeben.

Erweiterte Antwort (Beispiel):

{
  "errorCode": 7001,
  "errorMessage": "Chain not found",
  "errorMessageExtended": {
    "chain_id": "test_chain_id",
    "project_id": "test_project_id",
    "step_number": 2
  },
  "statusCode": 404
}

Gängige HTTP-Statuscodes

  • 400 – ungültige Anfrage
  • 401 – Authentifizierungsfehler
  • 403 – mangelnde Berechtigungen
  • 404 – Ressource nicht gefunden
  • 422 – Validierungsfehler
  • 429 – Ratenlimit überschritten

Empfehlungen

  • Verarbeiten Sie den HTTP-Statuscode und den Antwortrumpf gemeinsam.
  • Verwenden Sie errorCode, um Fehler im Zusammenhang mit der Anwendungslogik zu verarbeiten.
  • Verwenden Sie transactionId, um Anfragen bei der Fehleranalyse schneller zu identifizieren.
OpenAPI-Beschreibung herunterladen
Sprachen
Server
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/de/api/catalog/

Übersicht

Sie können einen Ingame-Shop mit virtuellen Gegenständen und virtueller Währung einrichten und festlegen, wie dieser Shop den Nutzern angezeigt wird. Folgende Artikeltypen stehen zur Verfügung:

  • virtuelle Gegenstände – Ingame-Items wie Waffen, Skins oder Booster. Können gegen echtes Geld oder virtuelle Währung verkauft werden.
  • virtuelle Währung – Ingame-Währung für den Kauf virtueller Gegenstände. Kann gegen echtes Geld oder virtuelle Währung verkauft werden.
  • virtuelle Währungspakete – eine festgelegte Menge virtueller Währung. Können gegen echtes Geld oder virtuelle Währung verkauft werden.

Gruppen dienen dazu, Artikel im Katalog zu organisieren, logisch zu gruppieren und zu steuern, wie Artikel angezeigt werden.

Mit API-Aufrufen aus dem Unterabschnitt Verwaltung können Sie Artikel erstellen, aktualisieren und löschen.

Mit API-Aufrufen aus dem Unterabschnitt Katalog können Sie Artikellisten abrufen und sie den Nutzern anzeigen.

Hinweis

Verwenden Sie keine API-Aufrufe aus dem Unterabschnitt Verwaltung,0 um einen Shopkatalog zu erstellen.

Hinweis

Der API-Aufruf Liste virtueller Gegenstände abrufen gibt detaillierte Artikeldaten zurück (einschließlich Preise und Attribute) und unterstützt Paginierung. Mit dem Aufruf können Sie Katalogseiten im Storefront anzeigen.

Der API-Aufruf Liste aller virtuellen Gegenstände abrufen gibt Artikel-SKU, Namen, Beschreibung sowie Gruppen-ID und Namen ohne Paginierung zurück. Verwenden Sie den Aufruf für die clientseitige Suche oder Indexierung.

Wird ein Artikel mit virtueller Währung gekauft, müssen Sie den API-Aufruf Bestellung mit einem angegebenen, in virtueller Währung gekauften Artikel anlegen verwenden. Das Zahlungsportal muss nicht aufgerufen werden – die Zahlungsabwicklung erfolgt bei Ausführung des API-Aufrufs.

Kaufvorgang mit virtueller Währung (Beispiel):

Kaufvorgang mit virtueller Währung (Beispiel)

Operationen
Operationen
Operationen

Übersicht

Game keys are single-use unique alphanumeric codes that grant users access to a game or DLC on gaming platforms. You can sell game keys via a direct link, through the store UI, or via a widget. You can also configure regional restrictions to sell game keys in specific countries. For detailed information, refer to the Game keys packages section.

User authentication is not required to sell game keys — the keys are sent to the email the user specified at checkout. You can configure authentication to enable additional scenarios: personalization, purchase limits, or an entitlement system. For detailed information, refer to the How to set up authentication when selling game keys section.

Game key sales flow:

  1. Create a game using the Create game API call.
  2. Configure regional restrictions.
  3. Upload keys to a game key package using the Upload codes API call to make them available for purchase.
  4. Display the game catalog with prices for the user's region using the Get games list API call.
  5. Create an order. For a fast purchase, you can use the Create order with all items from current cart API call, passing the game key SKU. The response returns a token for opening the payment UI.
  6. Implement the opening of the payment UI to pay for the order.

To receive timely notifications about successful payments and deliver items to the user, set up order status tracking, for example, using webhooks. The keys are sent to the email the user specified at checkout, and the order moves to the done status.

Game keys

Operationen
Operationen
Operationen

Übersicht

Bundles are sets of items sold as a single unit. A bundle can include virtual items, virtual currency, virtual currency packages, game keys, and other bundles. Use bundles to create starter packs, seasonal offers, and special deals.

Use the following API call groups to work with bundles:

  • Use API calls from the Admin subsection to create, update, delete bundles, and manage their visibility.
  • Use API calls from the Catalog subsection to retrieve bundles.

Purchase limits are configured via the limits object when creating or updating a bundle. For more information, refer to the Limits overview. You can also configure regional restrictions to sell items in specific countries.

Note

For detailed information on configuring bundles, refer to the Bundles section.

Bundle management scenario:

  1. Create a bundle using the Create bundle API call. To verify the created bundle, use the Get bundle API call. To retrieve all bundles in the project, use the Get list of bundles API call.
  2. If needed, use the Update bundle API call to modify the bundle content or settings.
  3. Implement bundle display logic in your storefront using the Get list of bundles, Get specified bundle, or Get list of bundles by specified group API call.
  4. Create an order using the Cart and payment section. For example, for a fast purchase you can use the Create order with specified item API call, passing the bundle SKU. The response contains a token for opening the payment UI.
  5. Implement opening the payment UI to pay for the order.
  6. Set up order status tracking, for example using webhooks, to promptly receive data on successfully paid items and grant them to the user.

Bundle management scenario

Operationen
Operationen

Liste der Bundles abrufenClient-side

Anfrage

Ruft eine Liste von Bundles ab, um einen Katalog zu erstellen.

Achtung

Bei allen Projekten ist die Anzahl der Artikel begrenzt, die Sie in der Antwort erhalten können. Der Standard- und Höchstwert beträgt 50 Artikel pro Antwort. Um pro Seite mehr Daten zu erhalten, verwenden Sie die Felder limit und offset.

Hinweis

Dieser API-Aufruf gibt generische Katalogdaten zurück, wenn er ohne Autorisierung verwendet wird. Verwenden Sie die Autorisierung, um personalisierte Nutzerdaten abzurufen, wie z. B. mit dem Artikel verknüpfte Limits und Werbeaktionen. Dazu müssen Sie den Benutzer-JWT im Authorization-Header übermitteln. Weitere Informationen zum Benutzer-JWT finden Sie im Block Sicherheit für diesen Aufruf.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt sowie in der Adressleiste des Browsers, wenn Sie im Kundenportal ein Projekt geöffnet haben. Die URL hat das folgende Format: https://publisher.xsolla.com/<merchant_id>/projects/<project_id>.

Beispiel: 44056
Abfrage
limitinteger>= 1

Begrenzung der Elementanzahl auf der Seite.

Beispiel: limit=50
offsetinteger>= 0

Elementnummer, aus der die Liste generiert wird (die Zählung beginnt bei 0).

Beispiel: offset=0
localestring

Antwortsprache. Sprachencode bestehend aus zwei Kleinbuchstaben gemäß ISO 639-1 (zum Beispiel en). Fünfstellige Gebietsschemacodes (zum Beispiel en-US) werden in Lokalisierungsfeldern wie name und description unterstützt, jedoch in den Antworten in zweistellige Codes umgewandelt. Die vollständige Liste der unterstützten Sprachen finden Sie in der Dokumentation.

Standard "en"
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

Zweistelliger Ländercode in Großbuchstaben gemäß ISO 3166-1 Alpha-2. Weitere Informationen zu den von Xsolla unterstützten Ländern und dazu, wie das Land ermittelt wird, finden Sie in der Dokumentation.

Beispiel: country=US
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/bundle?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Die Liste der Bundles wurde erfolgreich empfangen.

Bodyapplication/json
has_moreboolean

Dient als Indikator dafür, dass weitere Seiten vorhanden sind.

itemsArray of objects
items[].​item_idinteger[ 1 .. 255 ] characters

Interne eindeutige Artikel-ID.

items[].​skustring[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

items[].​namestring

Artikelname.

items[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

items[].​groups[].​external_idstring

Eindeutige Kennung für die Gruppe. Dient normalerweise dazu, in API-Anfragen oder externen Systemen auf die Gruppe zu verweisen.

Beispiel: "exclusive"
items[].​groups[].​namestring

Name der Gruppe.

Beispiel: "Exclusive"
items[].​groups[].​item_order_in_groupinteger

Die Position des Artikels innerhalb der Gruppe. Dient dazu, die Anzeigereihenfolge festzulegen. Dieses Feld ist nur dann in der Antwort enthalten, wenn es über den Abfrageparameter additional_fields[] angefordert wird.

Beispiel: 1
items[].​descriptionstring or null

Artikelbeschreibung.

items[].​long_description(object or null)

Objekt mit Lokalisierungen für lange Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Varianten angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der Dokumentation.

Any of:

Sprachencodes bestehend aus zwei Kleinbuchstaben.

items[].​long_description.​enstring or null

Englisch

items[].​long_description.​arstring or null

Arabisch

items[].​long_description.​bgstring or null

Bulgarisch

items[].​long_description.​cnstring or null

Chinesisch (vereinfacht)

items[].​long_description.​csstring or null

Tschechisch

items[].​long_description.​destring or null

Deutsch

items[].​long_description.​esstring or null

Spanisch (Spanien)

items[].​long_description.​frstring or null

Französisch

items[].​long_description.​hestring or null

Hebräisch

items[].​long_description.​itstring or null

Italienisch

items[].​long_description.​jastring or null

Japanisch

items[].​long_description.​kostring or null

Koreanisch

items[].​long_description.​plstring or null

Polnisch

items[].​long_description.​ptstring or null

Portugiesisch

items[].​long_description.​rostring or null

Rumänisch

items[].​long_description.​rustring or null

Russisch

items[].​long_description.​thstring or null

Thai

items[].​long_description.​trstring or null

Türkisch

items[].​long_description.​twstring or null

Chinesisch (traditionell)

items[].​long_description.​vistring or null

Vietnamesisch

items[].​long_description.​kmstring or null

Khmer

items[].​long_description.​idstring or null

Indonesisch

items[].​long_description.​lostring or null

Laotisch

items[].​long_description.​mystring or null

Birmanisch

items[].​long_description.​phstring or null

Filipino

items[].​long_description.​nestring or null

Nepalesisch

items[].​attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

items[].​attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

items[].​attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
items[].​attributes[].​valuesArray of objects
items[].​attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

items[].​attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
items[].​typestring

Artikeltyp.

items[].​bundle_typestring

Bundle-Typ. Durch Angabe von standard erstellen Sie ein Bundle mit Artikeln, wobei die SKUs der im Bundle enthaltenen Artikel anzugeben ist. Durch Angabe von partner_side_content wird ein leeres Bundle erstellt, wobei die Artikel über einen Webhook hinzuzufügen sind. Dieser Typ wird nur für die Katalogpersonalisierung aufseiten des Partners verwendet.

Enum"standard""partner_side_content"
items[].​image_urlstring or null

Bild-URL. Damit das Bild im Zahlungsportal korrekt angezeigt und schnell geladen wird, beachten Sie bitte unsere Richtlinien für Bilder und URLs:

  • Unterstützte Formate: WebP (empfohlen), PNG, JPG.
  • Dateigröße: ≤ 50 kB (für WebP) oder ≤ 150 kB (für PNG und JPG).
  • Bildgröße: 280 x 280 px.
  • Farbraum: sRGB.
  • Protokoll: HTTPS mit langlebigem Caching für versionierte URLs.

items[].​is_freeboolean

Ob der Artikel kostenlos ist.

items[].​priceobject or null

Artikelpreis.

items[].​price.​amountstring^\d*\.?\d*$erforderlich

Artikelpreis mit Rabatt.

items[].​price.​amount_without_discountstring^\d*\.?\d*$erforderlich

Artikelpreis.

items[].​price.​currencystringerforderlich

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

items[].​total_content_priceobject or null

Preissumme der einzelnen Bundle-Inhalte.

items[].​total_content_price.​amountstring

Rabattierte Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
items[].​total_content_price.​amount_without_discountstring

Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
items[].​total_content_price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

items[].​virtual_pricesArray of objects

Virtuelle Preise.

items[].​virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
items[].​virtual_prices[].​amount_without_discountinteger

Artikelpreis in virtueller Währung.

Beispiel: 200
items[].​virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "gold"
items[].​virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
items[].​virtual_prices[].​image_urlstring or null

Bild der virtuellen Währung.

Beispiel: "http://image.png"
items[].​virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "Gold"
items[].​virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
items[].​virtual_prices[].​descriptionstring or null

Virtual currency description.

Beispiel: "Most popular gold"
items[].​can_be_boughtboolean

Sofern true, kann der Nutzer einen Artikel kaufen.

items[].​contentArray of objects

Bundle-/Paketinhalt.

items[].​content[].​skustring

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

Beispiel: "com.xsolla.big_rocket_1"
items[].​content[].​namestring

Artikelname.

Beispiel: "Big Rocket"
items[].​content[].​typestring

Artikeltyp: virtual_good/virtual_currency/bundle.

Beispiel: "virtual_currency"
items[].​content[].​descriptionstring

Artikelbeschreibung.

Beispiel: "Big Rocket - description"
items[].​content[].​image_urlstring

Bild-URL.

Beispiel: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
items[].​content[].​quantityinteger

Artikelmenge in einem Paket.

Beispiel: 250
items[].​content[].​virtual_item_typestring

Art des virtuellen Gegenstands.

Mögliche Werte:

  • consumable – ein Gegenstand, der nach dem Gebrauch aus dem Inventar verschwindet (z. B. Munition).
  • non_consumable – ein Gegenstand, der unbegrenzt lange im Inventar verbleibt.
  • non_renewing_subscription – ein zeitlich begrenzter Artikel, der den Zugang zu Services oder Inhalten für einen begrenzten Zeitraum gewährt.
Enum"consumable""non_consumable""non_renewing_subscription"
Beispiel: "non-consumable"
items[].​content[].​attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

items[].​content[].​attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

items[].​content[].​attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
items[].​content[].​attributes[].​valuesArray of objects
items[].​content[].​attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

items[].​content[].​attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
items[].​content[].​priceobject or null

Artikelpreise.

items[].​content[].​price.​amountstring

Artikelpreis mit Rabatt.

Beispiel: "100.99"
items[].​content[].​price.​amount_without_discountstring

Artikelpreis.

Beispiel: "100.99"
items[].​content[].​price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217. Detaillierte Informationen zu Von Xsolla unterstützte Währungen.

Beispiel: "USD"
items[].​content[].​virtual_pricesArray of objects

Virtuelle Preise.

items[].​content[].​virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
items[].​content[].​virtual_prices[].​amount_without_discountinteger

Artikelpreis.

Beispiel: 200
items[].​content[].​virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "vc_test"
items[].​content[].​virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
items[].​content[].​virtual_prices[].​image_urlstring

Bild der virtuellen Währung.

Beispiel: "http://image.png"
items[].​content[].​virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "SHOTGUN FOR TRUE RAIDERS"
items[].​content[].​virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
items[].​content[].​virtual_prices[].​descriptionstring

Virtual currency description.

Beispiel: "Big Rocket - description"
items[].​content[].​limitsobject or null

Artikelbeschränkungen.

items[].​content[].​limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

items[].​content[].​limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
items[].​content[].​limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
items[].​content[].​limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
items[].​content[].​limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
items[].​content[].​limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

items[].​content[].​limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
items[].​content[].​limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
items[].​content[].​is_freeboolean

Ob der Artikel kostenlos ist.

items[].​content[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

items[].​content[].​groups[].​external_idstring
Beispiel: "horror"
items[].​content[].​groups[].​nameobject

Name des Artikels. Sollte Schlüssel-Wert-Paare enthalten, wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}" und der Wert ein String ist.

Standard {"en":"Horror"}
Beispiel: {"en":"Horror","de":"Horror"}
items[].​content[].​groups[].​name.​property name*stringzusätzliche Eigenschaft
items[].​promotionsArray of objects

Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array wird in den folgenden Fällen zurückgegeben:

  • Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.

  • Ein Promocode mit der Einstellung Rabatt auf ausgewählte Artikel ist angewandt.

Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres Array zurückgegeben.

items[].​promotions[].​namestring
items[].​promotions[].​date_startstring or null(date-time)
items[].​promotions[].​date_endstring or null(date-time)
items[].​promotions[].​discountobject or null
items[].​promotions[].​discount.​percentstring or null
items[].​promotions[].​discount.​valuestring or null
items[].​promotions[].​bonusArray of objects
items[].​promotions[].​bonus[].​skustring
items[].​promotions[].​bonus[].​quantityinteger
items[].​promotions[].​bonus[].​typestring

Typ des Bonusartikels.

Enum"virtual_good""virtual_currency""bundle""physical_good""game_key""nft"
items[].​promotions[].​bonus[].​namestring

Name des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

items[].​promotions[].​bonus[].​image_urlstring

Bild-URL des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

items[].​promotions[].​bonus[].​bundle_typestring

Typ des im Bundle enthaltenen Bonusartikels. Nur verfügbar für Bonusartikel vom Typ bundle.

Enum"standard""virtual_currency_package"
items[].​promotions[].​limitsobject
items[].​promotions[].​limits.​per_userobject
items[].​promotions[].​limits.​per_user.​availableinteger
items[].​promotions[].​limits.​per_user.​totalinteger
items[].​limitsobject or null

Artikelbeschränkungen.

items[].​limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

items[].​limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
items[].​limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
items[].​limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
items[].​limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
items[].​limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

items[].​limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
items[].​limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
items[].​periodsArray of objects or null

Artikelangebotszeitraum.

items[].​periods[].​date_fromstring(date-time)

Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.

Beispiel: "2020-08-11T10:00:00+03:00"
items[].​periods[].​date_untilstring or null(date-time)

Datum, an dem der angegebene Artikel nicht mehr zum Verkauf angeboten wird. Möglich ist: null.

Beispiel: "2020-08-11T20:00:00+03:00"
items[].​custom_attributesobject(json)

Ein JSON-Objekt mit Artikelattributen und ‑werten.

items[].​vp_rewardsArray of objects

Wertpunktartikel-Belohnung.

items[].​vp_rewards[].​item_idinteger

Interne eindeutige Artikel-ID.

items[].​vp_rewards[].​skustring

Eindeutige ID des Wertpunkts.

items[].​vp_rewards[].​amountinteger

Anzahl der Wertpunkte.

items[].​vp_rewards[].​namestring

Wertpunktname.

items[].​vp_rewards[].​image_urlstring

Bild-URL.

items[].​vp_rewards[].​is_clanboolean

Ob der Wertpunkt in Clan-Belohnungsketten verwendet wird.

items[].​orderinteger

Priorität der Bundle-Reihenfolge in der Liste.

items[].​media_listArray of objects

Zusätzliche Medieninhalte des Bundles.

items[].​media_list[].​typestring

Medieninhaltstyp: image/video.

Enum"image""video"
Beispiel: "image"
items[].​media_list[].​urlstring

Ressourcendatei.

Beispiel: "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"
Antwort
application/json
{ "has_more": true, "items": [ {} ] }

Angegebenes Bundle abrufenClient-side

Anfrage

Ruft ein angegebenes Bundle ab.

Hinweis

Dieser API-Aufruf gibt generische Katalogdaten zurück, wenn er ohne Autorisierung verwendet wird. Verwenden Sie die Autorisierung, um personalisierte Nutzerdaten abzurufen, wie z. B. mit dem Artikel verknüpfte Limits und Werbeaktionen. Dazu müssen Sie den Benutzer-JWT im Authorization-Header übermitteln. Weitere Informationen zum Benutzer-JWT finden Sie im Block Sicherheit für diesen Aufruf.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt sowie in der Adressleiste des Browsers, wenn Sie im Kundenportal ein Projekt geöffnet haben. Die URL hat das folgende Format: https://publisher.xsolla.com/<merchant_id>/projects/<project_id>.

Beispiel: 44056
skustringerforderlich

Bundle-SKU.

Beispiel: kg_1
Abfrage
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/bundle/sku/kg_1?promo_code=WINTER2021&show_inactive_time_limited_items=1&additional_fields%5B%5D=media_list' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Das angegebene Bundle wurde erfolgreich empfangen.

Bodyapplication/json
item_idinteger[ 1 .. 255 ] characters

Interne eindeutige Artikel-ID.

skustring[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

namestring

Artikelname.

groupsArray of objects

Gruppen, zu denen der Artikel gehört.

groups[].​external_idstring

Eindeutige Kennung für die Gruppe. Dient normalerweise dazu, in API-Anfragen oder externen Systemen auf die Gruppe zu verweisen.

Beispiel: "exclusive"
groups[].​namestring

Name der Gruppe.

Beispiel: "Exclusive"
groups[].​item_order_in_groupinteger

Die Position des Artikels innerhalb der Gruppe. Dient dazu, die Anzeigereihenfolge festzulegen. Dieses Feld ist nur dann in der Antwort enthalten, wenn es über den Abfrageparameter additional_fields[] angefordert wird.

Beispiel: 1
descriptionstring or null

Artikelbeschreibung.

long_description(object or null)

Objekt mit Lokalisierungen für lange Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Varianten angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der Dokumentation.

Any of:

Sprachencodes bestehend aus zwei Kleinbuchstaben.

long_description.​enstring or null

Englisch

long_description.​arstring or null

Arabisch

long_description.​bgstring or null

Bulgarisch

long_description.​cnstring or null

Chinesisch (vereinfacht)

long_description.​csstring or null

Tschechisch

long_description.​destring or null

Deutsch

long_description.​esstring or null

Spanisch (Spanien)

long_description.​frstring or null

Französisch

long_description.​hestring or null

Hebräisch

long_description.​itstring or null

Italienisch

long_description.​jastring or null

Japanisch

long_description.​kostring or null

Koreanisch

long_description.​plstring or null

Polnisch

long_description.​ptstring or null

Portugiesisch

long_description.​rostring or null

Rumänisch

long_description.​rustring or null

Russisch

long_description.​thstring or null

Thai

long_description.​trstring or null

Türkisch

long_description.​twstring or null

Chinesisch (traditionell)

long_description.​vistring or null

Vietnamesisch

long_description.​kmstring or null

Khmer

long_description.​idstring or null

Indonesisch

long_description.​lostring or null

Laotisch

long_description.​mystring or null

Birmanisch

long_description.​phstring or null

Filipino

long_description.​nestring or null

Nepalesisch

attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
attributes[].​valuesArray of objects
attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
typestring

Artikeltyp.

bundle_typestring

Bundle-Typ. Durch Angabe von standard erstellen Sie ein Bundle mit Artikeln, wobei die SKUs der im Bundle enthaltenen Artikel anzugeben ist. Durch Angabe von partner_side_content wird ein leeres Bundle erstellt, wobei die Artikel über einen Webhook hinzuzufügen sind. Dieser Typ wird nur für die Katalogpersonalisierung aufseiten des Partners verwendet.

Enum"standard""partner_side_content"
image_urlstring or null

Bild-URL. Damit das Bild im Zahlungsportal korrekt angezeigt und schnell geladen wird, beachten Sie bitte unsere Richtlinien für Bilder und URLs:

  • Unterstützte Formate: WebP (empfohlen), PNG, JPG.
  • Dateigröße: ≤ 50 kB (für WebP) oder ≤ 150 kB (für PNG und JPG).
  • Bildgröße: 280 x 280 px.
  • Farbraum: sRGB.
  • Protokoll: HTTPS mit langlebigem Caching für versionierte URLs.

is_freeboolean

Ob der Artikel kostenlos ist.

priceobject or null

Artikelpreis.

price.​amountstring^\d*\.?\d*$erforderlich

Artikelpreis mit Rabatt.

price.​amount_without_discountstring^\d*\.?\d*$erforderlich

Artikelpreis.

price.​currencystringerforderlich

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

total_content_priceobject or null

Preissumme der einzelnen Bundle-Inhalte.

total_content_price.​amountstring

Rabattierte Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
total_content_price.​amount_without_discountstring

Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
total_content_price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

virtual_pricesArray of objects

Virtuelle Preise.

virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
virtual_prices[].​amount_without_discountinteger

Artikelpreis in virtueller Währung.

Beispiel: 200
virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "gold"
virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
virtual_prices[].​image_urlstring or null

Bild der virtuellen Währung.

Beispiel: "http://image.png"
virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "Gold"
virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
virtual_prices[].​descriptionstring or null

Virtual currency description.

Beispiel: "Most popular gold"
can_be_boughtboolean

Sofern true, kann der Nutzer einen Artikel kaufen.

contentArray of objects

Bundle-/Paketinhalt.

content[].​skustring

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

Beispiel: "com.xsolla.big_rocket_1"
content[].​namestring

Artikelname.

Beispiel: "Big Rocket"
content[].​typestring

Artikeltyp: virtual_good/virtual_currency/bundle.

Beispiel: "virtual_currency"
content[].​descriptionstring

Artikelbeschreibung.

Beispiel: "Big Rocket - description"
content[].​image_urlstring

Bild-URL.

Beispiel: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
content[].​quantityinteger

Artikelmenge in einem Paket.

Beispiel: 250
content[].​virtual_item_typestring

Art des virtuellen Gegenstands.

Mögliche Werte:

  • consumable – ein Gegenstand, der nach dem Gebrauch aus dem Inventar verschwindet (z. B. Munition).
  • non_consumable – ein Gegenstand, der unbegrenzt lange im Inventar verbleibt.
  • non_renewing_subscription – ein zeitlich begrenzter Artikel, der den Zugang zu Services oder Inhalten für einen begrenzten Zeitraum gewährt.
Enum"consumable""non_consumable""non_renewing_subscription"
Beispiel: "non-consumable"
content[].​attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

content[].​attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

content[].​attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
content[].​attributes[].​valuesArray of objects
content[].​attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

content[].​attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
content[].​priceobject or null

Artikelpreise.

content[].​price.​amountstring

Artikelpreis mit Rabatt.

Beispiel: "100.99"
content[].​price.​amount_without_discountstring

Artikelpreis.

Beispiel: "100.99"
content[].​price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217. Detaillierte Informationen zu Von Xsolla unterstützte Währungen.

Beispiel: "USD"
content[].​virtual_pricesArray of objects

Virtuelle Preise.

content[].​virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
content[].​virtual_prices[].​amount_without_discountinteger

Artikelpreis.

Beispiel: 200
content[].​virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "vc_test"
content[].​virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
content[].​virtual_prices[].​image_urlstring

Bild der virtuellen Währung.

Beispiel: "http://image.png"
content[].​virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "SHOTGUN FOR TRUE RAIDERS"
content[].​virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
content[].​virtual_prices[].​descriptionstring

Virtual currency description.

Beispiel: "Big Rocket - description"
content[].​limitsobject or null

Artikelbeschränkungen.

content[].​limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

content[].​limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
content[].​limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
content[].​limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
content[].​limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
content[].​limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

content[].​limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
content[].​limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
content[].​is_freeboolean

Ob der Artikel kostenlos ist.

content[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

content[].​groups[].​external_idstring
Beispiel: "horror"
content[].​groups[].​nameobject

Name des Artikels. Sollte Schlüssel-Wert-Paare enthalten, wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}" und der Wert ein String ist.

Standard {"en":"Horror"}
Beispiel: {"en":"Horror","de":"Horror"}
content[].​groups[].​name.​property name*stringzusätzliche Eigenschaft
promotionsArray of objects

Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array wird in den folgenden Fällen zurückgegeben:

  • Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.

  • Ein Promocode mit der Einstellung Rabatt auf ausgewählte Artikel ist angewandt.

Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres Array zurückgegeben.

promotions[].​namestring
promotions[].​date_startstring or null(date-time)
promotions[].​date_endstring or null(date-time)
promotions[].​discountobject or null
promotions[].​discount.​percentstring or null
promotions[].​discount.​valuestring or null
promotions[].​bonusArray of objects
promotions[].​bonus[].​skustring
promotions[].​bonus[].​quantityinteger
promotions[].​bonus[].​typestring

Typ des Bonusartikels.

Enum"virtual_good""virtual_currency""bundle""physical_good""game_key""nft"
promotions[].​bonus[].​namestring

Name des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

promotions[].​bonus[].​image_urlstring

Bild-URL des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

promotions[].​bonus[].​bundle_typestring

Typ des im Bundle enthaltenen Bonusartikels. Nur verfügbar für Bonusartikel vom Typ bundle.

Enum"standard""virtual_currency_package"
promotions[].​limitsobject
promotions[].​limits.​per_userobject
promotions[].​limits.​per_user.​availableinteger
promotions[].​limits.​per_user.​totalinteger
limitsobject or null

Artikelbeschränkungen.

limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
periodsArray of objects or null

Artikelangebotszeitraum.

periods[].​date_fromstring(date-time)

Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.

Beispiel: "2020-08-11T10:00:00+03:00"
periods[].​date_untilstring or null(date-time)

Datum, an dem der angegebene Artikel nicht mehr zum Verkauf angeboten wird. Möglich ist: null.

Beispiel: "2020-08-11T20:00:00+03:00"
custom_attributesobject(json)

Ein JSON-Objekt mit Artikelattributen und ‑werten.

vp_rewardsArray of objects

Wertpunktartikel-Belohnung.

vp_rewards[].​item_idinteger

Interne eindeutige Artikel-ID.

vp_rewards[].​skustring

Eindeutige ID des Wertpunkts.

vp_rewards[].​amountinteger

Anzahl der Wertpunkte.

vp_rewards[].​namestring

Wertpunktname.

vp_rewards[].​image_urlstring

Bild-URL.

vp_rewards[].​is_clanboolean

Ob der Wertpunkt in Clan-Belohnungsketten verwendet wird.

orderinteger

Priorität der Bundle-Reihenfolge in der Liste.

media_listArray of objects

Zusätzliche Medieninhalte des Bundles.

media_list[].​typestring

Medieninhaltstyp: image/video.

Enum"image""video"
Beispiel: "image"
media_list[].​urlstring

Ressourcendatei.

Beispiel: "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"
Antwort
application/json
{ "item_id": 610316, "sku": "com.xsolla.kg_1", "name": "kg_10.00_bundle", "type": "bundle", "description": "pricePoint_44056_1.", "image_url": null, "long_description": null, "attributes": [], "is_free": false, "order": 999, "groups": [], "price": { "amount": "9.99", "currency": "USD", "amount_without_discount": "9.99" }, "total_content_price": { "amount": "10.99", "currency": "USD", "amount_without_discount": "10.99" }, "media_list": [], "virtual_prices": [], "promotions": [], "limits": { "per_user": {} }, "can_be_bought": true, "bundle_type": "standard", "periods": [ {} ], "custom_attributes": { "purchased": 0, "attr": "value" }, "content": [ {} ], "vp_rewards": [ {}, {} ] }

Liste der Bundles anhand der angegebenen Gruppe abrufenClient-side

Anfrage

Ruft eine Liste von Bundles innerhalb einer Gruppe ab, um einen Katalog zu erstellen.

Achtung

Bei allen Projekten ist die Anzahl der Artikel begrenzt, die Sie in der Antwort erhalten können. Der Standard- und Höchstwert beträgt 50 Artikel pro Antwort. Um pro Seite mehr Daten zu erhalten, verwenden Sie die Felder limit und offset.

Hinweis

Dieser API-Aufruf gibt generische Katalogdaten zurück, wenn er ohne Autorisierung verwendet wird. Verwenden Sie die Autorisierung, um personalisierte Nutzerdaten abzurufen, wie z. B. mit dem Artikel verknüpfte Limits und Werbeaktionen. Dazu müssen Sie den Benutzer-JWT im Authorization-Header übermitteln. Weitere Informationen zum Benutzer-JWT finden Sie im Block Sicherheit für diesen Aufruf.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt sowie in der Adressleiste des Browsers, wenn Sie im Kundenportal ein Projekt geöffnet haben. Die URL hat das folgende Format: https://publisher.xsolla.com/<merchant_id>/projects/<project_id>.

Beispiel: 44056
external_idstringerforderlich

Bei der Erstellung angegebene externe Artikelgruppen-ID.

Beispiel: weapons
Abfrage
limitinteger>= 1

Begrenzung der Elementanzahl auf der Seite.

Beispiel: limit=50
offsetinteger>= 0

Elementnummer, aus der die Liste generiert wird (die Zählung beginnt bei 0).

Beispiel: offset=0
localestring

Antwortsprache. Sprachencode bestehend aus zwei Kleinbuchstaben gemäß ISO 639-1 (zum Beispiel en). Fünfstellige Gebietsschemacodes (zum Beispiel en-US) werden in Lokalisierungsfeldern wie name und description unterstützt, jedoch in den Antworten in zweistellige Codes umgewandelt. Die vollständige Liste der unterstützten Sprachen finden Sie in der Dokumentation.

Standard "en"
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

Zweistelliger Ländercode in Großbuchstaben gemäß ISO 3166-1 Alpha-2. Weitere Informationen zu den von Xsolla unterstützten Ländern und dazu, wie das Land ermittelt wird, finden Sie in der Dokumentation.

Beispiel: country=US
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/bundle/group/weapons?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Die Liste der Bundles wurde erfolgreich empfangen.

Bodyapplication/json
has_moreboolean

Dient als Indikator dafür, dass weitere Seiten vorhanden sind.

itemsArray of objects
items[].​item_idinteger[ 1 .. 255 ] characters

Interne eindeutige Artikel-ID.

items[].​skustring[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

items[].​namestring

Artikelname.

items[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

items[].​groups[].​external_idstring

Eindeutige Kennung für die Gruppe. Dient normalerweise dazu, in API-Anfragen oder externen Systemen auf die Gruppe zu verweisen.

Beispiel: "exclusive"
items[].​groups[].​namestring

Name der Gruppe.

Beispiel: "Exclusive"
items[].​groups[].​item_order_in_groupinteger

Die Position des Artikels innerhalb der Gruppe. Dient dazu, die Anzeigereihenfolge festzulegen. Dieses Feld ist nur dann in der Antwort enthalten, wenn es über den Abfrageparameter additional_fields[] angefordert wird.

Beispiel: 1
items[].​descriptionstring or null

Artikelbeschreibung.

items[].​long_description(object or null)

Objekt mit Lokalisierungen für lange Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Varianten angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der Dokumentation.

Any of:

Sprachencodes bestehend aus zwei Kleinbuchstaben.

items[].​long_description.​enstring or null

Englisch

items[].​long_description.​arstring or null

Arabisch

items[].​long_description.​bgstring or null

Bulgarisch

items[].​long_description.​cnstring or null

Chinesisch (vereinfacht)

items[].​long_description.​csstring or null

Tschechisch

items[].​long_description.​destring or null

Deutsch

items[].​long_description.​esstring or null

Spanisch (Spanien)

items[].​long_description.​frstring or null

Französisch

items[].​long_description.​hestring or null

Hebräisch

items[].​long_description.​itstring or null

Italienisch

items[].​long_description.​jastring or null

Japanisch

items[].​long_description.​kostring or null

Koreanisch

items[].​long_description.​plstring or null

Polnisch

items[].​long_description.​ptstring or null

Portugiesisch

items[].​long_description.​rostring or null

Rumänisch

items[].​long_description.​rustring or null

Russisch

items[].​long_description.​thstring or null

Thai

items[].​long_description.​trstring or null

Türkisch

items[].​long_description.​twstring or null

Chinesisch (traditionell)

items[].​long_description.​vistring or null

Vietnamesisch

items[].​long_description.​kmstring or null

Khmer

items[].​long_description.​idstring or null

Indonesisch

items[].​long_description.​lostring or null

Laotisch

items[].​long_description.​mystring or null

Birmanisch

items[].​long_description.​phstring or null

Filipino

items[].​long_description.​nestring or null

Nepalesisch

items[].​attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

items[].​attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

items[].​attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
items[].​attributes[].​valuesArray of objects
items[].​attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

items[].​attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
items[].​typestring

Artikeltyp.

items[].​bundle_typestring

Bundle-Typ. Durch Angabe von standard erstellen Sie ein Bundle mit Artikeln, wobei die SKUs der im Bundle enthaltenen Artikel anzugeben ist. Durch Angabe von partner_side_content wird ein leeres Bundle erstellt, wobei die Artikel über einen Webhook hinzuzufügen sind. Dieser Typ wird nur für die Katalogpersonalisierung aufseiten des Partners verwendet.

Enum"standard""partner_side_content"
items[].​image_urlstring or null

Bild-URL. Damit das Bild im Zahlungsportal korrekt angezeigt und schnell geladen wird, beachten Sie bitte unsere Richtlinien für Bilder und URLs:

  • Unterstützte Formate: WebP (empfohlen), PNG, JPG.
  • Dateigröße: ≤ 50 kB (für WebP) oder ≤ 150 kB (für PNG und JPG).
  • Bildgröße: 280 x 280 px.
  • Farbraum: sRGB.
  • Protokoll: HTTPS mit langlebigem Caching für versionierte URLs.

items[].​is_freeboolean

Ob der Artikel kostenlos ist.

items[].​priceobject or null

Artikelpreis.

items[].​price.​amountstring^\d*\.?\d*$erforderlich

Artikelpreis mit Rabatt.

items[].​price.​amount_without_discountstring^\d*\.?\d*$erforderlich

Artikelpreis.

items[].​price.​currencystringerforderlich

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

items[].​total_content_priceobject or null

Preissumme der einzelnen Bundle-Inhalte.

items[].​total_content_price.​amountstring

Rabattierte Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
items[].​total_content_price.​amount_without_discountstring

Preissumme der einzelnen Bundle-Inhalte.

Beispiel: "100.99"
items[].​total_content_price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217.

items[].​virtual_pricesArray of objects

Virtuelle Preise.

items[].​virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
items[].​virtual_prices[].​amount_without_discountinteger

Artikelpreis in virtueller Währung.

Beispiel: 200
items[].​virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "gold"
items[].​virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
items[].​virtual_prices[].​image_urlstring or null

Bild der virtuellen Währung.

Beispiel: "http://image.png"
items[].​virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "Gold"
items[].​virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
items[].​virtual_prices[].​descriptionstring or null

Virtual currency description.

Beispiel: "Most popular gold"
items[].​can_be_boughtboolean

Sofern true, kann der Nutzer einen Artikel kaufen.

items[].​contentArray of objects

Bundle-/Paketinhalt.

items[].​content[].​skustring

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

Beispiel: "com.xsolla.big_rocket_1"
items[].​content[].​namestring

Artikelname.

Beispiel: "Big Rocket"
items[].​content[].​typestring

Artikeltyp: virtual_good/virtual_currency/bundle.

Beispiel: "virtual_currency"
items[].​content[].​descriptionstring

Artikelbeschreibung.

Beispiel: "Big Rocket - description"
items[].​content[].​image_urlstring

Bild-URL.

Beispiel: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
items[].​content[].​quantityinteger

Artikelmenge in einem Paket.

Beispiel: 250
items[].​content[].​virtual_item_typestring

Art des virtuellen Gegenstands.

Mögliche Werte:

  • consumable – ein Gegenstand, der nach dem Gebrauch aus dem Inventar verschwindet (z. B. Munition).
  • non_consumable – ein Gegenstand, der unbegrenzt lange im Inventar verbleibt.
  • non_renewing_subscription – ein zeitlich begrenzter Artikel, der den Zugang zu Services oder Inhalten für einen begrenzten Zeitraum gewährt.
Enum"consumable""non_consumable""non_renewing_subscription"
Beispiel: "non-consumable"
items[].​content[].​attributesArray of objects

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

items[].​content[].​attributes[].​external_idstring[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.

items[].​content[].​attributes[].​namestring

Name des Attributs.

Beispiel: "Genre"
items[].​content[].​attributes[].​valuesArray of objects
items[].​content[].​attributes[].​values[].​external_idstring[ 1 .. 255 ] characters^[-_.\d\w]+$

Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.

items[].​content[].​attributes[].​values[].​valuestring

Wert des Attributs.

Beispiel: "Strategy"
items[].​content[].​priceobject or null

Artikelpreise.

items[].​content[].​price.​amountstring

Artikelpreis mit Rabatt.

Beispiel: "100.99"
items[].​content[].​price.​amount_without_discountstring

Artikelpreis.

Beispiel: "100.99"
items[].​content[].​price.​currencystring

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217. Detaillierte Informationen zu Von Xsolla unterstützte Währungen.

Beispiel: "USD"
items[].​content[].​virtual_pricesArray of objects

Virtuelle Preise.

items[].​content[].​virtual_prices[].​amountinteger

Rabattierter Artikelpreis in virtueller Währung.

Beispiel: 100
items[].​content[].​virtual_prices[].​amount_without_discountinteger

Artikelpreis.

Beispiel: 200
items[].​content[].​virtual_prices[].​skustring

Artikel-SKU der virtuellen Währung.

Beispiel: "vc_test"
items[].​content[].​virtual_prices[].​is_defaultboolean

Ob es sich bei dem Preis um einen Standardpreis für einen Artikel handelt.

Beispiel: true
items[].​content[].​virtual_prices[].​image_urlstring

Bild der virtuellen Währung.

Beispiel: "http://image.png"
items[].​content[].​virtual_prices[].​namestring

Name der virtuellen Währung.

Beispiel: "SHOTGUN FOR TRUE RAIDERS"
items[].​content[].​virtual_prices[].​typestring

Art der virtuellen Währung.

Beispiel: "virtual_currency"
items[].​content[].​virtual_prices[].​descriptionstring

Virtual currency description.

Beispiel: "Big Rocket - description"
items[].​content[].​limitsobject or null

Artikelbeschränkungen.

items[].​content[].​limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

items[].​content[].​limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
items[].​content[].​limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
items[].​content[].​limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
items[].​content[].​limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
items[].​content[].​limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

items[].​content[].​limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
items[].​content[].​limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
items[].​content[].​is_freeboolean

Ob der Artikel kostenlos ist.

items[].​content[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

items[].​content[].​groups[].​external_idstring
Beispiel: "horror"
items[].​content[].​groups[].​nameobject

Name des Artikels. Sollte Schlüssel-Wert-Paare enthalten, wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}" und der Wert ein String ist.

Standard {"en":"Horror"}
Beispiel: {"en":"Horror","de":"Horror"}
items[].​content[].​groups[].​name.​property name*stringzusätzliche Eigenschaft
items[].​promotionsArray of objects

Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array wird in den folgenden Fällen zurückgegeben:

  • Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.

  • Ein Promocode mit der Einstellung Rabatt auf ausgewählte Artikel ist angewandt.

Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres Array zurückgegeben.

items[].​promotions[].​namestring
items[].​promotions[].​date_startstring or null(date-time)
items[].​promotions[].​date_endstring or null(date-time)
items[].​promotions[].​discountobject or null
items[].​promotions[].​discount.​percentstring or null
items[].​promotions[].​discount.​valuestring or null
items[].​promotions[].​bonusArray of objects
items[].​promotions[].​bonus[].​skustring
items[].​promotions[].​bonus[].​quantityinteger
items[].​promotions[].​bonus[].​typestring

Typ des Bonusartikels.

Enum"virtual_good""virtual_currency""bundle""physical_good""game_key""nft"
items[].​promotions[].​bonus[].​namestring

Name des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

items[].​promotions[].​bonus[].​image_urlstring

Bild-URL des Bonusartikels. Nicht verfügbar für Bonusartikel vom Typ physical_good.

items[].​promotions[].​bonus[].​bundle_typestring

Typ des im Bundle enthaltenen Bonusartikels. Nur verfügbar für Bonusartikel vom Typ bundle.

Enum"standard""virtual_currency_package"
items[].​promotions[].​limitsobject
items[].​promotions[].​limits.​per_userobject
items[].​promotions[].​limits.​per_user.​availableinteger
items[].​promotions[].​limits.​per_user.​totalinteger
items[].​limitsobject or null

Artikelbeschränkungen.

items[].​limits.​per_userobject or null

Artikelbeschränkungen für einen Nutzer.

items[].​limits.​per_user.​totalinteger

Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

Beispiel: 5
items[].​limits.​per_user.​availableinteger

Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen kann.

Beispiel: 3
items[].​limits.​per_user.​recurrent_schedule(object or null)
One of:

Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen Nutzer.

object or null
items[].​limits.​per_user.​limit_exceeded_visibilitystring

Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:

  • show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde. Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben. Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
  • hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
Enum"show""hide"
items[].​limits.​per_itemobject or null

Artikelbeschränkungen für einen Artikel.

items[].​limits.​per_item.​totalinteger

Höchstzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 5
items[].​limits.​per_item.​availableinteger

Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

Beispiel: 3
items[].​periodsArray of objects or null

Artikelangebotszeitraum.

items[].​periods[].​date_fromstring(date-time)

Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.

Beispiel: "2020-08-11T10:00:00+03:00"
items[].​periods[].​date_untilstring or null(date-time)

Datum, an dem der angegebene Artikel nicht mehr zum Verkauf angeboten wird. Möglich ist: null.

Beispiel: "2020-08-11T20:00:00+03:00"
items[].​custom_attributesobject(json)

Ein JSON-Objekt mit Artikelattributen und ‑werten.

items[].​vp_rewardsArray of objects

Wertpunktartikel-Belohnung.

items[].​vp_rewards[].​item_idinteger

Interne eindeutige Artikel-ID.

items[].​vp_rewards[].​skustring

Eindeutige ID des Wertpunkts.

items[].​vp_rewards[].​amountinteger

Anzahl der Wertpunkte.

items[].​vp_rewards[].​namestring

Wertpunktname.

items[].​vp_rewards[].​image_urlstring

Bild-URL.

items[].​vp_rewards[].​is_clanboolean

Ob der Wertpunkt in Clan-Belohnungsketten verwendet wird.

items[].​orderinteger

Priorität der Bundle-Reihenfolge in der Liste.

items[].​media_listArray of objects

Zusätzliche Medieninhalte des Bundles.

items[].​media_list[].​typestring

Medieninhaltstyp: image/video.

Enum"image""video"
Beispiel: "image"
items[].​media_list[].​urlstring

Ressourcendatei.

Beispiel: "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"
Antwort
application/json
{ "has_more": true, "items": [ {} ] }

Übersicht

The cart is a purchasing mechanism that enables combining multiple items into a single order. A user can buy items of any type in any quantity for real currency, as well as use promo codes.

The cart is stored on the Xsolla side. Saving the cart across sessions depends on whether the user is authorized:

  • For authorized users, the cart is linked to a specific user and is saved across sessions as long as requests are sent on behalf of the same user.

  • For unauthorized users, saving the cart depends on passing the x-unauthorized-id header. To save the cart of an unauthorized user across sessions, pass the same x-unauthorized-id in every request. This option is available only for game key sales.

You can identify the cart in two ways: automatically by user's JWT or by cart ID (cart_id).

Cart management is available both on the client side and on the server side.

On the server side, you can fill the cart with items, e.g., when restoring a user session. The following actions are available on the client side:

  • retrieve the current user's cart or a cart by ID
  • fill the cart
  • update items in the cart
  • delete items from the cart

To purchase items from the cart, the client and server calls for order creation are used.

The cart’s time to live (TTL) is 72 hours by default. If its content changes, e.g., when a new item is added, the TTL is extended.

After successful payment, the cart isn’t cleared automatically. To clear the cart, use the following client-side API calls:

Cart usage scenario:

  1. Implement a store UI where the user will select items.

  2. When the user selects items in the store, add them to the cart, e.g., using the Fill cart with items call. In the items array, you need to pass the SKUs and the required quantity of items.

  3. Implement the cart viewing UI. When the user navigates to the cart, display its contents using the Get current user's cart call. The response will return information about the final price of the items, including discounts and applied promotions.

  4. Implement the opening of the payment UI to pay for the order. For example, you can use the Create order with all items from particular cart call. The response returns a token to open the payment UI.

  5. Configure order status tracking, e.g., using webhooks, to promptly receive data about successfully paid items and grant them to the user.

Note

To implement selling items in-game and online, refer to the integration guide.

Cart and payment flow

Lebenszyklus von Bestellungen

Den Lebenszyklus von Bestellungen zu verstehen, hilft Ihnen dabei, Bestellungen nachzuverfolgen und die Logik nach dem Kauf (z. B. die Lieferung der Artikel) korrekt umzusetzen.

Der Auftrag durchläuft die folgenden Status:

StatusBeschreibungHinweise
newDie Bestellung wurde angelegt. Das System wartet auf die Zahlungsbestätigung.Erläuterungen zum Transaktionsstatus finden Sie in der Pay-Station-API-Dokumentation.
paidBestellung wurde bezahlt (die Transaktion wurde in den Status done versetzt), und der Artikel kann dem Nutzer gewährt werden. Die Bestellung verbleibt im Status new, bis die Zahlung bestätigt wurd.
doneArtikel wurde dem Nutzer gewährt.
canceledDie Zahlung wurder erstattet. Die Bestellung wechselt in diesen Status, sobald sich der Transaktionsstatus in refunded ändert.
expiredWird eine neue Bestellung für einen begrenzten Artikel, einen Promocode oder eine Werbeaktion angelegt, wird jede bisherige, noch nicht bezahlte Bestellung, in der dieser Artikel enthalten ist, in den Status expired versetzt. Sollte ein Nutzer versuchen, eine abgelaufene Bestellung zu bezahlen, wird im Zahlungsportal der Fehlercode 2002 angezeigt, und die Zahlung schlägt fehl.

Lebenszyklus von Bestellungen

Hinweis

Wenn die Bestellung während des Bezahlvorgangs in den Status expired wechselt, die Zahlung jedoch erfolgreich ist, ändert sich der Status der Bestellung von expired in paid. Dies gilt nur, wenn das Kauflimit für den bestellten Artikel bei der Zahlung nicht überschritten wird.

Warenkorb (clientseitig)

Mit den Aufrufen aus diesem Abschnitt können Sie den Warenkorb clientseitig verwalten.

Operationen

Warenkorb (serverseitig)

Mit den Aufrufen aus diesem Abschnitt können Sie den Warenkorb serverseitig verwalten.

Operationen

Zahlung (clientseitig)

Mit den Aufrufen aus diesem Abschnitt können Sie einen Zahlungstoken clientseitig erstellen.

Operationen

Zahlung (serverseitig)

Mit den Aufrufen aus diesem Abschnitt können Sie einen Zahlungstoken serverseitig erstellen.

Operationen

Bestellung

Mit den Aufrufen aus diesem Abschnitt können Sie Bestellinformationen abrufen

Operationen

Kostenlose Artikel

Use calls from this section to grant free items to users.

Operationen

Übersicht

Mithilfe von Kauflimits können Sie begrenzen, wie viele Artikel ein einzelner Nutzer oder alle Nutzer erwerben können. Zudem können Sie festlegen, dass das Limit nach einer bestimmten Zeitspanne zurückgesetzt wird.

Limits werden aufseiten von Xsolla gespeichert und auf der Ebene der einzelnen Artikel im Kundenportal oder über das Objekt limits in den folgenden API-Aufrufen konfiguriert:

Informationen zu den Limits werden in den folgenden API-Aufrufen zum Abrufen des Artikelkatalogs im Objekt items.limits zurückgegeben:

Mit den API-Aufrufen im Unterabschnitt Verwaltung der Gruppe Limits können Sie den aktuellen Status der Limits abrufen und diese für einen bestimmten Nutzer aktualisieren – beispielsweise den Zähler nach Abschluss einer Quest zurücksetzen oder die verbleibende Menge manuell anpassen.

Hinweis

Ausführliche Informationen zur Konfiguration von Limits im Katalog finden Sie im Abschnitt Kauflimits für Artikel.
Operationen
Operationen
Operationen
Operationen

Katalog

Diese API ermöglicht es, jede Art von verkäuflichen oder bestimmten Artikeln zu erhalten.

Operationen
Operationen
Operationen
Operationen
Operationen