REST Resource: externaltransactions

Ressource: ExternalTransaction

Die Details einer externen Transaktion.

JSON-Darstellung
{
  "packageName": string,
  "externalTransactionId": string,
  "originalPreTaxAmount": {
    object (Price)
  },
  "originalTaxAmount": {
    object (Price)
  },
  "currentPreTaxAmount": {
    object (Price)
  },
  "currentTaxAmount": {
    object (Price)
  },
  "testPurchase": {
    object (ExternalTransactionTestPurchase)
  },
  "transactionTime": string,
  "createTime": string,
  "transactionState": enum (TransactionState),
  "userTaxAddress": {
    object (ExternalTransactionAddress)
  },
  "transactionProgramCode": integer,

  // Union field transaction_type can be only one of the following:
  "oneTimeTransaction": {
    object (OneTimeExternalTransaction)
  },
  "recurringTransaction": {
    object (RecurringExternalTransaction)
  }
  // End of list of possible types for union field transaction_type.
}
Felder
packageName

string

Nur Ausgabe. Der Ressourcenname der externen Transaktion. Der Paketname der App, in der die In-App-Produkte verkauft wurden (z. B. „com.some.app“).

externalTransactionId

string

Nur Ausgabe. Die ID dieser Transaktion. Alle Transaktions-IDs unter demselben Paketnamen müssen eindeutig sein. Wird beim Erstellen der externen Transaktion festgelegt.

originalPreTaxAmount

object (Price)

Erforderlich. Der ursprüngliche Transaktionsbetrag vor Steuern. Dies ist der Betrag vor Steuern, der Google ursprünglich vor Anwendung von Erstattungen mitgeteilt wurde.

originalTaxAmount

object (Price)

Erforderlich. Der ursprüngliche Steuerbetrag. Dies ist der Steuerbetrag, der Google ursprünglich mitgeteilt wurde, bevor Erstattungen angewendet wurden.

currentPreTaxAmount

object (Price)

Nur Ausgabe. Der aktuelle Transaktionsbetrag vor Steuern. Dies ist der aktuelle Betrag vor Steuern, einschließlich aller Erstattungen, die auf diese Transaktion angewendet wurden.

currentTaxAmount

object (Price)

Nur Ausgabe. Der aktuelle Steuerbetrag. Dies ist der aktuelle Steuerbetrag einschließlich aller Erstattungen, die möglicherweise auf diese Transaktion angewendet wurden.

testPurchase

object (ExternalTransactionTestPurchase)

Nur Ausgabe. Falls festgelegt, war diese Transaktion ein Testkauf. Google berechnet keine Gebühren für eine Testtransaktion.

transactionTime

string (Timestamp format)

Erforderlich. Der Zeitpunkt, zu dem die Transaktion abgeschlossen wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitpunkt, zu dem diese Transaktion erstellt wurde. Das ist der Zeitpunkt, zu dem Google über die Transaktion benachrichtigt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

transactionState

enum (TransactionState)

Nur Ausgabe. Der aktuelle Status der Transaktion.

userTaxAddress

object (ExternalTransactionAddress)

Erforderlich. Nutzeradresse für die Steuerberechnung.

transactionProgramCode

integer

