REST Resource: purchases.productsv2

Ресурс: ProductPurchaseV2

Ресурс ProductPurchaseV2 указывает статус покупки пользователем продукта внутри приложения.

JSON-представление
{
  "productLineItem": [
    {
      object (ProductLineItem)
    }
  ],
  "kind": string,
  "purchaseStateContext": {
    object (PurchaseStateContext)
  },
  "testPurchaseContext": {
    object (TestPurchaseContext)
  },
  "orderId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string,
  "regionCode": string,
  "purchaseCompletionTime": string,
  "acknowledgementState": enum (AcknowledgementState)
}
Поля
productLineItem[]

object ( ProductLineItem )

Содержит информацию на уровне элемента для ProductPurchaseV2.

kind

string

Этот тип представляет собой объект ProductPurchaseV2 в службе androidpublisher.

purchaseStateContext

object ( PurchaseStateContext )

Информация о состоянии покупки.

testPurchaseContext

object ( TestPurchaseContext )

Информация о тестовых покупках. Эта информация будет доступна только для тестовых покупок.

orderId

string

Идентификатор заказа, связанный с покупкой товара в приложении. Не может быть установлен, если с покупкой не связан заказ.

obfuscatedExternalAccountId

string

Обфусцированная версия идентификатора, уникально связанная с учётной записью пользователя в вашем приложении. Присутствует только в том случае, если указана с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid при совершении покупки.

obfuscatedExternalProfileId

string

Обфусцированная версия идентификатора, уникально связанная с профилем пользователя в вашем приложении. Присутствует только в том случае, если указана с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid при совершении покупки.

regionCode

string

Код региона выставления счетов пользователя по стандарту ISO 3166-1 alpha-2 на момент предоставления продукта.

purchaseCompletionTime

string ( Timestamp format)

Время успешной покупки, т. е. когда состояние PurchaseState изменилось на PURCHASED. Это поле не будет отображаться до завершения платежа. Например, если пользователь инициировал отложенную транзакцию ( https://developer.android.com/google/play/billing/integrate#pending) , это поле не будет заполнено, пока пользователь успешно не выполнит все необходимые для завершения транзакции действия.

Использует 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" .

acknowledgementState

enum ( AcknowledgementState )

Только вывод. Состояние подтверждения покупки.

PurchaseStateContext

Контекст о состоянии покупки.

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

enum ( PurchaseState )

Только вывод. Состояние покупки.

PurchaseState

Возможные состояния покупки.

Перечисления
PURCHASE_STATE_UNSPECIFIED Состояние покупки не указано. Это значение никогда не следует устанавливать.
PURCHASED Покупка прошла успешно.
CANCELLED Покупка отменена.
PENDING Покупка находится в состоянии ожидания и ещё не завершена. Подробнее об обработке отложенных покупок см. на странице https://developer.android.com/google/play/billing/integrate#pending .

TestPurchaseContext

Контекст о тестовой покупке.

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

enum ( FopType )

Тип тестового заказа.

FopType

Возможные типы щеголей.

Перечисления
FOP_TYPE_UNSPECIFIED Тип FOP не указан. Это значение никогда не следует устанавливать.
TEST Покупка была совершена с использованием тестовой карты.

ProductLineItem

Содержит информацию на уровне элемента для ProductPurchaseV2.

JSON-представление
{
  "productId": string,
  "productOfferDetails": {
    object (ProductOfferDetails)
  }
}
Поля
productId

string

Идентификатор приобретенного продукта (например, «monthly001»).

productOfferDetails

object ( ProductOfferDetails )

Подробности предложения по этому товару.

ProductOfferDetails

Подробная информация о предложении, связанная с позицией покупки.

JSON-представление
{
  "offerTags": [
    string
  ],
  "offerId": string,
  "purchaseOptionId": string,
  "rentOfferDetails": {
    object (RentOfferDetails)
  },
  "offerToken": string,
  "quantity": integer,
  "refundableQuantity": integer,
  "consumptionState": enum (ConsumptionState)
}
Поля
offerTags[]

string

Последние теги предложения, связанные с ним. Включая теги, унаследованные от варианта покупки.

offerId

string

Идентификатор предложения. Присутствует только для предложений.

purchaseOptionId

string

Идентификатор варианта покупки.

rentOfferDetails

object ( RentOfferDetails )

Информация о предложениях аренды. Эта информация будет доступна только для позиций аренды.

offerToken

string

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

quantity

integer

Количество, связанное с покупкой продукта inapp.

refundableQuantity

integer

Количество товара, подлежащее возврату, т.е. количество товара, которое не было возвращено. Значение отражает частичные и полные возвраты, основанные на количестве.

consumptionState

enum ( ConsumptionState )

Только вывод. Состояние потребления покупки.

RentOfferDetails

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

Подробная информация о предложении, связанная с позицией аренды.

ConsumptionState

Возможные состояния потребления.

Перечисления
CONSUMPTION_STATE_UNSPECIFIED Состояние потребления не указано. Это значение никогда не следует устанавливать.
CONSUMPTION_STATE_YET_TO_BE_CONSUMED Пока еще не потреблено.
CONSUMPTION_STATE_CONSUMED Уже потреблено.

AcknowledgementState

Подтвержденное состояние одноразового продукта.

Перечисления
ACKNOWLEDGEMENT_STATE_UNSPECIFIED Неопределенное состояние подтверждения.
ACKNOWLEDGEMENT_STATE_PENDING Покупка пока не подтверждена.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED Покупка подтверждена.

Методы

getproductpurchasev2

Проверяет статус покупки и использования товара внутри приложения.

Коды ошибок

Операции этого ресурса возвращают следующие коды ошибок HTTP:

Код ошибки Причина Разрешение
5xx Общая ошибка на сервере Google Play. Повторите запрос.

Если проблема не устранена, обратитесь к менеджеру своего аккаунта Google Play или отправьте запрос в службу поддержки. Рекомендуем проверить панель состояния Play на наличие известных сбоев.

409 Ошибка параллельного обновления.

Была попытка обновить обновляемый объект. Например, покупка подтверждается вызовом метода acknowledgePurchase() библиотеки Play Billing Library и одновременным вызовом метода purchases.products.acknowledge API Play Developer.

Повторите запрос.