Xsolla-logoXsolla Developers
oder
Zum Kundenportal

Token erstellen (Vermächtnis)

post/merchants/{merchant_id}/token

Sie können einen Token mit beliebigen Benutzerparametern erstellen. Sie senden diese Parameter beim Abrufen des Tokens und erhalten sie nach erfolgreicher Zahlung zurück. Ein Token kann nur Parameter enthalten, die entweder in diesem Dokument beschrieben oder von Ihnen vordefiniert sind.

Wenn ein Parameter im falschen Format gesendet wird oder den falschen Typ hat, wird kein Token ausgegeben. Stattdessen erscheint der HTTP-Statuscode 204 samt Fehlerbeschreibung im JSON-Body. Unter extended_message ist exakt aufgeführt, welche Parameter fehlerhaft gesendet wurden.

SecuritybasicAuth
Request
path Parameters
merchant_id
required
integer

Händler-ID.

Request Body schema: application/json
object

Objekt, welches Angaben zum Kauf enthält.

object
Deprecated

Objekt, welches Angaben zur Bezahlung enthält.

amount
number <float>

Kaufbetrag.

currency
string

Kaufwährung. Währungscode, bestehend aus drei Buchstaben gemäß ISO 4217.

object
Deprecated

Informationen über einen Rabatt- bzw. Promocode oder Prämien beim Kauf (Objekt).

hidden
boolean

Blendet das Feld "Promocode-Wert" im Zahlungsportal aus. Standardmäßig ist false festgelegt.

value
string

Promocode-Wert.

object
Deprecated

Kaufbeschreibung.

Array of objects
Array
description
string

Gegenstandsbeschreibung in der Bestellung.

image_url
string

Link zum Gegenstandssymbol.

is_bonus
boolean

Legt fest, ob ein Gegenstand als Bonus verfügbar ist. false ist voreingestellt.

name
string

Name des Gegenstands.

object

Objekt mit dem Preis des Gegenstands.

amount
string

Preis des Gegenstands.

amount_before_discount
string

Unrabattierter Artikelpreis.

quantity
integer

Anzahl der Gegenstände in der Bestellung.

value
string

Allgemeine Kaufbeschreibung, die sich im Zahlungsportal und den E-Mail-Belegen wiederfindet. Um jedes Element einzeln zu übermitteln, verwenden Sie die Parameter des purchase.description.items-Arrays.

object
Deprecated

Benutzerdaten (Objekt).

Array of objects

Array mit Daten über Freunde.

Array
email
string

E-Mail des Geschenkempfängers.

id
string

ID des Geschenkempfängers.

name
string

E-Mail des Geschenkempfängers.

giver_id
string

Spender-ID.

hide_giver_from_receiver
string

Legt fest, ob die Identität des Spenders vor dem Beschenkten geheim gehalten werden soll. Standardwert ist true.

message
string

Nachricht vom Spender.

object
Deprecated

Spielschlüssel.

Array of objects

Spielschlüssel.

Array
digital_content
string

Im Kundenportal festgelegte Spiel-SKU.

drm
string

Die für die Auslieferung des Spiels verwendete DRM-Plattform. Als Wert lässt sich entweder steam, playstation, xbox, uplay, origin, drmfree, gog, epicgames, nintendo_eshop, discord_game_store oder oculus festlegen. Stellen Sie sicher, dass Sie die benötigten DRM-Plattformen in Ihrem Kundenportal konfiguriert haben. Falls nicht im Token übermittelt, wird dieser Parameter durch den Benutzer im Zahlungsportal ausgewählt.

Enum: "steam" "playstation" "xbox" "uplay" "origin" "drmfree" "gog" "epicgames" "nintendo_eshop" "discord_game_store" "oculus"
currency
string

Währung eines Spielschlüssels innerhalb der Bestellung, die bei allen Kalkulationen verwendet werden soll.

object

Objekt mit den Upgrade-Daten.

id
integer

Upgrade-ID.

id_user_history
integer

ID des Eintrags, der Daten über den Benutzer und seine Pakete enthält.

object

Daten zum Abonnement (Objekt).

available_plans
Array of strings

Abonnement-Modelle (Array), die im Zahlungsportal angezeigt werden sollen.

currency
string

Währung des Abo-Modells, die bei allen Kalkulationen verwendet werden soll.

operation
string

