Steamworks-Dokumentation
Anleitung zur Implementation von Mikrotransaktionen

Übersicht

Das Ziel des spielinternen Bezahlsystems von Steam ist die Bereitstellung einer einfachen Methode für Entwickler, Gegenstände an Nutzer zu verkaufen, ohne dass diese das Spiel verlassen müssen. Was verkauft wird, bleibt gänzlich dem Spiel überlassen: Spielgegenstände wie Waffen oder Munition, Spielwährungen wie Münzen oder Goldstücke oder auch Kleidung und Accessoires für Spielercharaktere. Es gibt keine Mindest- und auch keine Höchstanzahl für Gegenstände im Spiel. Und diese Gegenstände können einzeln oder auch in Bündeln oder Paketen verkauft werden. Steam schreibt Ihnen nicht vor, was Sie verkaufen dürfen und was nicht, und gibt Ihnen auch keine Auflagen, wie und über welche Kanäle Sie Ihre Artikel im Spiel verkaufen müssen. Das Bezahlsystem dient dazu, den vielen Spielern vertrauten Bezahlvorgang der Steam-Plattform in Ihr Spiel zu übertragen und den Spielern die Möglichkeit zu geben, ihr Steam-Guthaben ohne Schwierigkeiten für Ihre Produkte auszugeben. Diese Integration öffnet Ihrem Spiel den sofortigen Zugang zu neuen Steam-Nutzern und neuen Zahlungsmethoden, sobald diese verfügbar werden.

Die Kontrolle über die Kaufvorgänge bleibt gänzlich bei Ihnen. Wenn eine Kaufanfrage erfolgreich beantwortet wird, wird der Nutzeraccount zuverlässig belastet und Sie erhalten sofort eine entsprechende Benachrichtigung. Nachdem ein Einkauf genehmigt wurde, liegt es an Ihnen, die entsprechenden Artikel zu gewähren und zu verwalten. Bei Artikeln mit Ablaufzeit bestimmt beispielsweise Ihr System, wie lange der Artikel gültig ist.

Neben Käufen im Spiel bietet das System auch zusätzliche Funktionen, die Sie für Ihre Buchhaltungs- und Supportsysteme nutzen können:
  1. Sie können sich benachrichtigen lassen, wenn Zahlungen ausbleiben.
  2. Sie können über den Webservice Rückerstattungen gewähren und den Status von Transaktionen abrufen.
  3. Sie erhalten Zugang zu detaillierten Berichten mit aktuellen Verkaufszahlen zu Gegenständen und Spielen auf der Steamstats-Partnerwebsite.

Bewährte Praktiken für Käufe im Spiel

Wenn Sie vorhaben, einen Titel mit Käufen im Spiel auf Steam zu veröffentlichen, haben wir ein paar nützliche Vorschläge, bewährte Praktiken und hilfreiche Ressourcen für Sie. Ob kostenlos oder im Voraus bezahlt, alle Spiele mit der Möglichkeit von Käufen im Spiel weisen Gemeinsamkeiten auf, die Sie bei der Vorbereitung auf den Start bei Steam berücksichtigen sollten.

Bitte lesen Sie den Dokumentationsartikel Mikrotransaktionen (Käufe im Spiel) für Vorschläge bezüglich bewährten Praktiken und Wirtschaftssystemen in Spielen.

Funktionsweise des Bezahlsystems

Das Bezahlsystem ist eine Kombination aus Ihrem spielinternen Kaufverfahren, dem Steam-Webservice für Abrechnungen und einem Prozess zum Einholen einer kundenseitigen Autorisierung.