Optional. Der Transaktionsprogrammcode, der zur Ermittlung der Servicegebühr für berechtigte Apps verwendet wird, die an Partnerprogrammen teilnehmen. Entwickler, die am Play Media Experience Program (https://play.google.com/console/about/programs/mediaprogram/) teilnehmen, müssen den Programmcode angeben, wenn sie Transaktionen für die alternative Abrechnung melden. Wenn Sie ein berechtigter Entwickler sind, wenden Sie sich bitte an Ihren BDM, um weitere Informationen zum Festlegen dieses Felds zu erhalten. Hinweis: Dieses Feld kann nicht für Transaktionen mit externen Angeboten verwendet werden.

Union-Feld transaction_type. Die Art der durchgeführten Transaktion. Für transaction_type ist nur einer der folgenden Werte zulässig:
oneTimeTransaction

object (OneTimeExternalTransaction)

Es handelt sich um eine einmalige Transaktion, die nicht Teil eines Abos ist.

recurringTransaction

object (RecurringExternalTransaction)

Diese Transaktion ist Teil einer Reihe wiederkehrender Transaktionen.

ExternalTransactionTestPurchase

Dieser Typ hat keine Felder.

Stellt eine Transaktion dar, die mit einem Testkonto ausgeführt wurde. Diese Transaktionen werden nicht von Google in Rechnung gestellt.

OneTimeExternalTransaction

Stellt eine einmalige Transaktion dar.

JSON-Darstellung
{
  "externalTransactionToken": string
}
Felder
externalTransactionToken

string

Nur Eingabe. Wird während des Aufrufs von „Create“ angegeben. Wird vom Client abgerufen, wenn der alternative Abrechnungsablauf gestartet wird.

RecurringExternalTransaction

Stellt eine Transaktion dar, die Teil einer wiederkehrenden Reihe von Zahlungen ist. Das kann ein Abo oder ein Einmalprodukt mit mehreren Zahlungen sein, z. B. eine Vorbestellung.

JSON-Darstellung
{

  // Union field source can be only one of the following:
  "initialExternalTransactionId": string,
  "externalTransactionToken": string,
  "migratedTransactionProgram": enum (ExternalTransactionProgram)
  // End of list of possible types for union field source.

  // Union field product_details can be only one of the following:
  "externalSubscription": {
    object (ExternalSubscription)
  },
  "otherRecurringProduct": {
    object (OtherRecurringProduct)
  }
  // End of list of possible types for union field product_details.
}
Felder

Union-Feld source.

Für source ist nur einer der folgenden Werte zulässig:

initialExternalTransactionId

string

Die ID der externen Transaktion der ersten Transaktion dieser wiederkehrenden Transaktionsreihe. Bei einem Abo wäre das beispielsweise die Transaktions-ID der ersten Zahlung. Erforderlich beim Erstellen wiederkehrender externer Transaktionen.

externalTransactionToken

string

Nur Eingabe. Wird während des Aufrufs von „Create“ angegeben. Wird vom Client abgerufen, wenn der alternative Abrechnungsablauf gestartet wird. Nur für den ersten Kauf erforderlich.

migratedTransactionProgram

enum (ExternalTransactionProgram)

Nur Eingabe. Wird während des Aufrufs von „Create“ angegeben. Muss nur verwendet werden, wenn ein Abo von der manuellen monatlichen Berichterstellung zur automatischen Berichterstellung migriert wird.

Union-Feld product_details. Erforderlich. Details zum Produkt in der wiederkehrenden externen Transaktion. Für product_details ist nur einer der folgenden Werte zulässig:
externalSubscription

object (ExternalSubscription)

Details zu einem externen Abo.

otherRecurringProduct

object (OtherRecurringProduct)

Details zu einem Produkt für wiederkehrende externe Transaktionen, das keiner anderen bestimmten Kategorie angehört.

ExternalTransactionProgram

Gibt das Programm für externe Transaktionen an, das der Nutzer zum Abschließen der Transaktion verwendet hat.

Enums
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED Nicht angegebenes Transaktionsprogramm. Nicht verwendet.
USER_CHOICE_BILLING Abrechnung mit Auswahlmöglichkeit für Nutzer, bei der ein Nutzer zwischen Google Play Billing und der vom Entwickler verwalteten Abrechnung wählen kann.
ALTERNATIVE_BILLING_ONLY Nur alternative Abrechnung, bei der Nutzer nur die Abrechnung über den Entwickler-Manager verwenden können.

ExternalSubscription

Details zu einem externen Abo.

JSON-Darstellung
{
  "subscriptionType": enum (SubscriptionType)
}
Felder
subscriptionType

enum (SubscriptionType)

Erforderlich. Der Typ des externen Abos.

SubscriptionType

Die Arten von externen Abos.

Enums
SUBSCRIPTION_TYPE_UNSPECIFIED Nicht angegeben, nicht verwenden.
RECURRING Dies ist ein wiederkehrendes Abo, bei dem dem Nutzer in jedem Abrechnungszeitraum Kosten in Rechnung gestellt werden.
PREPAID Das ist ein Prepaid-Abo, bei dem der Nutzer im Voraus bezahlt.

OtherRecurringProduct

Dieser Typ hat keine Felder.

Details zu einem Produkt für wiederkehrende externe Transaktionen, das keiner anderen spezifischeren Kategorie angehört.

TransactionState

Der Status einer Transaktion.

Enums
TRANSACTION_STATE_UNSPECIFIED Nicht angegebener Transaktionsstatus. Nicht verwendet.
TRANSACTION_REPORTED Die Transaktion wurde erfolgreich an Google gemeldet.
TRANSACTION_CANCELED Die Transaktion wurde vollständig erstattet.

ExternalTransactionAddress

Die Adresse des Nutzers für die externe Transaktion.

JSON-Darstellung
{
  "regionCode": string,
  "administrativeArea": string
}
Felder
regionCode

string

Erforderlich. Zweistelliger Regionscode basierend auf ISO 3166-1 Alpha-2 (UN-Regionscodes).

administrativeArea

string

Optional. Verwaltungsgebiet auf höchster Ebene des Landes/der Region. Nur für Transaktionen in Indien erforderlich. Gültige Werte sind „ANDAMAN AND NICOBAR ISLANDS“, „ANDHRA PRADESH“, „ARUNACHAL PRADESH“, „ASSAM“, „BIHAR“, „CHANDIGARH“, „CHHATTISGARH“, „DADRA AND NAGAR HAVELI“, „DADRA AND NAGAR HAVELI AND DAMAN AND DIU“, „DAMAN AND DIU“, „DELHI“, „GOA“, „GUJARAT“, „HARYANA“, „HIMACHAL PRADESH“, „JAMMU AND KASHMIR“, „JHARKHAND“, „KARNATAKA“, „KERALA“, „LADAKH“, „LAKSHADWEEP“, „MADHYA PRADESH“, „MAHARASHTRA“, „MANIPUR“, „MEGHALAYA“, „MIZORAM“, „NAGALAND“, „ODISHA“, „PUDUCHERRY“, „PUNJAB“, „RAJASTHAN“, „SIKKIM“, „TAMIL NADU“, „TELANGANA“, „TRIPURA“, „UTTAR PRADESH“, „UTTARAKHAND“ und „WEST BENGAL“.

Methoden

createexternaltransaction

Erstellt eine neue externe Transaktion.

getexternaltransaction

Ruft eine vorhandene externe Transaktion ab.

refundexternaltransaction

Erstattet eine vorhandene externe Transaktion vollständig oder teilweise.

Fehlercodes

Die Vorgänge dieser Ressource geben die folgenden HTTP-Fehlercodes zurück:

Fehlercode Grund Auflösung
5xx Allgemeiner Fehler auf dem Google Play-Server. Wiederholen Sie Ihre Anfrage.

Wenn das Problem weiterhin besteht, wenden Sie sich an Ihren Google Play-Kundenbetreuer oder senden Sie eine Supportanfrage. Prüfen Sie das Play-Status-Dashboard auf bekannte Ausfälle.

409 Fehler beim Aktualisieren der Gleichzeitigkeit.

Es wurde versucht, ein Objekt zu aktualisieren, das gerade aktualisiert wird. Beispiel: Ein Kauf wird bestätigt, indem gleichzeitig die Methode acknowledgePurchase() der Play Billing Library und die Methode purchases.products.acknowledge der Play Developer API aufgerufen werden.

Wiederholen Sie Ihre Anfrage.