- Zasób: SubscriptionPurchaseV2
- SubscriptionState
- PausedStateContext
- CanceledStateContext
- UserInitiatedCancellation
- CancelSurveyResult
- CancelSurveyReason
- SystemInitiatedCancellation
- DeveloperInitiatedCancellation
- ReplacementCancellation
- TestPurchase
- AcknowledgementState
- ExternalAccountIdentifiers
- SubscribeWithGoogleInfo
- SubscriptionPurchaseLineItem
- AutoRenewingPlan
- SubscriptionItemPriceChangeDetails
- PriceChangeMode
- PriceChangeState
- InstallmentPlan
- PendingCancellation
- PrepaidPlan
- OfferDetails
- DeferredItemReplacement
- Metody
Zasób: SubscriptionPurchaseV2
Wskazuje stan zakupu subskrypcji przez użytkownika.
Zapis JSON |
---|
{ "kind": string, "regionCode": string, "lineItems": [ { object ( |
Pola | |
---|---|
kind |
Ten rodzaj reprezentuje obiekt SubscriptionPurchaseV2 w usłudze androidpublisher. |
regionCode |
Kod kraju/regionu rozliczenia zgodny ze standardem ISO 3166-1 alfa-2 w momencie przyznania subskrypcji. |
lineItems[] |
Informacje na poziomie produktu dotyczące zakupu subskrypcji. Wszystkie elementy w tym samym zakupie powinny być albo wszystkie w ramach automatycznego odnawiania subskrypcji, albo wszystkie w ramach przedpłaconego Planu. |
startTime |
Godzina przyznania subskrypcji. Nie ustawiono dla subskrypcji oczekujących (subskrypcja została utworzona, ale oczekuje na płatność podczas rejestracji). Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
subscriptionState |
Obecny stan subskrypcji. |
latestOrderId |
Identyfikator ostatniego zamówienia powiązanego z zakupem subskrypcji. W przypadku subskrypcji odnawianej automatycznie jest to identyfikator zamówienia rejestracyjnego, jeśli nie zostało ono jeszcze odnowione, lub identyfikator ostatniego zamówienia cyklicznego (zamówienie zakończone sukcesem, zamówienie oczekujące lub odrzucone). W przypadku subskrypcji przedpłaconej jest to identyfikator zamówienia powiązany z tokenem zakupu, którego dotyczy zapytanie. |
linkedPurchaseToken |
Token zakupu starej subskrypcji, jeśli jest ona jedna z tych sytuacji: * ponowna rejestracja anulowanej, ale jeszcze nie wygasłej subskrypcji; * przejście na wyższą lub niższą wersję usługi z poprzedniej subskrypcji. * Zmień abonament przedpłacony na odnawiane automatycznie. * Przejdź z automatycznie odnawianej subskrypcji na abonament przedpłacony. * Doładuj przedpłaconą subskrypcję. |
pausedStateContext |
Dodatkowy kontekst dotyczący wstrzymanych subskrypcji. Widoczny tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_PAUSED. |
canceledStateContext |
Dodatkowe informacje o anulowanych subskrypcjach. Widoczny tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_CANCELED lub SUBSCRIPTION_STATE_expirationD. |
testPurchase |
Widoczny tylko wtedy, gdy zakup subskrypcji jest zakupem testowym. |
acknowledgementState |
Stan potwierdzenia subskrypcji. |
externalAccountIdentifiers |
Identyfikator konta użytkownika w usłudze innej firmy. |
subscribeWithGoogleInfo |
Profil użytkownika powiązany z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”. |
SubscriptionState
Potencjalne stany subskrypcji, np. czy jest aktywna lub anulowana. Zakupione subskrypcje mogą obejmować wszystkie plany odnawiane automatycznie lub przedpłacone.
Wartości w polu enum | |
---|---|
SUBSCRIPTION_STATE_UNSPECIFIED |
Nieokreślony stan subskrypcji. |
SUBSCRIPTION_STATE_PENDING |
Subskrypcja została utworzona, ale podczas rejestracji oczekuje na płatność. W tym stanie wszystkie produkty oczekują na płatność. |
SUBSCRIPTION_STATE_ACTIVE |
Subskrypcja jest aktywna. – (1) Jeśli subskrypcja jest planem odnawianym automatycznie, co najmniej 1 z nich ma stan AutoRenewEnabled i nie stracił ważności. – (2) Jeśli subskrypcja jest abonamentem przedpłaconym, co najmniej jedna pozycja nie wygasła. |
SUBSCRIPTION_STATE_PAUSED |
Subskrypcja została wstrzymana. Stan jest dostępny tylko wtedy, gdy subskrypcja jest abonamentem odnawianym automatycznie. W tym stanie wszystkie elementy są wstrzymane. |
SUBSCRIPTION_STATE_IN_GRACE_PERIOD |
Subskrypcja jest w okresie prolongaty. Stan jest dostępny tylko wtedy, gdy subskrypcja jest abonamentem odnawianym automatycznie. W tym stanie wszystkie produkty znajdują się w okresie prolongaty. |
SUBSCRIPTION_STATE_ON_HOLD |
Subskrypcja jest wstrzymana (zawieszona). Stan jest dostępny tylko wtedy, gdy subskrypcja jest abonamentem odnawianym automatycznie. W tym stanie wszystkie elementy są wstrzymane. |
SUBSCRIPTION_STATE_CANCELED |
Subskrypcja została anulowana, ale jeszcze nie wygasła. Stan jest dostępny tylko wtedy, gdy subskrypcja jest abonamentem odnawianym automatycznie. Wszystkie elementy mają wartość autoRenewEnabled ustawioną na false. |
SUBSCRIPTION_STATE_EXPIRED |
Subskrypcja wygasła. Wszystkie produkty mają wartość expiryTime w przeszłości. |
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED |
Oczekująca transakcja subskrypcji została anulowana. Jeśli ten oczekujący zakup dotyczył istniejącej subskrypcji, użyj elementulinkedPurchaseToken, aby pobrać bieżący stan tej subskrypcji. |
PausedStateContext
Informacje o subskrypcji, która jest wstrzymana.
Zapis JSON |
---|
{ "autoResumeTime": string } |
Pola | |
---|---|
autoResumeTime |
Godzina, o której subskrypcja zostanie automatycznie wznowiona. Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
CanceledStateContext
Informacje dotyczące subskrypcji w stanie SUBSCRIPTION_STATE_CANCELED lub SUBSCRIPTION_STATE_EXPIRED.
Zapis JSON |
---|
{ // Union field |
Pola | |
---|---|
Pole sumy cancellation_reason . Powód anulowania subskrypcji. cancellation_reason może być tylko jedną z tych wartości: |
|
userInitiatedCancellation |
Subskrypcja została anulowana przez użytkownika. |
systemInitiatedCancellation |
Subskrypcja została anulowana przez system, np. z powodu problemu z płatnościami. |
developerInitiatedCancellation |
Subskrypcja została anulowana przez dewelopera. |
replacementCancellation |
Subskrypcja została zastąpiona przez nową subskrypcję. |
UserInitiatedCancellation
Informacje dotyczące anulowania zainicjowanych przez użytkowników.
Zapis JSON |
---|
{
"cancelSurveyResult": {
object ( |
Pola | |
---|---|
cancelSurveyResult |
Informacje podane przez użytkownika podczas anulowania subskrypcji (ankieta dotycząca przyczyny anulowania). |
cancelTime |
Godzina anulowania subskrypcji przez użytkownika. Po upływie tego czasu użytkownik może nadal mieć dostęp do subskrypcji. Użyj parametru lineItems.expiry_time, aby sprawdzić, czy użytkownik nadal ma dostęp. Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
CancelSurveyResult
Wynik ankiety dotyczącej anulowania w przypadku anulowania subskrypcji przez użytkownika.
Zapis JSON |
---|
{
"reason": enum ( |
Pola | |
---|---|
reason |
Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania. |
reasonUserInput |
Ustawiono tylko dla: CANCEL_SURVEY_REASON_OTHERS. To jest swobodna odpowiedź użytkownika na ankietę. |
CancelSurveyReason
Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania.
Wartości w polu enum | |
---|---|
CANCEL_SURVEY_REASON_UNSPECIFIED |
Nieokreślony powód anulowania ankiety. |
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE |
Niewystarczające wykorzystanie subskrypcji. |
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES |
Problemy techniczne podczas korzystania z aplikacji. |
CANCEL_SURVEY_REASON_COST_RELATED |
Problemy związane z kosztami. |
CANCEL_SURVEY_REASON_FOUND_BETTER_APP |
użytkownik znalazł lepszą aplikację; |
CANCEL_SURVEY_REASON_OTHERS |
Inne powody. |
SystemInitiatedCancellation
Ten typ nie ma żadnych pól.
Informacje dotyczące anulowania zainicjowanych przez system Google.
DeveloperInitiatedCancellation
Ten typ nie ma żadnych pól.
Informacje dotyczące anulowania zainicjowanych przez deweloperów.
ReplacementCancellation
Ten typ nie ma żadnych pól.
Informacje dotyczące anulowania subskrypcji spowodowanych zastąpieniem subskrypcji.
TestPurchase
Ten typ nie ma żadnych pól.
Określa, czy zakup subskrypcji jest zakupem testowym.
AcknowledgementState
Możliwe stany potwierdzenia subskrypcji.
Wartości w polu enum | |
---|---|
ACKNOWLEDGEMENT_STATE_UNSPECIFIED |
Nieokreślony stan potwierdzenia. |
ACKNOWLEDGEMENT_STATE_PENDING |
Subskrypcja nie została jeszcze potwierdzona. |
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED |
Subskrypcja została potwierdzona. |
ExternalAccountIdentifiers
Identyfikator konta użytkownika w usłudze innej firmy.
Zapis JSON |
---|
{ "externalAccountId": string, "obfuscatedExternalAccountId": string, "obfuscatedExternalProfileId": string } |
Pola | |
---|---|
externalAccountId |
Identyfikator konta użytkownika w usłudze innej firmy. Widoczny tylko wtedy, gdy połączenie kont miało miejsce w ramach procesu zakupu subskrypcji. |
obfuscatedExternalAccountId |
Zaciemniona wersja identyfikatora, który jest jednoznacznie powiązany z kontem użytkownika w Twojej aplikacji. Widoczny w przypadku tych zakupów: * Jeśli połączenie kont miało miejsce w ramach procesu zakupu subskrypcji. * Zostały one określone za pomocą adresu https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid podczas zakupu. |
obfuscatedExternalProfileId |
Zaciemniona wersja identyfikatora, która jest w sposób unikalny powiązany z profilem użytkownika w Twojej aplikacji. Występuje tylko wtedy, gdy został podany za pomocą funkcji https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid podczas zakupu. |
SubscribeWithGoogleInfo
Informacje związane z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”.
Zapis JSON |
---|
{ "profileId": string, "profileName": string, "emailAddress": string, "givenName": string, "familyName": string } |
Pola | |
---|---|
profileId |
Identyfikator profilu Google użytkownika w momencie zakupu subskrypcji. |
profileName |
Nazwa profilu użytkownika w momencie zakupu subskrypcji. |
emailAddress |
Adres e-mail użytkownika w momencie zakupu subskrypcji. |
givenName |
Nazwa użytkownika w momencie zakupu subskrypcji. |
familyName |
Nazwisko użytkownika w momencie zakupu subskrypcji. |
SubscriptionPurchaseLineItem
Informacje na poziomie produktu dotyczące zakupu subskrypcji.
Zapis JSON |
---|
{ "productId": string, "expiryTime": string, // Union field |
Pola | |
---|---|
productId |
Identyfikator zakupionego produktu (np. „month001”). |
expiryTime |
Czas wygaśnięcia lub wygaśnięcia subskrypcji, chyba że dostęp zostanie przedłużony (na przykład zostanie odnowiona). Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
Pole sumy plan_type . Typ abonamentu. plan_type może być tylko jedną z tych wartości: |
|
autoRenewingPlan |
Produkt jest odnawiany automatycznie. |
prepaidPlan |
Produkt jest opłacany z góry. |
offerDetails |
Szczegóły oferty dotyczące tego produktu. |
Pole sumy deferred_item_change . To pole jest obecne, gdy element ma odroczoną zmianę. Można je usunąć lub zastąpić. deferred_item_change może być tylko jedną z tych wartości: |
|
deferredItemReplacement |
Informacje na temat odroczonej wymiany produktu. |
AutoRenewingPlan
Informacje dotyczące abonamentu, który jest automatycznie odnawiany.
Zapis JSON |
---|
{ "autoRenewEnabled": boolean, "priceChangeDetails": { object ( |
Pola | |
---|---|
autoRenewEnabled |
Jeśli subskrypcja jest obecnie ustawiona na automatyczne odnawianie, np. użytkownik nie ją anulował |
priceChangeDetails |
Informacje o ostatniej zmianie ceny produktu od momentu zarejestrowania się w subskrypcji. |
installmentDetails |
Zobowiązanie z abonamentem ratalnym i informacje o stanie dotyczące abonamentu odnawianego automatycznie. |
SubscriptionItemPriceChangeDetails
Informacje związane ze zmianą ceny elementu subskrypcji.
Zapis JSON |
---|
{ "newPrice": { object ( |
Pola | |
---|---|
newPrice |
Nowa cena cykliczna subskrypcji. |
priceChangeMode |
Tryb zmiany ceny określa, jak zmienia się cena produktu w subskrypcji. |
priceChangeState |
Podaj, w jakiej cenie jest obecnie zmieniona cena. |
expectedNewPriceChargeTime |
Termin odnowienia, w którym zmiana ceny zacznie obowiązywać dla użytkownika. Może się ona zmienić(w przyszłości) z powodu przesunięć czasu odnowienia, np. wstrzymania. Pole jest wypełniane tylko wtedy, gdy zmiana ceny nie została zastosowana. Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
PriceChangeMode
Tryb zmiany ceny.
Wartości w polu enum | |
---|---|
PRICE_CHANGE_MODE_UNSPECIFIED |
Tryb zmiany ceny nieokreślony. Tej wartości nie należy nigdy ustawiać. |
PRICE_DECREASE |
jeśli cena subskrypcji spada. |
PRICE_INCREASE |
Jeśli cena subskrypcji wzrośnie, a użytkownik będzie musiał ją zaakceptować. |
OPT_OUT_PRICE_INCREASE |
Jeśli po włączeniu trybu rezygnacji cena subskrypcji wzrasta. |
PriceChangeState
Stan zmiany ceny.
Wartości w polu enum | |
---|---|
PRICE_CHANGE_STATE_UNSPECIFIED |
Nie określono stanu zmiany ceny. Tej wartości nie należy używać. |
OUTSTANDING |
Oczekiwanie na zgodę użytkownika na zmianę ceny. |
CONFIRMED |
Potwierdzono, że zmiana ceny nastąpi w przypadku użytkownika. |
APPLIED |
Zmiana ceny została zastosowana, tzn. użytkownik zaczął płacić nową cenę. |
InstallmentPlan
Informacje dotyczące planu rat.
Zapis JSON |
---|
{
"initialCommittedPaymentsCount": integer,
"subsequentCommittedPaymentsCount": integer,
"remainingCommittedPaymentsCount": integer,
"pendingCancellation": {
object ( |
Pola | |
---|---|
initialCommittedPaymentsCount |
Łączna liczba płatności, do których użytkownik zobowiązał się początkowo. |
subsequentCommittedPaymentsCount |
Łączna liczba płatności, do których zobowiązuje się użytkownik po każdym okresie zobowiązania. Brak wartości oznacza, że po początkowym zobowiązaniem abonament zostanie przywrócony do normalnej subskrypcji automatycznego odnawiania. |
remainingCommittedPaymentsCount |
Łączna liczba pozostałych zobowiązań do spłacenia w tym cyklu odnowienia. |
pendingCancellation |
Jeśli występuje, ten plan ratalny oczekuje na anulowanie. Anulowanie nastąpi dopiero wtedy, gdy użytkownik zrealizuje wszystkie zobowiązania w ramach zobowiązania. |
PendingCancellation
Ten typ nie ma żadnych pól.
Wskazuje ona, czy plan ratalny oczekuje na anulowanie. Anulowanie nastąpi dopiero wtedy, gdy użytkownik zrealizuje wszystkie zobowiązania w ramach zobowiązania.
PrepaidPlan
Informacje o abonamencie przedpłaconym.
Zapis JSON |
---|
{ "allowExtendAfterTime": string } |
Pola | |
---|---|
allowExtendAfterTime |
Jeśli ten atrybut jest podany, jest to czas, po którym będzie można kupować doładowania w ramach abonamentu przedpłaconego. nie występuje w przypadku wygasłych abonamentów przedpłaconych, Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
OfferDetails
Szczegółowe informacje o ofercie związanej z elementem zamówienia umożliwiającym zakup.
Zapis JSON |
---|
{ "offerTags": [ string ], "basePlanId": string, "offerId": string } |
Pola | |
---|---|
offerTags[] |
Najnowsze tagi oferty powiązane z ofertą. Obejmuje tagi odziedziczone z abonamentu podstawowego. |
basePlanId |
Identyfikator abonamentu podstawowego. Widoczne w przypadku wszystkich abonamentów podstawowych i ofert. |
offerId |
Identyfikator oferty. Widoczne tylko w przypadku ofert z rabatem. |
DeferredItemReplacement
Informacje dotyczące odroczonej wymiany produktu.
Zapis JSON |
---|
{ "productId": string } |
Pola | |
---|---|
productId |
Identyfikator productId zastąpi istniejący identyfikator produktu. |
Metody |
|
---|---|
|
Uzyskiwanie metadanych subskrypcji |
|
Cofnąć zakup subskrypcji użytkownika. |