Diese Operationsart kommt beim Abo-Modell des Nutzers zur Anwendung. Zur Änderung des Abo-Modells muss der change_plan-Wert übermittelt werden. Sie müssen die ID des neuen Abo-Modells im purchase.subscription.plan_id-Parameter festlegen.

plan_id
string

Externe ID des Abo-Modells. Diese finden Sie im Kundenportal unter Subscriptions > Abo-Modelle.

product_id
string

Produkt-ID.

trial_days
integer

Probezeitraum in Tagen.

object
Deprecated

Objekt, welches Angaben zur virtuellen Währung enthält.

currency
string

Währung, in der das Virtuelle-Währungs-Angebotspaket erworben werden kann und die bei allen Kalkulationen verwendet werden soll.

quantity
number <float>

Kaufbetrag in der virtuellen Währung.

object
Deprecated

Objekt mit Daten über virtuelle Gegenstände, die erworben werden können.

currency
string

Währung der bezogenen Gegenstände, die bei allen Kalkulationen verwendet werden soll.

Array of objects
Array
amount
integer

Gegenstandsmenge.

available_groups
Array of strings

IDs der Gegenstandsgruppen (Array). Im Zahlungsportal werden lediglich Gegenstände aus der festgelegten Gruppe angezeigt.

sku
string

ID des Gegenstands.

object

Benutzerdefinierte Projekteinstellungen (Objekt).

project_id
required
integer

Xsolla-ID des Spiels. Kann im Kundenportal eingesehen werden.

currency
string

Bevorzugte Zahlungswährung. Währungscode, bestehend aus drei Buchstaben gemäß ISO 4217.

external_id
string

Transaktions-ID im Spiel. Muss für jede Benutzerzahlung eindeutig sein. Detaillierte Informationen dazu finden Sie in der Dokumentation.

language
string

Sprache der Benutzeroberfläche. Sprachencode, bestehend aus 2 Kleinbuchstaben.

mode
string

Legen Sie als Wert sandbox fest, um den Zahlungsvorgang auszutesten. Für einen solchen Fall nutzen Sie https://sandbox-secure.xsolla.com, um das Zahlungsportal auszutesten.

payment_method
integer

ID der Zahlungsart.

payment_widget
string

Zahlungs-Widget. Kann paybycash oder giftcard sein. Wenn der Parameter festgelegt ist, wird der Benutzer entsprechend zum Widget "Pay by Cash" oder zum Widget "Gift Cards" weitergeleitet.

Enum: "paybycash" "giftcard"
object

Weiterleitungsrichtlinien-Einstellungen (Objekt).

delay
integer

Verzögerung (in Sekunden), nach der ein Benutzer automatisch zur Rückgabe-URL weitergeleitet wird.

manual_redirection_action
string

Das Verhalten der Pay Station wird ausgelöst, wenn der Benutzer auf die Schaltfläche Schließen oder die Schaltfläche Zurück zum Spiel klickt. Kann redirect (standardmäßig) und postmessage sein. Wenn auf redirect gesetzt, wird ein Benutzer zu der im Token übergebenen oder im Kundenportal angegebenen URL umgeleitet. Wenn er auf postmessage gesetzt ist, wird ein Benutzer nicht auf andere Seiten umgeleitet. Durch Klicken auf das Schließen-Symbol wird das close Ereignis gesendet, und durch Klicken auf die Schaltfläche Zurück zum Spiel - das return Ereignis.

Enum: "redirect" "postmessage"
redirect_button_caption
string

Text auf der Schaltfläche für die manuelle Weiterleitung.

redirect_conditions
string

Zahlungsstatus, bei dem ein Benutzer zur Rückgabe-URL weitergeleitet wird. Möglich sind: none, successful, successful_or_canсeled oder any.

Enum: "none" "successful" "successful_or_canceled" "any"
status_for_manual_redirection
string

Zahlungsstatus, bei dem eine Schaltfläche angezeigt wird, die einen Benutzer zur Rückgabe-URL weiterleitet. Möglich sind: none, successful, successful_or_canсeled oder any.

Enum: "none" "successful" "successful_or_canceled" "any"
return_url
string

URL der Seite, zu der ein Benutzer nach dem Bezahlen weitergeleitet wird. Wie Sie Weiterleitungen konfigurieren, erfahren Sie in der Dokumentation.

object

Schnittstellen-Einstellungen (Objekt).

object

Schnittstellen-Einstellungen für die Desktop-Version (Objekt).

object

Einstellungen für den Header (Objekt).