Das Kaufverfahren besteht aus dem unten dargestellten Ablauf. Die Bestellung wird immer vom Nutzer innerhalb Ihres Spieles eingeleitet und abgeschlossen.
  1. Wenn ein Nutzer im Spiel etwas kaufen möchte, sendet Ihr Spiel eine Kaufanfrage an Ihren Kaufsystemserver. Dieser Server kann eine beliebige Komponente sein, die in Ihrem Spielsystem für die Verwaltung von Kaufanfragen zuständig ist, etwa ein Webserver oder auch Ihr Authentifizierungssystem. Die Kommunikation zwischen Ihrem Kaufsystemserver und dem Steam-Abrechnungsserver erfolgt über HTTP. Der Kaufsystemserver kann auch Informationen über das Land, die Sprache und die Währung des Nutzers vom Steam-Abrechnungsserver abfragen. Sie können Ihre Preisgestaltung anhand dieser Informationen gestalten.
  2. Anschließend leitet Ihr Kaufsystemserver im Auftrag des Spielclients eine Zahlungstransaktion beim Steam-Webservice ein. Diese Anfrage ist ein gesichertes HTTP-POST. Sie umfasst die Nutzer-Metadaten sowie die Beschreibung und den Preis der einzelnen Artikel, die der Nutzer kaufen möchte.
  3. Nach Erhalt der Anfrage aktiviert Steam automatisch das Steam-Overlay und zeigt dem Nutzer ein Dialogfeld mit den Gegenständen und ihren Preisen sowie eine Schaltfläche zum Bestätigen bzw. Autorisieren der Transaktion an. Wenn der Steam-Account des Nutzers nicht über ausreichend Guthaben verfügt, leitet ihn das Steam-Overlay durch den Aufladeprozess. Alle Zahlungsinformationen des Nutzers werden vom Steam-Overlay gehandhabt. Nach Abschluss des Vorgangs erhält der Nutzer eine Benachrichtigung, dass der Kauf entweder autorisiert oder abgelehnt wurde. Ihr Spiel sollte so eingerichtet sein, dass es für diese Benachrichtigung ein Rückruf erhält und diese an den Kaufsystemserver weitergeleitet wird.
  4. Ihr Kaufsystemserver erhält die Benachrichtigung und sendet einen FinalizeTransaction-Aufruf an Steam, um den Vorgang endgültig abzuschließen. Eine Erfolgsantwort bewirkt die Belastung des Nutzeraccounts, worauf Sie dem Nutzer den Artikel gewähren können.

Wenn in Ihrem Spiel die Gegenstände hauptsächlich auf Ihrer Website gekauft werden oder Sie Steam als Zahlungsmethode direkt in Ihre Website einbinden möchten, haben Sie die Möglichkeit, Steam in einen Webbrowser zu integrieren. Bei dieser Lösung ist der Ablauf des Kaufvorgangs wie folgt:
  1. Der Nutzer möchte einen Artikel im Spiel oder auf Ihrer Website kaufen. Wenn er im Spiel ist, öffnet Ihr System einen Webbrowser und leitet den Nutzer auf Ihre Website weiter.
  2. Ihr Kaufsystemserver leitet im Auftrag des Nutzers eine Webtransaktion in Form eines gesicherten HTTP-POST ein. Bei Erfolg gibt er eine eindeutige Steam-URL zurück, über die der Nutzer zur Autorisierungsseite umgeleitet wird. Bei der Umleitung geben Sie auch gleichzeitig eine Rückgabe-URL an, an die der Nutzer nach Abschluss der Autorisierung zurückgeleitet wird.
  3. Wenn der Nutzer zurück auf Ihre Website geleitet wird, fragt Ihr Kaufsystemserver den Status der Transaktion ab. Wurde sie autorisiert, kann das Guthaben mit dem Aufruf von FinalizeTransaction an Steam erfasst werden.

Einrichten einer Verbindung

Voraussetzungen

Zuerst müssen Sie einen Web-API-Publisher-Schlüssel generieren. Informationen diesbezüglich finden Sie im Dokumentationsartikel Authentifizierung mithilfe von Web-API-Schlüsseln. Dieser Schlüssel wird in allen Webserveranfragen übergeben und dient zu deren Authentifizierung. Er sollte als Parameter key=<Ihr Schlüssel> mit der Anfrage mitgesendet werden.

Bestellung speichern

Speichern Sie jede Bestellung in Ihrem System, um sie jederzeit wieder abrufen zu können. Verwenden Sie zur Bezeichnung von Transaktionen innerhalb von Steam eine eindeutige 64-Bit-Bestell-ID.

Anfragen übermitteln

Übertragen Sie alle Anfragen mit HTTP 1.1 GET oder POST über eine sichere TLS-Verbindung. Setzen Sie "content-type" auf application/x-www-form-urlencoded und fügen Sie die POST-Parameter innerhalb der body-Tags im standardmäßigen URL-Encoding-Format ein. Text muss als UTF-8 übertragen werden.

