REST Resource: externaltransactions

Ресурс: ВнешняяТранзакция

Подробности внешней транзакции.

JSON-представление
{
  "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.
}
Поля
packageName

string

Только вывод. Имя ресурса внешней транзакции. Имя пакета приложения, в котором были проданы продукты inapp (например, 'com.some.app').

externalTransactionId

string

Только вывод. Идентификатор этой транзакции. Все идентификаторы транзакций под одним и тем же именем пакета должны быть уникальными. Устанавливается при создании внешней транзакции.

originalPreTaxAmount

object ( Price )

Обязательно. Первоначальная сумма транзакции до вычета налогов. Это сумма до вычета налогов, изначально сообщенная Google до применения каких-либо возмещений.

originalTaxAmount

object ( Price )

Обязательно. Первоначальная сумма налога. Это сумма налога, первоначально сообщенная Google до применения каких-либо возмещений.

currentPreTaxAmount

object ( Price )

Только вывод. Текущая сумма транзакции до вычета налогов. Это текущая сумма до вычета налогов, включая любые возмещения, которые могли быть применены к этой транзакции.

currentTaxAmount

object ( Price )

Только вывод. Текущая сумма налога. Это текущая сумма налога, включая любые возмещения, которые могли быть применены к этой транзакции.

testPurchase

object ( ExternalTransactionTestPurchase )

Только вывод. Если установлено, эта транзакция была тестовой покупкой. Google не будет взимать плату за тестовую транзакцию.

transactionTime

string ( Timestamp format)

Обязательно. Время завершения транзакции.

Использует RFC 3339, где сгенерированный вывод всегда будет Z-нормализованным и использует 0, 3, 6 или 9 дробных цифр. Смещения, отличные от "Z", также принимаются. Примеры: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" или "2014-10-02T15:01:23+05:30" .

createTime

string ( Timestamp format)

Только вывод. Время создания этой транзакции. Это время, когда Google был уведомлен о транзакции.

Использует RFC 3339, где сгенерированный вывод всегда будет Z-нормализованным и использует 0, 3, 6 или 9 дробных цифр. Смещения, отличные от "Z", также принимаются. Примеры: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" или "2014-10-02T15:01:23+05:30" .

transactionState

enum ( TransactionState )

Только вывод. Текущее состояние транзакции.

userTaxAddress

object ( ExternalTransactionAddress )

Обязательно. Адрес пользователя для расчета налога.

transactionProgramCode

integer