close_button
boolean

Ob eine Schließen-Schaltfläche im Zahlungsportal angezeigt wird. Die Schaltfläche schließt das Zahlungsportal und leitet den Benutzer an die im settings.return_url-Parameter angegebene URL weiter. Standardmäßig ist false voreingestellt.

close_button_icon
string

Das Symbol der Schließen-Schaltfläche im Zahlungsportal.

Enum: Description
arrow

Das Symbol an der linken Seite der Kopfzeile des Zahlungsportals.

cross

Das Symbol × an der rechten Seite der Kopfzeile des Zahlungsportals.

is_visible
boolean

Legt fest, ob der Header im Zahlungsportal angezeigt wird.

type
string

Erscheinungsbild des Headers. Als Wert lässt sich entweder compact (Projektname und Benutzer-ID sind ausgeblendet) oder normal (voreingestellt) festlegen.

Enum: "compact" "normal"
visible_logo
boolean

Ist true festgelegt, wird das Logo im Header angezeigt. Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zu Pay Station > Einstellungen, um das Bild hochzuladen.

visible_name
boolean

Legt fest, ob der Projektname im Header angezeigt wird.

visible_purchase
boolean

Legt fest, ob die Kaufbeschreibung (purchase.description.value) im Header angezeigt wird. true ist voreingestellt.

object
visible_virtual_currency_balance
boolean

Legt fest, ob dieses Element im Zahlungsportal ausgeblendet werden kann. true voreingestellt.

is_independent_windows
boolean

Ob die Benutzer beim Kauf vom im Startprogramm eingebetteten Browser (WebView) zu ihrem Standardbrowser weitergeleitet werden sollen. false ist voreingestellt.

is_prevent_external_link_open
boolean

Ob die Umleitung von Links auf eine externe Ressource deaktiviert ist oder nicht. false standardmäßig. Wenn Sie auf einen externen Link klicken, wird das external-link-open Ereignis über den postMessage Mechanismus gesendet. Die Adresse für den umgeleiteten Link wird im url Parameter übergeben.

license_url
string

Link zur EULA.

object
object
is_visible
boolean

Legt fest, ob der Footer in der mobilen Version des Zahlungsportals ausgeblendet ist.

object
close_button
boolean

Legt fest, ob eine Schließen-Schaltfläche in der Mobil-Version der Pay Station angezeigt wird. Die Schaltfläche schließt die Pay Station und leitet den Benutzer an die im settings.return_url-Parameter angegebene URL weiter. Standardmäßig ist false voreingestellt.

mode
string

Schnittstellenmodus in der Pay Station. Als Wert lässt sich lediglich user_account festlegen: Der Header enthält ausschließlich die Navigationsleiste des Benutzerkontos und der Benutzer kann kein Produkt auswählen oder eine Zahlung tätigen. Dieser Modus ist nur in der Desktop-Version verfügbar.

size
string

Größe des Zahlungsportals. Folgende Größen sind möglich:

  • small: die kleinstmögliche Größe des Zahlungsportals. Verwenden Sie diese, wenn die Fenstergröße begrenzt ist (Abmessungen: 620 x 630)
  • medium: empfohlene Größe. Verwenden Sie diese, um das Zahlungsportal in einer Lightbox darzustellen (Abmessungen: 820 x 840)
  • large: optimal für die Anzeige des Zahlungsportals in einem neuen Fenster/Registerkarte (Abmessungen: 820 x 840)
Enum: "small" "medium" "large"
theme
string

Theme des Zahlungsportals. Als Wert lässt sich entweder default (voreingestellt) oder default_dark festlegen.

Enum: "default" "default_dark"
object

Details zum Benutzerkonto (Objekt).

object

Seite Mein Konto.

enable
boolean

Ob der Abschnitt angezeigt wird. Standardwert ist false.

order
integer

Position des Abschnitts in der Drop-down-Liste.

object

Abschnitt Meine Zahlungskonten.

enable
boolean

Legt fest, ob der Abschnitt in der in der Drop-down-Liste im Zahlungsportal angezeigt wird. Standardwert ist true. Wenn Sie diesen Parameter nicht übermitteln, wird der Abschnitt angezeigt.

order
integer

Position des Abschnitts in der Drop-down-Liste im Zahlungsportal.

object

Abschnitt Abonnements verwalten.

enable
boolean

Ob der Abschnitt angezeigt wird. Standardwert ist false.

order
integer