Alle Anfragen laufen über den Basis-URI:
https://partner.steam-api.com/ISteamMicroTxn/*

Einige Befehle geben als Ergebnis "pass" oder "fail" zurück. Bei "fail" erhalten Sie zusätzlich einen Fehlercode und eine Beschreibung des Fehlers. Diese werden bei der Antwort "pass" nicht gesendet.

Antworten erfolgen standardmäßig im JSON-Format. Sie können optional das XML-Format angeben, indem Sie das Parameter "format=xml" an die Anfrage anhängen.
Hinweis: Sie müssen eine flexible JSON- oder XML-Lösung implementieren, die erlaubt, dass Parameterschlüssel in einer beliebigen Reihenfolge gesendet oder empfangen werden.

Testen

Zum Testen der Integration bietet Steam eine Entwickler-Sandbox. Sie unterstützt alle Anfragen, die über das normale API möglich sind, aber es werden keine tatsächlichen Beträge vom Steam-Guthaben des Testers abgezogen.

Der Zugang zur Sandbox erfolgt über einen anderen Basis-URI:
https://partner.steam-api.com/ISteamMicroTxnSandbox/*

Integrationsschritte

Käufe im Spiel


Dies bezieht sich auf Spiele mit einem integrierten Shop, bei denen der Nutzer das Spiel zum Kauf von Gegenständen nicht verlassen muss.
  • Schritt 1:
    Ihr Spiel muss mit der Steamworks-API ausgeliefert werden. Dies umfasst eine Header-Datei, eine verlinkte lib-Datei und eine DLL. Lesen Sie den Dokumentationsartikel Steamworks-API – Übersicht für weitere Informationen. Vor dem nächsten Schritt muss die Steamworks-API erfolgreich initiiert worden sein!
  • Schritt 2:
    Der Nutzer beschließt, einen oder mehrere Gegenstände innerhalb Ihres Spiels zu kaufen. Sobald ein Gegenstand bzw. mehrere Gegenstände identifiziert wurde(n), muss Ihr Spiel einige Metadaten über den Nutzer erfassen:
    • Steam-ID: Diese 64-Bit-Nummer dient zur eindeutigen Identifizierung des Nutzers im Steam-System.
    • Ländercode: Dieser Code im Format ISO 3166 bezeichnet das Land, aus dem der Nutzer den Kaufvorgang eingeleitet hat. Anhand dieses Codes können Sie den Preis festlegen.
    • Währungscode: Dieser Code im Format ISO 4217 bezeichnet die Währung, in welcher der Nutzer belastet wird.
    • Sprachcode des Spielclients: Dieser Code im Format ISO 639-1 bezeichnet die Sprache, in welcher der Steam-Client gerade ausgeführt wird.

    Die Steam-ID und die Sprache können mithilfe von Steamworks-API-Aufrufen abgefragt werden:

    Um das Land und die Währung abzurufen, verwenden Sie die Web-API-Funktion ISteamMicroTxn/GetUserInfo und übergeben Sie ihr die Steam-ID des Nutzers.

    Diese Nutzer-Metadaten sollten gebündelt und gemeinsam mit den eigentlichen Daten des Kaufvorgangs an Ihren Kaufsystemserver übertragen werden.
  • Schritt 3:
    Ihr Kaufsystemserver leitet im Auftrag des Steam-Clients eine Kaufanfrage beim Steam-Webservice ein. Verwenden Sie dazu die Funktion ISteamMicroTxn/InitTxn, auf die weiter unten noch näher eingegangen wird. In dieser Anfrage müssen die folgenden Daten übertragen werden:
    • Bestell-ID: Eine eindeutige 64-Bit-Nummer, die Sie diesem Kaufvorgang zuweisen. Diese Nummer ist Ihr Schlüssel für diese Transaktion und identifiziert die Transaktion im gesamten Steam-System.
    • Steam-ID: Die Nutzer-ID, die Sie in Schritt 3 vom Steam-Client erhalten haben.
    • App-ID: Der eindeutige Bezeichner Ihres Steam-Spiels.
    • Sprache: Die Sprache im Codeformat ISO 639-1, in der die betreffenden Gegenstände aufgelistet sind.
    • Währung: Die Währung im Codeformat ISO 4217, in der die betreffenden Preise aufgelistet sind. Wenn dies nicht mit dem in Schritt 2 angegebenen Währungscodeformat des Nutzers übereinstimmt, wird eine automatische Währungskonvertierung zum aktuellen Währungskurs durchgeführt. Steam wird dem Benutzer den umgerechneten Preis in seiner lokalen Währung zur Genehmigung anzeigen. Für das beste Kundenerlebnis empfehlen wir Ihnen einen spezifischen Preis in jeder Währung anzugeben, die Ihre Kunden erwartungsweise nutzen.
    • Eine Liste der Artikel, die der Nutzer kaufen möchte. Geben Sie für jeden Gegenstand die folgenden Daten an:
      • Artikel-ID: Die 32-Bit-Nummer, mit der Sie den betreffenden Gegenstand bezeichnen.
      • Menge: Die Anzahl der in der Transaktion enthaltenen Gegenstände.
      • Betrag: Der Betrag (in Hundertstel der Währung), den Sie dem Nutzer für den Gegenstand bzw. die Gegenstände in Rechnung stellen möchten. Bei einigen Währungen muss der Preis in vollen Werten angegeben werden. Weitere Informationen finden Sie im Dokumentationsartikel Unterstützte Währungen. Bei einer Menge von mehr als 1 ist dies der Gesamtbetrag (= Anzahl × Gegenstandspreis), der abgebucht wird.
      • Artikelbeschreibung: Eine Textbeschreibung des Gegenstands. Diese wird dem Nutzer angezeigt, wenn er zur Autorisierung der Transaktion aufgefordert wird. Sie können lokalisierte Beschreibungen verfassen, die dann gemäß dem vom Steam-Client zurückgegebenen Sprachcode angezeigt werden.
      • Artikelkategorie: Eine optionale Textbeschreibung der Kategorie, in die der jeweilige Artikel fällt. Dies dient zur Kategorisierung der Verkaufsdaten in der Berichtsfunktion im Steam-Backend und ist für den Nutzer nicht sichtbar.

    Wenn die Transaktion von Steam akzeptiert wird, wird der Steam-Client automatisch benachrichtigt, um den Kauf zu autorisieren. Sollte ein Fehler zurückgegeben werden, muss das Problem behoben und eine neue Kaufanfrage übermittelt werden.
  • Schritt 4:
    Ein erfolgreicher Aufruf von ISteamMicroTxn/InitTxn bewirkt, dass der Benutzer über das spielinterne Overlay von Steam eine Benachrichtigung erhält mit dem Hinweis, dass er die Transaktion autorisieren muss. Die angezeigten Transaktionsdetails entstammen der Artikelbeschreibung, die Sie in der Kaufanfrage angegeben haben. Danach kann der Nutzer die Transaktion autorisieren. Wenn der Benutzer auf seinem Account nicht genügend Guthaben hat, leitet ihn Steam automatisch durch den Aufladeprozess. Am Ende erhält Ihr Spiel eine Benachrichtigung mit dem Hinweis, ob die Transaktion autorisiert oder abgelehnt wurde.

    Sie müssen einen Handler ISteamUser::MicroTxnAuthorizationResponse_t für der Rückruf registrieren, damit Sie über die Genehmigung bzw. Ablehnung informiert werden. Das Ergebnis der Rückruf enthält die App-ID, die Bestell-ID und den Autorisierungsstatus der Transaktion. Das Spiel kann dieses Ergebnis an Ihren Kaufsystemserver schicken, damit dieser die Transaktion endgültig abschließen kann. Lesen Sie den Abschnitt [DocLinks Sdk/API-#callbacks =]Rückrufe
[/doclink] für nähere Informationen.
  • Schritt 5:
    Ihr Kaufsystemserver schließt die Transaktion mit dem API-Befehl ISteamMicroTxn/FinalizeTxn und den folgenden Parametern ab:
    • Bestell-ID: Die Bestellnummer, die Sie zu Beginn der Transaktion erstellt haben.
    • App-ID: Der eindeutige Bezeichner Ihres Steam-Spiels.

    Eine Erfolgsantwort bedeutet, dass der Kaufvorgang akzeptiert wurde und der Nutzer die betreffenden Gegenstände erhalten soll. Eine Fehlerantwort bedeutet, dass der Kaufvorgang nicht ordnungsgemäß abgeschlossen werden konnte. Sie erhalten dazu eine entsprechende Fehlermeldung.
  • Schritt 6
    Ihr Kaufsystemserver muss regelmäßig die ISteamMicroTxn/GetReport-API aufrufen, um Informationen bzgl. Änderungen am Abwicklungsstatus der Transaktionen zu erhalten. Rufen Sie diese API mindestens einmal pro Tag auf, um Aktualisierungen am Abwicklungsstatus abzugleichen. Sie können diese API bis zu einmal pro Minute aufrufen, um sicherzustellen, dass Ihr Server immer über den aktuellen Status einer Transaktion verfügt.

    Bei Bedarf können Sie Kundentransaktionen über die ISteamMicroTxn/RefundTxn-API zurückerstatten. Bitte beachten Sie, dass es weitere Wege gibt, Transaktionen rückgängig zu machen, mit denen Sie sich an anderer Stelle vertraut machen sollten. Wenn eine Transaktion rückgängig gemacht wird und den Status „Refunded“ (zurückerstattet), PartialRefund (teilweise zurückerstattet), Chargedback (zurückgebucht), RefundedSuspectedFraud (zurückerstattet aufgrund Betrugsverdachts) oder RefundedFriendlyFraud (zurückerstattet aufgrund Zurückbuchungsbetrug) erhält – siehe Anhang A: Statuswerte – sollte Ihr Backend versuchen, die Artikel der rückgängig gemachten Transaktion zurückzuholen. Bitte ziehen Sie unsere Dokumentation zu Vorkehrungen gegen Betrug zurate und stellen Sie sicher, dass Sie die geläufigsten Arten von Betrug verhindern.
  • [/list]

    Webbasierte-Einkäufe

    Wenn Sie Ihren Shop auf einer Website hosten oder Steam als Zahlungsmethode in das bestehende Kassensystem Ihres Shops integrieren möchten, gehen Sie folgendermaßen vor:
    • Schritt 1:
      Rufen Sie die Steam-ID des Nutzers ab.
      • Wenn sich der Nutzer zum gegenwärtigen Zeitpunkt im Spiel befindet, erhalten Sie die Steam-ID mithilfe der Steamworks-API: ISteamUser::GetSteamID
      • Wenn sich der Nutzer auf Ihrer Website befindet, können Sie seine Steam-ID geschützt über die Steamworks-OpenID-API beziehen. Details zu OpenID finden Sie auf der Seite Webbrowser-basierte Authentifizierung mit OpenID der Steamworks-Dokumentation.

      Hinweis: Wir empfehlen die Verknüpfung des Spielaccounts des Nutzers mit seiner Steam-ID, damit sich der Nutzer nur ein einziges Mal doppelt anmelden muss.
    • Schritt 2:
      Rufen Sie das Land und die Währung des Benutzers ab, indem Sie die Web-API-Funktion ISteamMicroTxn/GetUserInfo aufrufen und ihr die Steam-ID des Nutzers übergeben. Anhand dieser Daten können Sie die Anzeige der Preise und Währungen in Ihrem Shop auf den Nutzer zuschneiden.

      Hinweis:GetUserInfo verfügt über einen optionalen Parameter für die IP-Adresse, über die Sie Steam das Land des Nutzers mitteilen können. Schicken Sie die öffentliche IP-Adresse des Nutzers immer dann mit, wenn dieser einen Einkauf auf Ihrer Webseite tätigt oder er gerade nicht aktiv über den Steam-Client angemeldet ist und Ihr Spiel spielt.
    • Schritt 3:
      Ihr Kaufsystemserver leitet über ISteamMicroTxn/InitTxn eine Kaufanfrage beim Steam-Webservice ein. Im Vergleich zu Käufen im Spiel werden für diesen Vorgang zwei zusätzliche Angaben benötigt:
      • usersession: Setzen Sie dies auf „web“, um anzugeben, dass der Nutzer die Transaktion im Browser autorisieren wird.
      • ipaddress: Die öffentliche IP-Adresse des Nutzers.

      Wenn Sie „usersession“ auf „web“ gesetzt haben, gibt die Anfrage „InitTxn“ den zusätzlichen Parameter „steamurl“ zurück. Dabei handelt es sich um eine eindeutige URL, an die Sie die Websitzung des Nutzers weiterleiten können und die von diesem API-Aufruf generierte Transaktion identifiziert.

    • Schritt 4:
      Ihr Kaufsystemserver leitet die Websitzung des Benutzers auf die Steam-URL um, die von InitTxn zurückgegeben wurde. Geben Sie neben der Weiterleitungs-URL auch eine eigene URL an, zu der der Nutzer zurückgeführt wird, nachdem er die Transaktion autorisiert (oder abgelehnt) hat. Verwenden Sie dazu eine vollständig spezifizierte URL (z. B. http://www.steamgames.com) in der folgenden Form:
      returnurl=your_URL_hier
      Wenn der Nutzer zur Steam-URL umgeleitet wird, muss er sich bei Steam anmelden, bevor er die Transaktion autorisieren kann. Dieser zusätzliche Anmeldevorgang ist für den Nutzer kaum überraschend, wenn er Steam als Zahlungsmethode auf Ihrer Website auswählt. Wenn er hingegen schon bei Steam angemeldet ist und Ihr Spiel spielt, ist es für den Nutzer kaum nachvollziehbar, warum er sich ein zweites Mal anmelden muss. Aus diesem Grund sollte dieser zweite Anmeldevorgang entfallen. Dies erreichen Sie mit dem in das Spiel-Overlay integrierten Webbrowser. Wenn die Autorisierung im Overlay-Browser erfolgt, wird der Nutzer automatisch angemeldet. Zum Starten des Browsers über die Steamworks-API rufen Sie die folgende Funktion auf:
      ISteamFriends::ActivateGameOverlayToWebPage

      Umfassende Details zur Verwendung des Spiel-Overlay finden Sie hier.
    • Schritt 5:
      Sobald der Nutzer auf Ihre Website zurückkehrt, führen Sie einen ISteamMicroTxn/QueryTxn-API-Aufruf durch, um die Ergebnisse abzurufen. Wenn der Bestellungsstatus „Approved“ ist, dann erfassen Sie Zahlungen mit dem API-Aufruf ISteamMicroTxn/FinalizeTxn. Brechen Sie die Transaktion ab, wenn ein anderer Status zurückgegeben wird.

      Hinweis:Wenn der Nutzer seinen Browser schließt oder etwas anderes geschieht, das seine Rückkehr auf Ihre Website verhindert, dann brechen Sie die Transaktion ab und führen Sie keinen FinalizeTxn-Aufruf durch. Brechen Sie die Transaktion selbst dann ab, wenn der Nutzer die Transaktion genehmigt hat, aber aus irgendeinem Grund nicht zurückgeleitet wurde, und fangen Sie wieder von vorne an.
    • Schritt 6
      Ihr Kaufsystemserver muss regelmäßig die ISteamMicroTxn/GetReport-API aufrufen, um Informationen bzgl. Änderungen am Abwicklungsstatus der Transaktionen zu erhalten. Rufen Sie diese API mindestens einmal pro Tag auf, um Aktualisierungen am Abwicklungsstatus abzugleichen. Sie können diese API bis zu einmal pro Minute aufrufen, um sicherzustellen, dass Ihr Server immer über den aktuellen Status einer Transaktion verfügt.

      Bei Bedarf können Sie Kundentransaktionen über die ISteamMicroTxn/RefundTxn-API zurückerstatten. Bitte beachten Sie, dass es weitere Wege gibt, Transaktionen rückgängig zu machen, mit denen Sie sich an anderer Stelle vertraut machen sollten. Wenn eine Transaktion rückgängig gemacht wird und den Status „Refunded“ (zurückerstattet), PartialRefund (teilweise zurückerstattet), Chargedback (zurückgebucht), RefundedSuspectedFraud (zurückerstattet aufgrund Betrugsverdachts) oder RefundedFriendlyFraud (zurückerstattet aufgrund Zurückbuchungsbetrug) erhält – siehe Anhang A: Statuswerte – sollte Ihr Backend versuchen, die Artikel der rückgängig gemachten Transaktion zurückzuholen. Bitte ziehen Sie unsere Dokumentation zu Vorkehrungen gegen Betrug zurate und stellen Sie sicher, dass Sie die geläufigsten Arten von Betrug verhindern.

    Anhang A: Statuswerte

    Dies sind die möglichen Statuswerte, die von der Web-API ISteamMicroTxn zurückgegeben werden. Der Antwortschlüssel, der diese Werte überträgt, wird in der Regel als status bezeichnet.
    • Init: Die Bestellung wurde erstellt, aber nicht vom Nutzer autorisiert.
    • Approved: Die Bestellung wurde vom Nutzer genehmigt.
    • Succeeded: Die Bestellung wurde erfolgreich verarbeitet.
    • Failed: Die Bestellung ist fehlgeschlagen oder wurde abgewiesen.
    • Refunded: Die Bestellung wurde rückerstattet und das Produkt sollte durch das Spiel zurückgezogen werden. Eine Rückerstattung kann vom Kunden eingeleitet werden.
    • PartialRefund: Ein oder mehrere Artikel im Warenkorb wurden erstattet. Überprüfen Sie das itemstatus-Feld jedes Artikels auf Details.
    • Chargedback: Die Bestellung ist betrügerisch oder fragwürdig und das Produkt sollte durch das Spiel entzogen werden.
    • RefundedSuspectedFraud: Bestellung wurde von Valve rückerstattet, weil ein Betrugsverdacht aufkam. Das Produkt sollte durch das Spiel zurückgezogen werden.
    • RefundedFriendlyFraud: Bestellung wurde rückerstattet, weil ein Rückbuchungsbetrug festgestellt wurde. Das Produkt sollte durch das Spiel zurückgezogen werden.

    Anhang B: Fehlercodes

    Dies sind die möglichen Fehlercodes, die von der Web-API ISteamMicroTxn zurückgegeben werden. Der Antwortschlüssel, der diese Werte überträgt, ist in der Regel errorcode.
    • 1: Erfolgreich
    • 2: Die Operation ist fehlgeschlagen
    • 3: Ungültiger Parameter
    • 4: Interner Fehler
    • 5: Die Transaktion wurde nicht vom Nutzer genehmigt
    • 6: Die Transaktion wurde bereits abgeschlossen
    • 7: Der Nutzer ist nicht angemeldet
    • 8: Die Währung stimmt nicht mit der des Steam-Account-Nutzers überein
    • 9: Der Account existiert nicht oder ist temporär nicht erreichbar
    • 10: Die Transaktion wurde vom Nutzer abgelehnt
    • 11: Die Transaktion wurde abgelehnt, da der Nutzer sich in einem eingeschränkten Land befindet
    • 12: Die Transaktion wurde abgelehnt, da die Abrechnungsvereinbarung nicht aktiv ist
    • 13: Die Abrechnungsvereinbarung kann nicht bearbeitet werden, da es sich nicht um den Typ GAME handelt
    • 14: Die Abrechnungsvereinbarung wurde aufgrund einer Abrechnungsstreitigkeit oder Rückbuchung vorübergehend gestoppt
    • 15: Die Abrechnungsvereinbarung kann nicht bearbeitet werden, da es sich nicht um den Typ STEAM handelt
    • 16: Der Nutzer hat bereits eine Abrechnungsvereinbarung für dieses Spiel
    • 100: Nicht genügend Guthaben
    • 101: Die Zeitbegrenzung für den Transaktionsabschluss wurde überschritten
    • 102: Der Account ist deaktiviert
    • 103: Der Account ist nicht zu Käufen berechtigt
    • 104: Die Transaktion wurde aufgrund einer Betrugserkennung verweigert
    • 105: Keine zwischengespeicherte Zahlungsmethode
    • 106: Die Transaktion würde die Ausgabenobergerenze der Zahlungsvereinbarung überschreiten
    • 107: Nutzer verfügt über eine ausstehende Transaktion, die abgeschlossen werden muss, bevor eine neue Transaktion initiiert werden kann.

    Noch Fragen?

    Stellen Sie Fragen im Diskussionsforum zur Integration von Käufen im Spiel.