Необязательно. Код программы транзакции, используемый для определения платы за обслуживание для соответствующих приложений, участвующих в партнерских программах. Разработчики, участвующие в программе Play Media Experience ( https://play.google.com/console/about/programs/mediaprogram/ ), должны предоставить код программы при сообщении об альтернативных платежных транзакциях. Если вы являетесь соответствующим разработчиком, обратитесь к своему BDM для получения дополнительной информации о том, как задать это поле. Примечание: это поле не может использоваться для внешних транзакций предложений.

Поле объединения transaction_type . Тип выполненной транзакции. transaction_type может быть только одним из следующих:
oneTimeTransaction

object ( OneTimeExternalTransaction )

Это разовая транзакция, не являющаяся частью подписки.

recurringTransaction

object ( RecurringExternalTransaction )

Данная транзакция является частью повторяющейся серии транзакций.

ВнешняяТестоваяПокупкаТранзакции

Этот тип не имеет полей.

Представляет собой транзакцию, выполненную с использованием тестового аккаунта. Эти транзакции не будут взиматься Google.

OneTimeExternalTransaction

Представляет собой разовую транзакцию.

JSON-представление
{
  "externalTransactionToken": string
}
Поля
externalTransactionToken

string

Только ввод. Предоставляется во время вызова Create. Извлекается от клиента при запуске альтернативного потока выставления счетов.

Повторяющаяся внешняя транзакция

Представляет собой транзакцию, которая является частью повторяющейся серии платежей. Это может быть подписка или одноразовый продукт с несколькими платежами (например, предварительный заказ).

JSON-представление
{

  // 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.
}
Поля

source поля Союза.

source может быть только одно из следующего:

initialExternalTransactionId

string

Внешний идентификатор транзакции первой транзакции этой повторяющейся серии транзакций. Например, для подписки это будет идентификатор транзакции первого платежа. Требуется при создании повторяющихся внешних транзакций.

externalTransactionToken

string

Только ввод. Предоставляется во время вызова Create. Извлекается от клиента при запуске альтернативного потока выставления счетов. Требуется только для первоначальной покупки.

migratedTransactionProgram

enum ( ExternalTransactionProgram )

Только ввод. Предоставляется во время вызова Create. Должен использоваться только при переносе подписки с ежемесячной ручной отчетности на автоматизированную отчетность.

Поле объединения product_details . Обязательно. Подробная информация о продукте в повторяющейся внешней транзакции. product_details может быть только одним из следующих:
externalSubscription

object ( ExternalSubscription )

Подробная информация о внешней подписке.

otherRecurringProduct

object ( OtherRecurringProduct )

Подробная информация о повторяющемся внешнем транзакционном продукте, который не относится ни к какой другой конкретной категории.

ВнешняяТранзакционнаяПрограмма

Представляет собой внешнюю программу транзакции, используемую пользователем для завершения транзакции.

Перечисления
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED Неуказанная программа транзакций. Не используется.
USER_CHOICE_BILLING Выбор пользователя для выставления счетов, при котором пользователь может выбрать между Google Play Billing и управляемым разработчиком выставлением счетов.
ALTERNATIVE_BILLING_ONLY Только альтернативная система выставления счетов, при которой пользователи могут использовать только систему выставления счетов разработчику-менеджеру.

ВнешняяПодписка

Подробная информация о внешней подписке.

JSON-представление
{
  "subscriptionType": enum (SubscriptionType)
}
Поля
subscriptionType

enum ( SubscriptionType )

Обязательно. Тип внешней подписки.

Тип подписки

Типы внешней подписки.

Перечисления
SUBSCRIPTION_TYPE_UNSPECIFIED Не указано, не использовать.
RECURRING Это повторяющаяся подписка, при которой с пользователя взимается плата за каждый расчетный цикл.
PREPAID Это предоплаченная подписка, при которой пользователь платит авансом.

ДругойПовторяющийсяПродукт

Этот тип не имеет полей.

Подробная информация о повторяющемся внешнем транзакционном продукте, который не относится ни к какой другой более конкретной категории.

СостояниеТранзакции

Состояние совершаемой транзакции.

Перечисления
TRANSACTION_STATE_UNSPECIFIED Неопределенное состояние транзакции. Не используется.
TRANSACTION_REPORTED Транзакция успешно передана в Google.
TRANSACTION_CANCELED Транзакция была полностью возмещена.

Внешний адрес транзакции

Адрес пользователя для внешней транзакции.

JSON-представление
{
  "regionCode": string,
  "administrativeArea": string
}
Поля
regionCode

string

Обязательно. Двухбуквенный код региона на основе ISO-3166-1 Alpha-2 (коды регионов ООН).

administrativeArea

string

Необязательно. Административное подразделение высшего уровня страны/региона. Требуется только для транзакций в Индии. Допустимые значения: «АНДАМАНСКИЕ И НИКОБАРСКИЕ ОСТРОВА», «АНДРА-ПРАДЕШ», «АРУНАЧАЛ-ПРАДЕШ», «АССАМ», «БИХАР», «ЧАНДИГАРХ», «ЧХАТТИСГАРХ», «ДАДРА И НАГАР ХАВЕЛИ», «ДАДРА И НАГАР ХАВЕЛИ И ДАМАН И ДИУ», «ДАМАН И ДИУ», «ДЕЛИ», «ГОА», «ГУДЖАРАТ», «ХАРЬЯНА», «ХИМАЧАЛ-ПРАДЕШ», «ДЖАММУ И КАШМИР», «ДЖАРКХАНД», «КАРНАТАКА», «КЕРАЛА», «ЛАДАХ», «ЛАКШАДВИП», «МАДХЬЯ-ПРАДЕШ», «МАХАРАШТРА», «МАНИПУР», «МЕГАЛАЙЯ», «МИЗОРАМ», «НАГАЛАНД», «ОДИША», «ПУДУЧЕРРИ», «ПЕНДЖАБ», «РАДЖАСТАН», «СИККИМ», «ТАМИЛ НАДУ», «ТЕЛАНГАНА», «ТРИПУРА», «УТТАР-ПРАДЕШ», «УТТАРАХАНД» и «ЗАПАДНАЯ БЕНГАЛИЯ».

Методы

createexternaltransaction

Создает новую внешнюю транзакцию.

getexternaltransaction

Получает существующую внешнюю транзакцию.

refundexternaltransaction

Возврат или частичный возврат существующей внешней транзакции.