- Ресурс: ProductPurchaseV2
- PurchaseStateContext
- PurchaseState
- TestPurchaseContext
- FopType
- ProductLineItem
- ProductOfferDetails
- RentOfferDetails
- ConsumptionState
- AcknowledgementState
- Методы
Ресурс: ProductPurchaseV2
Ресурс ProductPurchaseV2 указывает статус покупки пользователем продукта внутри приложения.
| JSON-представление | 
|---|
| { "productLineItem": [ { object ( | 
| Поля | |
|---|---|
| productLineItem[] |   Содержит информацию на уровне элемента для ProductPurchaseV2. | 
| kind |   Этот тип представляет собой объект ProductPurchaseV2 в службе androidpublisher. | 
| purchaseStateContext |   Информация о состоянии покупки. | 
| testPurchaseContext |   Информация о тестовых покупках. Эта информация будет доступна только для тестовых покупок. | 
| orderId |   Идентификатор заказа, связанный с покупкой товара в приложении. Не может быть установлен, если с покупкой не связан заказ. | 
| obfuscatedExternalAccountId |   Обфусцированная версия идентификатора, уникально связанная с учётной записью пользователя в вашем приложении. Присутствует только в том случае, если указана с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid при совершении покупки. | 
| obfuscatedExternalProfileId |   Обфусцированная версия идентификатора, уникально связанная с профилем пользователя в вашем приложении. Присутствует только в том случае, если указана с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid при совершении покупки. | 
| regionCode |   Код региона выставления счетов пользователя по стандарту ISO 3166-1 alpha-2 на момент предоставления продукта. | 
| purchaseCompletionTime |   Время успешной покупки, т. е. когда состояние PurchaseState изменилось на PURCHASED. Это поле не будет отображаться до завершения платежа. Например, если пользователь инициировал отложенную транзакцию ( https://developer.android.com/google/play/billing/integrate#pending) , это поле не будет заполнено, пока пользователь успешно не выполнит все необходимые для завершения транзакции действия.  Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры:  | 
| acknowledgementState |   Только вывод. Состояние подтверждения покупки. | 
PurchaseStateContext
Контекст о состоянии покупки.
| JSON-представление | 
|---|
| {
  "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
Возможные типы щеголей.
| Перечисления | |
|---|---|
| FOP_TYPE_UNSPECIFIED | Тип FOP не указан. Это значение никогда не следует устанавливать. | 
| TEST | Покупка была совершена с использованием тестовой карты. | 
ProductLineItem
Содержит информацию на уровне элемента для ProductPurchaseV2.
| JSON-представление | 
|---|
| {
  "productId": string,
  "productOfferDetails": {
    object ( | 
| Поля | |
|---|---|
| productId |   Идентификатор приобретенного продукта (например, «monthly001»). | 
| productOfferDetails |   Подробности предложения по этому товару. | 
ProductOfferDetails
Подробная информация о предложении, связанная с позицией покупки.
| JSON-представление | 
|---|
| { "offerTags": [ string ], "offerId": string, "purchaseOptionId": string, "rentOfferDetails": { object ( | 
| Поля | |
|---|---|
| offerTags[] |   Последние теги предложения, связанные с ним. Включая теги, унаследованные от варианта покупки. | 
| offerId |   Идентификатор предложения. Присутствует только для предложений. | 
| purchaseOptionId |   Идентификатор варианта покупки. | 
| rentOfferDetails |   Информация о предложениях аренды. Эта информация будет доступна только для позиций аренды. | 
| offerToken |   Токен предложения на транзакцию, используемый для создания этой позиции покупки. | 
| quantity |   Количество, связанное с покупкой продукта inapp. | 
| refundableQuantity |   Количество товара, подлежащее возврату, т.е. количество товара, которое не было возвращено. Значение отражает частичные и полные возвраты, основанные на количестве. | 
| 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 | Покупка подтверждена. | 
| Методы | |
|---|---|
|   | Проверяет статус покупки и использования товара внутри приложения. | 
Коды ошибок
Операции этого ресурса возвращают следующие коды ошибок HTTP:
| Код ошибки | Причина | Разрешение | 
|---|---|---|
| 5xx | Общая ошибка на сервере Google Play. | Повторите запрос. Если проблема не устранена, обратитесь к менеджеру своего аккаунта Google Play или отправьте запрос в службу поддержки. Рекомендуем проверить панель состояния Play на наличие известных сбоев. | 
| 409 | Ошибка параллельного обновления.  Была попытка обновить обновляемый объект. Например, покупка подтверждается вызовом метода  | Повторите запрос. |