Artikelverkauf einrichten
Wählen Sie die für Ihr Projekt am besten geeignete Methode für den Zugriff auf Xsolla-Daten:
Bestellung aufseiten des Anwendungs-Clients anlegen
Verwenden Sie den API-Aufruf Bestellung mit angegebenem Artikel anlegen, um eine Bestellung mit Nutzer- und Artikeldaten aufseiten von Xsolla anzulegen. Die Methode antwortet mit einem Zahlungstoken, der benötigt wird, um das Zahlungsportal zu öffnen und die Zahlung abzuschließen. Übermitteln Sie den Parameter “sandbox”: true
im Rumpf der Token-abrufen-Anfrage, um in die Testumgebung zu wechseln.
Zahlungsportal öffnen
Um die Benutzeroberfläche in einem neuen Fenster zu öffnen, nutzen Sie die folgende URL: https://sandbox-secure.xsolla.com/paystation4/?token=TOKEN
, wobei TOKEN
der erhaltene Token ist.
Das Zahlungsportal lässt sich auch auf andere Wege öffnen:
- Mit Pay Station Embed. Einschränkung: Beim Öffnen im Ingame-Browser (WebView) kann es zu Problemen kommen.
- In einem iframe. Einschränkung: Beim Öffnen im Ingame-Browser (WebView) und in Ihrer mobilen App kann es zu Problemen kommen.
- html
<script>
var options = {
access_token: 'ACCESS_TOKEN', //TODO use access token, received on previous step
sandbox: true //TODO please do not forget to remove this setting when going live
};
var s = document.createElement('script');
s.type = "text/javascript";
s.async = true;
s.src = "https://static.xsolla.com/embed/paystation/1.0.7/widget.min.js";
s.addEventListener('load', function (e) {
XPayStationWidget.init(options);
}, false);
var head = document.getElementsByTagName('head')[0];
head.appendChild(s);
</script>
<button data-xpaystation-widget-open>Buy Credits</button>
Pay Station Embed ermöglicht das Abrufen von Ereignissen aus dem Zahlungsportal via postMessage
. Diese Ereignisse können an Analytics-Systeme übermittelt werden. Wenden Sie sich zum Einrichten der Ereignisverarbeitung in Ihrem Analytics-System an Ihren Customer Success Manager oder senden Sie eine E-Mail an csm@xsolla.com.
Das Xsolla-Team hat ein Widget entwickelt, mit dem Sie das Zahlungsportal ganz einfach in Ihre Website integrieren können. Das Widget-Skript ist in unserem GitHub-Repository verfügbar.
Script-Initialisierungsparameter:
Parameter | Typ | Beschreibung |
---|---|---|
access_token | string | Token; wird über die API empfangen. Erforderlich. |
sandbox | boolean | Stellen Sie den Wert des Parameters auf true , um den Zahlungsvorgang auszutesten: Anstelle von sandbox-secure.xsolla.com wird secure.xsolla.com verwendet. |
lightbox | object | Lightbox-Parameter (Objekt; nur für die Desktop-Version). |
payment_widget_ui.lightbox.width | string | Rahmenhöhe der Lightbox. Falls als Wert null festgelegt ist, wird die Höhe der Pay Station verwendet. Standardwert ist null . |
payment_widget_ui.lightbox.height | string | Rahmenhöhe der Lightbox. Falls als Wert null festgelegt ist, wird die Höhe der Pay Station verwendet. Standardwert ist 100% . |
payment_widget_ui.lightbox.zIndex | integer | Definiert die Stapelanordnung. Standardwert ist 1000 . |
payment_widget_ui.lightbox.overlayOpacity | integer | Deckkraft des Widget-Hintergrunds (0 – völlig transparent, 1 – völlig undurchsichtig). Der Standardwert ist 60 % (.6 ). |
payment_widget_ui.lightbox.overlayBackground | string | Hintergrundfarbe der Einblendung. Standardwert ist #000000 . |
payment_widget_ui.lightbox.modal | boolean | Falls true festgelegt ist, kann der Lightbox-Rahmen nicht geschlossen werden. Standardwert ist false . |
lightbox.closeByClick | boolean | Falls true festgelegt ist, wird die Lightbox durch Klick auf die Einblendung geschlossen. Standardwert ist true . |
lightbox.closeByKeyboard | boolean | Falls true festgelegt ist, wird die Lightbox durch Drücken der Escape-Taste geschlossen. Standardwert ist true . |
payment_widget_ui.lightbox.contentBackground | string | Hintergrundfarbe des Rahmens. Standardwert ist #ffffff . Beachten Sie, dass diese Farbänderungen keinen Einfluss auf den iframe der Pay Station selbst haben, sondern nur auf die Einstellungen der Lightbox, in dem der iframe angezeigt wird. |
payment_widget_ui.lightbox.contentMargin | string | Breite des Rahmens. Standardwert ist 10px . |
payment_widget_ui.lightbox.spinner | string | Art der animierten Ladeanzeige. Als Wert lässt sich entweder xsolla oder round festlegen. Standardwert ist xsolla . |
payment_widget_ui.lightbox.spinnerColor | string | Farbe des Ladekreises. Kein Wert voreingestellt. |
childWindow | object | Optionen für das untergeordnete Fenster, welches die Benutzeroberfläche der Pay Station enthält. Wird in der mobilen Version unterstützt. |
childWindow.target | string | Stelle, an welcher das Pay Station-Fenster geöffnet werden soll. Als Wert lässt sich entweder _blank , _self , _parent festlegen. Standardwert ist _blank . |
Das Script ermöglicht Ihnen, die Ereignisse im Zahlungsportal zu verfolgen. Je nach Art des Ereignisses können Sie verschiedene Aktionen auf der Website ausführen.
Liste der Ereignisse:
Parameter | Beschreibung |
---|---|
init | Widget initialisiert. |
open | Widget geöffnet. |
load | Zahlungsportal (Pay Station) geladen. |
close | Zahlungsportal (Pay Station) geschlossen. |
status | Benutzer befindet sich auf der Statusseite. |
status-invoice | Benutzer befindet sich auf der Statusseite; Zahlung im Gange. |
status-delivering | Benutzer befindet sich auf der Statusseite; Zahlung abgeschlossen; Zahlungsbestätigung wurde versendet. |
status-done | Benutzer befindet sich auf der Statusseite, Zahlung wurde dem Benutzerkonto gutgeschrieben. |
status-troubled | Benutzer befindet sich auf der Statusseite; Zahlung fehlgeschlagen. |
https://secure.xsolla.com/paystation4/?token=TOKEN
.https://sandbox-secure.xsolla.com/paystation4/?token=TOKEN
.access_token
enthält personenbezogene Nutzerdaten. Stellen Sie sicher, dass Sie Server-zu-Server-Kommunikation einsetzen, wenn Sie diesen Parameter abrufen.So öffnen Sie das Testumgebung in einem iframe:
- Implementieren Sie den
postMessage
-Mechanismus, um Zahlungsportal-Ereignisse empfangen zu können. - Öffnen Sie das Zahlungsportal über den folgenden Link:
https://sandbox-secure.xsolla.com/paystation4/?token=TOKEN
, wobeiTOKEN
der erhaltene Token ist.
Potentielles Problem: Wenn eine Schaltfläche zum Kopieren eines Zahlungsbestätigungscodes, die von manchen Zahlungssystemen verlangt wird, bei der Öffnung der Zahlungs-UI in einem iframe nicht angezeigt wird, übertragen Sie das allow=“clipboard-read; clipboard-write; payment”
-Attribut zum iframe.
Beispiel:
- html
<iframe
src="https://sandbox-secure.xsolla.com/paystation4/?token=TOKEN"
width="800"
height="700"
allow="clipboard-read; clipboard-write; payment"
></iframe>
Bezahlvorgang testen
Den Bezahlvorgang können Sie im Sandbox-Modus testen. Die Sandbox ist eine eigenständige Testumgebung, welche alle Funktionen der Live-Umgebung, mit Ausnahme echter und abgelehnter Zahlungen, unterstützt. Die Testumgebung aktivieren Sie, indem Sie “sandbox”: true
beim Erstellen eines Tokens senden.
Solange Sie keine Vereinbarung mit Xsolla geschlossen haben, können Sie den Bezahlvorgang nur in der Testumgebung testen.
Beim Testen wird kein Geld von einem echten Bankkonto abgebucht.
- Rufen Sie das Zahlungsportal in der Testumgebung auf.
- Wählen Sie Bankkarte als Zahlungsmethode.
- Geben Sie die Bankkartendaten ein. In die anderen Felder (z. B. Name oder Adresse) können Sie beliebige Daten eingeben. Sie können auch falsche Angaben (Kartennummer oder Ablaufdatum) machen, um zu testen, ob ein Fehler generiert wird.
- Klicken Sie auf Zahlen.
Neben den Kartendaten müssen Sie zusätzlich die Postleitzahl angeben, wenn mindestens eine der folgenden Bedingungen erfüllt ist:
- Der Benutzer ist in den USA oder in Kanada wohnhaft.
- Anhand der Bank Identification Number (BIN) ist ersichtlich, dass die Karte in den USA ausgestellt wurde.
Sie können eine beliebige gültige Postleitzahl angeben (z. B. 12345), diese bestimmt die Höhe der Sales Tax und hat keinen Einfluss auf den Verlauf der Testzahlung.
In der Testumgebung lassen sich Bankkartenzahlungen in den folgenden Währungen tätigen: USD, EUR, RUB, GBP, AED, ALL, AMD, ARS, AUD, AZN, BGN, BRL, BYN, CAD, CHF, CLP, CNY, COP, CZK, DKK, DZD, EGP, GEL, HKD, HRK, HUF, IDR, ILS, INR, ISK, JPY, KES, KGS, KRW, KZT, MAD, MDL, MKD, MNT, MXN, MYR, NGN, PEN, PHP, PKR, PLN, RON, RSD, SAR, SEK, SGD, THB, TRY, TWD, UAH, UYU, UZS, VEF, VND, ZAR.
So zeigen Sie detaillierte Informationen (einschließlich Gebühren) zu in der Testumgebung getätigten Transaktionen an:
- Öffnen Sie das Kundenportal.
- Navigieren Sie zu Finanzen > Transaktionsregister.
- Aktivieren Sie das Kontrollkästchen Testtransaktionen anzeigen.
Unter Support > Transaktionssuche können Sie außerdem die Details einer Transaktion einsehen und Erstattungen beantragen.
Bestellung anlegen und Zahlungsportal öffnen
Rufen Sie die SDK-Methode XsollaCatalog.Purchase
auf, und übermitteln Sie die folgenden Parameter, um eine Bestellung mitsamt Nutzer- und Produktdaten aufseiten von Xsolla anzulegen:
itemSku
– die SKU des Artikels, den der Nutzer kaufen möchte.onSuccess
– der Rückruf bei einem erfolgreichen Kauf. Wird ausgelöst, wenn sich der Bestellstatus indone
ändert.onError
– der Rückruf bei Anfragefehlern.onBrowseClosed
– der Rückruf beim Schließen des Browsers (optional). Das Ereignis wird nur getrackt, wenn der Nutzer das Zahlungsportal im integrierten Browser öffnet. Ereignisse in externen Browsern werden nicht getrackt.purchaseParams
– Kaufparameter und Nutzereinstellungen für das Zahlungsportal, z. B. Gebietsschema und Währung (optional).customHeaders
– benutzerdefinierte Anfrage-Header (optional).
Die Methode XsollaCatalog.Purchase
initiiert den Kaufvorgang für den angegebenen Artikel: Es wird eine Bestellung angelegt, das Zahlungsportal geöffnet und der Bestellstatus getrackt. Übermitteln Sie im Parameter onSuccess eine Funktion, die aufgerufen wird, wenn sich der Bestellstatus in done
ändert.
Wird eine Bestellung angelegt, generiert Xsolla einen Zahlungstoken, der für das Öffnen des Zahlungsportals und die eigentliche Bezahlung erforderlich ist.
Die Lebensdauer eines Tokens beträgt standardmäßig 24 Stunden. Wenn Sie diesen Wert ändern möchten, wenden Sie sich an Ihren Customer Success Manager oder senden Sie eine E-Mail an csm@xsolla.com. Der neue Wert wird für alle im Kundenportal erstellten Projekte Ihrer Firma übernommen.
Bezahlvorgang testen
Den Bezahlvorgang können Sie im Sandbox-Modus testen. Die Sandbox ist eine eigenständige Testumgebung, welche alle Funktionen der Live-Umgebung, mit Ausnahme echter und abgelehnter Zahlungen, unterstützt. Die Testumgebung aktivieren Sie, indem Sie in Unity Editor im
Solange Sie keine Vereinbarung mit Xsolla geschlossen haben, können Sie den Bezahlvorgang nur in der Testumgebung testen.
Beim Testen wird kein Geld von einem echten Bankkonto abgebucht.
- Führen Sie Ihre Anwendung oder Ihre Szene in Unity Editor aus.
- Wählen Sie Bankkarte als Zahlungsmethode.
- Geben Sie die Bankkartendaten ein. In die anderen Felder (z. B. Name oder Adresse) können Sie beliebige Daten eingeben. Sie können auch falsche Angaben (Kartennummer oder Ablaufdatum) machen, um zu testen, ob ein Fehler generiert wird.
- Klicken Sie auf Zahlen.
Neben den Kartendaten müssen Sie zusätzlich die Postleitzahl angeben, wenn mindestens eine der folgenden Bedingungen erfüllt ist:
- Der Benutzer ist in den USA oder in Kanada wohnhaft.
- Anhand der Bank Identification Number (BIN) ist ersichtlich, dass die Karte in den USA ausgestellt wurde.
Sie können eine beliebige gültige Postleitzahl angeben (z. B. 12345), diese bestimmt die Höhe der Sales Tax und hat keinen Einfluss auf den Verlauf der Testzahlung.
In der Testumgebung lassen sich Bankkartenzahlungen in den folgenden Währungen tätigen: USD, EUR, RUB, GBP, AED, ALL, AMD, ARS, AUD, AZN, BGN, BRL, BYN, CAD, CHF, CLP, CNY, COP, CZK, DKK, DZD, EGP, GEL, HKD, HRK, HUF, IDR, ILS, INR, ISK, JPY, KES, KGS, KRW, KZT, MAD, MDL, MKD, MNT, MXN, MYR, NGN, PEN, PHP, PKR, PLN, RON, RSD, SAR, SEK, SGD, THB, TRY, TWD, UAH, UYU, UZS, VEF, VND, ZAR.
So zeigen Sie detaillierte Informationen (einschließlich Gebühren) zu in der Testumgebung getätigten Transaktionen an:
- Öffnen Sie das Kundenportal.
- Navigieren Sie zu Finanzen > Transaktionsregister.
- Aktivieren Sie das Kontrollkästchen Testtransaktionen anzeigen.
Unter Support > Transaktionssuche können Sie außerdem die Details einer Transaktion einsehen und Erstattungen beantragen.
Bestellung anlegen und Zahlungsportal öffnen
- Rufen Sie die Methode
createOrderByItemSku
aus der Store-Bibliothek auf, und übermitteln Sie die folgenden Parameter, um eine Bestellung mitsamt Nutzer- und Artikeldaten aufseiten von Xsolla anzulegen:
callback
– der Rückruf bei erfolgreicher Bestellanlegung. Erhält den Zahlungstoken, der zum Öffnen des Zahlungsportals und zur Abwicklung der Zahlung erforderlich ist.
itemSku
– die SKU des Artikels, den der Nutzer kaufen möchte.
options
– Zahlungsparameter (optional).
quantity
– Wie viele Artikel der Nutzer kaufen möchte (optional). Ist keine Menge angegeben, gilt der Standardwert1
.
- Implementieren Sie die Logik des Zahlungsportals:
- kotlin
val intent = XPayments.createIntentBuilder(activity)
.accessToken(AccessToken(<payment token>))
.isSandbox(<isSandbox>)
.build()
startActivityForResult(intent, RC_PAYSTATION)
- Implementieren Sie die Handhabung der Zahlungsergebnisse:
- kotlin
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == RC_PAYSTATION) {
val (status, _) = XPayments.Result.fromResultIntent(data)
when (status) {
XPayments.Status.COMPLETED -> Log.d("MainActivity", "Payment completed")
XPayments.Status.CANCELLED -> Log.d("MainActivity", "Payment cancelled")
XPayments.Status.UNKNOWN -> Log.d("MainActivity", "Status unknown")
}
}
}
Bezahlvorgang testen
Den Bezahlvorgang können Sie im Sandbox-Modus testen. Die Sandbox ist eine eigenständige Testumgebung, welche alle Funktionen der Live-Umgebung, mit Ausnahme echter und abgelehnter Zahlungen, unterstützt. Die Testumgebung aktivieren Sie, indem Sie beim Erstellen des Objekts IntentBuilder
die Methode isSandbox
aufrufen und true
als Argument übermitteln.
Solange Sie keine Vereinbarung mit Xsolla geschlossen haben, können Sie den Bezahlvorgang nur in der Testumgebung testen.
Beim Testen wird kein Geld von einem echten Bankkonto abgebucht.
- Führen Sie Ihre Anwendung aus.
- Wählen Sie Bankkarte als Zahlungsmethode.
- Geben Sie die Bankkartendaten ein. In die anderen Felder (z. B. Name oder Adresse) können Sie beliebige Daten eingeben. Sie können auch falsche Angaben (Kartennummer oder Ablaufdatum) machen, um zu testen, ob ein Fehler generiert wird.
- Klicken Sie auf Zahlen.
Neben den Kartendaten müssen Sie zusätzlich die Postleitzahl angeben, wenn mindestens eine der folgenden Bedingungen erfüllt ist:
- Der Benutzer ist in den USA oder in Kanada wohnhaft.
- Anhand der Bank Identification Number (BIN) ist ersichtlich, dass die Karte in den USA ausgestellt wurde.
Sie können eine beliebige gültige Postleitzahl angeben (z. B. 12345), diese bestimmt die Höhe der Sales Tax und hat keinen Einfluss auf den Verlauf der Testzahlung.
In der Testumgebung lassen sich Bankkartenzahlungen in den folgenden Währungen tätigen: USD, EUR, RUB, GBP, AED, ALL, AMD, ARS, AUD, AZN, BGN, BRL, BYN, CAD, CHF, CLP, CNY, COP, CZK, DKK, DZD, EGP, GEL, HKD, HRK, HUF, IDR, ILS, INR, ISK, JPY, KES, KGS, KRW, KZT, MAD, MDL, MKD, MNT, MXN, MYR, NGN, PEN, PHP, PKR, PLN, RON, RSD, SAR, SEK, SGD, THB, TRY, TWD, UAH, UYU, UZS, VEF, VND, ZAR.
So zeigen Sie detaillierte Informationen (einschließlich Gebühren) zu in der Testumgebung getätigten Transaktionen an:
- Öffnen Sie das Kundenportal.
- Navigieren Sie zu Finanzen > Transaktionsregister.
- Aktivieren Sie das Kontrollkästchen Testtransaktionen anzeigen.
Unter Support > Transaktionssuche können Sie außerdem die Details einer Transaktion einsehen und Erstattungen beantragen.
Bestellung anlegen und Zahlungsportal öffnen
- Rufen Sie die SDK-Methode
FetchPaymentToken
auf, und übermitteln Sie die folgenden Parameter, um eine Bestellung mitsamt Nutzer- und Artikeldaten aufseiten von Xsolla anzulegen:
AuthToken
– der bei der Authentifizierung gegenüber Xsolla Login erhaltene Benutzerauthentifizierungstoken.
ItemSKU
– die SKU des Artikels, den der Nutzer kaufen möchte.
SuccessCallback
– der Rückruf, der bei erfolgreichem Erhalt des Zahlungstokens ausgelöst wird.
ErrorCallback
– der Rückruf bei einem Anfragefehler.
PurchaseParams
– Kaufparameter und Nutzereinstellungen für das Zahlungsportal, z. B. Gebietsschema und Währung (optional).
- Implementieren Sie den Aufruf des Zahlungsportals. Rufen Sie dazu die SDK-Methode
LaunchPaymentConsole
auf, und übermitteln Sie die folgenden Parameter:
WorldContextObject
– das Weltkontext-Objekt (für C++-Aufrufe).
OrderId
– die Bestell-ID.
AccessToken
– der Zahlungstoken.
SuccessCallback
– der Rückruf, der bei erfolgreichem Erhalt des Zahlungstokens ausgelöst wird.
ErrorCallback
– der Rückruf bei einem Anfragefehler.
BrowserClosedCallback
– der Rückruf beim Schließen des Browsers. Das Ereignis wird nur getrackt, wenn der Nutzer das Zahlungsportal im integrierten Browser öffnet. Ereignisse in externen Browsern werden nicht getrackt.
PayStationVersion
– die Pay-Station-Version. Standardmäßig wird die Version 4 verwendet.
Bezahlvorgang testen
Den Bezahlvorgang können Sie im Sandbox-Modus testen. Die Sandbox ist eine eigenständige Testumgebung, welche alle Funktionen der Live-Umgebung, mit Ausnahme echter und abgelehnter Zahlungen, unterstützt. Die Testumgebung aktivieren Sie, indem Sie in Unreal Editor unter
Solange Sie keine Vereinbarung mit Xsolla geschlossen haben, können Sie den Bezahlvorgang nur in der Testumgebung testen.
Beim Testen wird kein Geld von einem echten Bankkonto abgebucht.
- Führen Sie Ihre Anwendung oder Ihre Map in Unreal Editor aus.
- Wählen Sie Bankkarte als Zahlungsmethode.
- Geben Sie die Bankkartendaten ein. In die anderen Felder (z. B. Name oder Adresse) können Sie beliebige Daten eingeben. Sie können auch falsche Angaben (Kartennummer oder Ablaufdatum) machen, um zu testen, ob ein Fehler generiert wird.
- Klicken Sie auf Zahlen.
Neben den Kartendaten müssen Sie zusätzlich die Postleitzahl angeben, wenn mindestens eine der folgenden Bedingungen erfüllt ist:
- Der Benutzer ist in den USA oder in Kanada wohnhaft.
- Anhand der Bank Identification Number (BIN) ist ersichtlich, dass die Karte in den USA ausgestellt wurde.
Sie können eine beliebige gültige Postleitzahl angeben (z. B. 12345), diese bestimmt die Höhe der Sales Tax und hat keinen Einfluss auf den Verlauf der Testzahlung.
In der Testumgebung lassen sich Bankkartenzahlungen in den folgenden Währungen tätigen: USD, EUR, RUB, GBP, AED, ALL, AMD, ARS, AUD, AZN, BGN, BRL, BYN, CAD, CHF, CLP, CNY, COP, CZK, DKK, DZD, EGP, GEL, HKD, HRK, HUF, IDR, ILS, INR, ISK, JPY, KES, KGS, KRW, KZT, MAD, MDL, MKD, MNT, MXN, MYR, NGN, PEN, PHP, PKR, PLN, RON, RSD, SAR, SEK, SGD, THB, TRY, TWD, UAH, UYU, UZS, VEF, VND, ZAR.
So zeigen Sie detaillierte Informationen (einschließlich Gebühren) zu in der Testumgebung getätigten Transaktionen an:
- Öffnen Sie das Kundenportal.
- Navigieren Sie zu Finanzen > Transaktionsregister.
- Aktivieren Sie das Kontrollkästchen Testtransaktionen anzeigen.
Unter Support > Transaktionssuche können Sie außerdem die Details einer Transaktion einsehen und Erstattungen beantragen.
Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.