REST Resource: purchases.productsv2

Zasób: ProductPurchaseV2

Zasób ProductPurchaseV2 wskazuje stan zakupu produktu w aplikacji przez użytkownika.

Zapis 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)
}
Pola
productLineItem[]

object (ProductLineItem)

Zawiera informacje na poziomie produktu dla obiektu ProductPurchaseV2.

kind

string

Ten rodzaj reprezentuje obiekt ProductPurchaseV2 w usłudze androidpublisher.

purchaseStateContext

object (PurchaseStateContext)

Informacje o stanie zakupu.

testPurchaseContext

object (TestPurchaseContext)

informacje dotyczące zakupów testowych; Będzie ona ustawiana tylko w przypadku zakupów testowych.

orderId

string

Identyfikator zamówienia powiązany z zakupem produktu w aplikacji. Może nie być ustawiona, jeśli z zakupem nie jest powiązane żadne zamówienie.

obfuscatedExternalAccountId

string

Zaciemniona wersja identyfikatora, który jest jednoznacznie powiązany z kontem użytkownika w Twojej aplikacji. Występuje tylko wtedy, gdy podczas zakupu został określony za pomocą https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid.

obfuscatedExternalProfileId

string

Zaciemniona wersja identyfikatora, który jest jednoznacznie powiązany z profilem użytkownika w Twojej aplikacji. Występuje tylko wtedy, gdy podczas zakupu został określony za pomocą parametru https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid.

regionCode

string

Kod regionu rozliczeniowego użytkownika w formacie ISO 3166-1 alfa-2 w momencie przyznania produktu.

purchaseCompletionTime

string (Timestamp format)

Czas, w którym zakup został sfinalizowany, czyli gdy stan zakupu zmienił się na PURCHASED. To pole nie będzie widoczne, dopóki płatność nie zostanie zrealizowana. Jeśli na przykład użytkownik zainicjował oczekującą transakcję (https://developer.android.com/google/play/billing/integrate#pending), to pole nie zostanie wypełnione, dopóki użytkownik nie wykona kroków wymaganych do sfinalizowania transakcji.

Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".

acknowledgementState

enum (AcknowledgementState)

Tylko dane wyjściowe. Stan potwierdzenia zakupu.

PurchaseStateContext

Kontekst dotyczący stanu zakupu.

Zapis JSON
{
  "purchaseState": enum (PurchaseState)
}
Pola
purchaseState

enum (PurchaseState)

Tylko dane wyjściowe. Stan zakupu.

PurchaseState

Możliwe stany zakupu.

Wartości w polu enum
PURCHASE_STATE_UNSPECIFIED Stan zakupu jest nieokreślony. Ta wartość nigdy nie powinna być ustawiona.
PURCHASED Zakup został sfinalizowany.
CANCELLED Zamówienie anulowane.
PENDING Zakup jest w stanie oczekiwania i nie został jeszcze sfinalizowany. Więcej informacji o obsłudze oczekujących zakupów znajdziesz na stronie https://developer.android.com/google/play/billing/integrate#pending.

TestPurchaseContext

Kontekst dotyczący testowego zakupu.

Zapis JSON
{
  "fopType": enum (FopType)
}
Pola
fopType

enum (FopType)

Typ formy płatności w przypadku zakupu testowego.

FopType

Możliwe typy FOP.

Wartości w polu enum
FOP_TYPE_UNSPECIFIED Nieokreślony typ FOP. Ta wartość nigdy nie powinna być ustawiona.
TEST Zakup został dokonany za pomocą karty testowej.

ProductLineItem

Zawiera informacje na poziomie produktu dla obiektu ProductPurchaseV2.

Zapis JSON
{
  "productId": string,
  "productOfferDetails": {
    object (ProductOfferDetails)
  }
}
Pola
productId

string

Identyfikator zakupionego produktu (np. „monthly001”).

productOfferDetails

object (ProductOfferDetails)

Szczegóły oferty tego produktu.

ProductOfferDetails

Informacje o szczegółach oferty dotyczące elementu zamówienia.

Zapis JSON
{
  "offerTags": [
    string
  ],
  "offerId": string,
  "purchaseOptionId": string,
  "rentOfferDetails": {
    object (RentOfferDetails)
  },
  "offerToken": string,
  "quantity": integer,
  "refundableQuantity": integer,
  "consumptionState": enum (ConsumptionState)
}
Pola
offerTags[]

string

Najnowsze tagi oferty powiązane z ofertą. Zawiera tagi odziedziczone z opcji zakupu.

offerId

string

Identyfikator oferty. Występuje tylko w przypadku ofert.

purchaseOptionId

string

Identyfikator opcji zakupu.

rentOfferDetails

object (RentOfferDetails)

Szczegóły oferty dotyczące ofert wynajmu. Będzie to ustawiane tylko w przypadku elementów zamówienia dotyczących wypożyczeń.

offerToken

string

Token oferty za transakcję użyty do zakupu tego elementu zamówienia.

quantity

integer

Liczba powiązana z zakupem produktu w aplikacji.

refundableQuantity

integer

Liczba produktów kwalifikujących się do zwrotu, czyli liczba produktów, za które nie zwrócono jeszcze środków. Wartość odzwierciedla częściowe zwroty środków za zamówienia z większą liczbą produktów i pełne zwroty środków.

consumptionState

enum (ConsumptionState)

Tylko dane wyjściowe. Stan wykorzystania zakupu.

RentOfferDetails

Ten typ nie ma pól.

Informacje o szczegółach oferty związane z elementem zamówienia dotyczącym wynajmu.

ConsumptionState

Możliwe stany wykorzystania.

Wartości w polu enum
CONSUMPTION_STATE_UNSPECIFIED Stan wykorzystania jest nieokreślony. Ta wartość nigdy nie powinna być ustawiona.
CONSUMPTION_STATE_YET_TO_BE_CONSUMED Nie zostały jeszcze wykorzystane.
CONSUMPTION_STATE_CONSUMED Został już wykorzystany.

AcknowledgementState

Stan potwierdzenia produktu kupowanego raz.

Wartości w polu enum
ACKNOWLEDGEMENT_STATE_UNSPECIFIED Nieokreślony stan potwierdzenia.
ACKNOWLEDGEMENT_STATE_PENDING Zakup nie został jeszcze zatwierdzony.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED Zakup został zatwierdzony.

Metody

getproductpurchasev2

Sprawdza stan zakupu i użycia produktu w aplikacji.

Kody błędów

Operacje na tym zasobie zwracają te kody błędów HTTP:

Kod błędu Przyczyna Rozdzielczość
5xx Ogólny błąd serwera Google Play. Ponów żądanie.

Jeśli problem nie ustąpi, skontaktuj się z menedżerem konta Google Play lub prześlij prośbę o pomoc. Sprawdź panel stanu Google Play, aby dowiedzieć się, czy występują znane awarie.

409 Błąd aktualizacji współbieżnej.

Podjęto próbę zaktualizowania obiektu, który jest aktualizowany. Na przykład zakup jest potwierdzany przez jednoczesne wywołanie metody acknowledgePurchase() Biblioteki płatności w Play i metody purchases.products.acknowledge interfejsu Play Developer API.

Ponów żądanie.