Position des Abschnitts in der Drop-down-Liste.

version
string

Gerätetyp. Als Wert lässt sich entweder desktop (voreingestellt) oder mobile festlegen.

Enum: "desktop" "mobile"
object

Benutzerdaten (Objekt).

required
object
value
required
string

Die bei Ihnen gespeicherte eindeutige Benutzer-ID im Spiel. Stellen Sie sicher, dass Sie die vorhandene Benutzer-ID übermitteln. Falls ein Fehler auftritt, lesen Sie die FAQ.

age
integer

Alter des Benutzers.

attributes
object

Benutzerattribute zum Filtern der Liste der Gegenstände; repräsentiert durch eine gültige Reihe von JSON-Objekten bestehend aus Schlüssel-Wert-Paaren.

object
allow_modify
boolean

Legt fest, ob ein Benutzer das Land im Zahlungsportal ändern darf. Wenn country.value im Token übermittelt wird, ist der Wert standardmäßig auf false gestellt.

value
string

Ländercode, bestehend aus zwei Großbuchstaben gemäß ISO 3166-1 ALPHA-2.

object <= 100 characters

Das user.email Objekt ist ein integraler Bestandteil beim Aufbau von Betrugsbekämpfungsmodellen und trägt zur Erhöhung der Akzeptanzraten bei. Es ist sowohl für Xsolla als auch für Zahlungssysteme erforderlich. Falls der Parameter nicht übergeben wird, erscheint auf der Zahlungsseite das Pflichtfeld zur Eingabe der E-Mail. Ein Benutzer erhält einen Kaufbeleg an die im Parameter übergebene oder auf der Zahlungsseite eingegebene E-Mail.

value
required
string

E-Mail-Adresse des Benutzers. Muss gemäß RFC 822-Protokoll gültig sein.

allow_modify
boolean

Legt fest, ob ein Benutzer seine E-Mail in der Zahlungsoberfläche eingeben kann. Falls der user.email.value Parameter im Token übergeben wird, ist der Wert standardmäßig false.

is_legal
boolean

Legt fest, ob der Benutzer eine juristische Person ist.

object

Objekt mit Angaben zur juristischen Person. Objekt und alle seine Parameter sind erforderlich, falls für user.is_legal true festgelegt ist.

address
string

Vollständige Unternehmensanschrift.

country
string

Land des Unternehmenssitzes. Ländercode, bestehend aus 2 Großbuchstaben gemäß ISO 3166-1 ALPHA-2.

name
string

Vollständiger Name des Unternehmens.

vat_id
string

Steuerliche Identifikationsnummer.

object
allow_modify
boolean

Legt fest, ob ein Benutzer seine E-Mail in der Zahlungsoberfläche eingeben kann. Falls der user.name.value Parameter im Token übergeben wird, ist der Wert standardmäßig false.

value
string

Benutzername.

object or null
value
string

Telefonnummer des Benutzers.

object
value
string

Parameter, durch den der Benutzer eindeutig identifizierbar ist und der dem Benutzer bekannt ist (E-Mail, Benutzername, usw.). Gestattet dem Benutzer, Käufe außerhalb des Game-Stores zu tätigen (z. B. via Verkaufsterminals).

object
value
string

Steam-ID.

object
value
string = 32 characters

Eindeutige Benutzer-ID – wird in Marketingkampagnen verwendet. Kann Ziffern und lateinische Zeichen enthalten.

object

Datenverkehrsattribute (Objekt).

utm_campaign
string

Kampagnenbezeichnung, ins Englische transliteriert oder übersetzt.

utm_content
string

Kampagneninhalt.

utm_medium
string

Datenverkehrskanal (kontextbezogene Anzeigen, mediale Anzeigen, E-Mail-Listen, usw.).

utm_source
string

Ursprung des Datenverkehrs.

utm_term
string

Kampagnen-Keyword. Falls festgelegt, basieren die Statistiken auf den Keywords, die für die Zielgruppenwerbung verwendet werden, anstatt auf spezifischen Suchanfragen. In Google Analytics ist der angegebene utm_term Teil des allgemeinen Berichts zu Suchbegriffen.

Responses
200

Created.

422

Unprocessable Entity.

Request samples
application/json
{
  • "purchase": {
    },
  • "settings": {
    },
  • "user": {
    }
}
Response samples
application/json
{
  • "token": "eop57k1boA7nnYPtewZ6KEXJyJADEwRT"
}