- Zasób: SubscriptionPurchase
- IntroductoryPriceInfo
- SubscriptionCancelSurveyResult
- SubscriptionPriceChange
- Metody
Zasób: SubscriptionPurchase
Zasób SubscriptionPurchase określa stan zakupu subskrypcji przez użytkownika.
Zapis JSON |
---|
{ "kind": string, "startTimeMillis": string, "expiryTimeMillis": string, "autoResumeTimeMillis": string, "autoRenewing": boolean, "priceCurrencyCode": string, "priceAmountMicros": string, "introductoryPriceInfo": { object ( |
Pola | |
---|---|
kind |
Ten rodzaj reprezentuje obiekt subscriptionPurchase w usłudze androidpublisher. |
startTimeMillis |
Godzina przyznania subskrypcji (w milisekundach od początku epoki). |
expiryTimeMillis |
Czas wygaśnięcia subskrypcji (w milisekundach od początku epoki). |
autoResumeTimeMillis |
Czas, w którym subskrypcja zostanie automatycznie wznowiona (w milisekundach od początku epoki). Jest dostępna tylko wtedy, gdy użytkownik poprosił o wstrzymanie subskrypcji. |
autoRenewing |
Określa, czy subskrypcja ma być automatycznie odnawiana, gdy nadejdzie bieżąca data ważności. |
priceCurrencyCode |
Kod waluty ceny subskrypcji w formacie ISO 4217. Jeśli na przykład cena jest podana w funtach brytyjskich, priceCurrencyCode ma wartość „GBP”. |
priceAmountMicros |
Cena subskrypcji, W krajach bez podatku cena nie zawiera podatku. W krajach z podatkiem cena zawiera podatek. Cena jest wyrażona w mikrojednostkach, gdzie 1 000 000 mikrojednostek odpowiada jednej jednostce waluty. Jeśli na przykład cena subskrypcji to 1, 99 EUR, priceAmountMicros to 1990000. |
introductoryPriceInfo |
informacje o cenie początkowej subskrypcji; Jest dostępna tylko wtedy, gdy subskrypcja została kupiona w cenie początkowej. To pole nie wskazuje, że subskrypcja jest obecnie w okresie ceny początkowej. |
countryCode |
Kod kraju lub regionu rozliczenia zgodnie ze standardem ISO 3166-1 alfa-2 w momencie przyznania subskrypcji. |
developerPayload |
Określony przez dewelopera ciąg znaków, który zawiera dodatkowe informacje o zamówieniu. |
paymentState |
Stan płatności za subskrypcję. Możliwe wartości to: 0. Płatność oczekująca 1. Płatność otrzymana 2. Bezpłatny okres próbny 3. Oczekuje na odroczenie Nieobecny w przypadku anulowanych, wygasłych subskrypcji. |
cancelReason |
Przyczyna anulowania subskrypcji lub nieodnawiania jej automatycznie. Możliwe wartości to: 0. Użytkownik anulował subskrypcję 1. Subskrypcja została anulowana przez system, na przykład z powodu problemu z płatnością 2. Subskrypcja została zastąpiona nową. 3. Subskrypcja została anulowana przez dewelopera |
userCancellationTimeMillis |
Godzina anulowania subskrypcji przez użytkownika (w milisekundach od początku epoki). Występuje tylko wtedy, gdy parametr cancelReason ma wartość 0. |
cancelSurveyResult |
Informacje podane przez użytkownika podczas procesu anulowania subskrypcji (ankieta dotycząca przyczyny anulowania). |
orderId |
Identyfikator ostatniego zamówienia cyklicznego powiązanego z zakupem subskrypcji. Jeśli subskrypcja została anulowana z powodu odrzucenia płatności, będzie to identyfikator zamówienia z tego zamówienia. |
linkedPurchaseToken |
Token zakupu pierwotnego zakupu, jeśli ta subskrypcja jest jedną z tych wartości: 0. Ponowna rejestracja anulowanej subskrypcji, która jeszcze nie wygasła. 1. Przechodzenie na wyższą lub niższą wersję usługi z poprzedniej subskrypcji Załóżmy na przykład, że użytkownik po raz pierwszy zarejestrował się i otrzymał token zakupu X. Wtedy użytkownik anuluje subskrypcję i podda ją ponownej rejestracji (przed wygaśnięciem subskrypcji), a Ty otrzymasz token zakupu Y. W końcu użytkownik przejdzie na wyższą wersję i otrzyma token zakupu Z. Jeśli wywołujesz ten interfejs API z tokenem zakupu Z, to pole będzie miało wartość Y. Jeśli wywołujesz ten interfejs API z tokenem zakupu Y, to pole będzie miało wartość X. Jeśli wywołujesz ten interfejs API za pomocą tokena zakupu X, to pole nie zostanie ustawione. |
purchaseType |
Typ zakupu subskrypcji. To pole jest ustawiane tylko wtedy, gdy zakupu nie dokonano za pomocą standardowego procesu rozliczeń w aplikacji. Możliwe wartości to: 0. Test (np. kupiony na koncie testowania licencji) 1. Promocja (np. zakup przy użyciu kodu promocyjnego) |
priceChange |
Najnowsze dostępne informacje o zmianach cen. Jest widoczna tylko wtedy, gdy nastąpi nadchodząca zmiana ceny subskrypcji, która nie została jeszcze zastosowana. Gdy subskrypcja zostanie odnowiona z nową ceną lub anulowana, informacje o zmianie ceny nie zostaną zwrócone. |
profileName |
Nazwa profilu użytkownika w momencie zakupu subskrypcji. Dostępne tylko w przypadku zakupów dokonanych za pomocą funkcji Subskrybuj z Google. |
emailAddress |
Adres e-mail użytkownika w momencie zakupu subskrypcji. Dostępne tylko w przypadku zakupów dokonanych za pomocą funkcji Subskrybuj z Google. |
givenName |
Nazwa użytkownika w momencie zakupu subskrypcji. Dostępne tylko w przypadku zakupów dokonanych za pomocą funkcji Subskrybuj z Google. |
familyName |
Nazwisko użytkownika w momencie zakupu subskrypcji. Dostępne tylko w przypadku zakupów dokonanych za pomocą funkcji Subskrybuj z Google. |
profileId |
Identyfikator profilu Google użytkownika w momencie zakupu subskrypcji. Dostępne tylko w przypadku zakupów dokonanych za pomocą funkcji Subskrybuj z Google. |
acknowledgementState |
Stan potwierdzenia subskrypcji usługi. Możliwe wartości to: 0. Do momentu potwierdzenia 1. Potwierdzono |
externalAccountId |
Identyfikator konta użytkownika w usłudze zewnętrznej. Dostępne tylko wtedy, gdy łączenie kont miało miejsce w ramach procesu zakupu subskrypcji. |
promotionType |
Typ promocji zastosowanej do tego zakupu. To pole jest skonfigurowane tylko wtedy, gdy podczas zakupu subskrypcji obowiązuje promocja. Możliwe wartości to: 0. Kod jednorazowy 1. Kod słowny |
promotionCode |
Kod promocyjny zastosowany przy tym zakupie. To pole jest skonfigurowane tylko wtedy, gdy podczas zakupu subskrypcji została zastosowana promocja na kod słowny. |
obfuscatedExternalAccountId |
Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z kontem użytkownika w Twojej aplikacji. Występuje w przypadku tych zakupów: * Jeśli łączenie kont miało miejsce w ramach procesu zakupu subskrypcji. * Zostały one określone przy użyciu adresu https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid podczas zakupu. |
obfuscatedExternalProfileId |
Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z profilem użytkownika w Twojej aplikacji. Widoczny tylko wtedy, gdy został określony za pomocą https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid podczas zakupu. |
IntroductoryPriceInfo
Zawiera informacje o cenie początkowej subskrypcji.
Zapis JSON |
---|
{ "introductoryPriceCurrencyCode": string, "introductoryPriceAmountMicros": string, "introductoryPricePeriod": string, "introductoryPriceCycles": integer } |
Pola | |
---|---|
introductoryPriceCurrencyCode |
Kod waluty ISO 4217 dla początkowej ceny subskrypcji. Jeśli na przykład cena jest podana w funtach brytyjskich, priceCurrencyCode ma wartość „GBP”. |
introductoryPriceAmountMicros |
Cena początkowa subskrypcji bez podatku. Waluta jest taka sama jak priceCurrencyCode. Cena jest wyrażona w mikrojednostkach, gdzie 1 000 000 mikrojednostek odpowiada jednej jednostce waluty. Jeśli na przykład cena subskrypcji to 1, 99 EUR, priceAmountMicros to 1990000. |
introductoryPricePeriod |
Okres obowiązywania ceny dla nowych użytkowników określony w formacie ISO 8601. Typowe wartości to m.in. „P1W” (1 tydzień), „P1M” (jeden miesiąc), „P3M” (trzy miesiące), „P6M” (6 miesięcy) i „P1Y” (jeden rok). |
introductoryPriceCycles |
Okres rozliczeniowy, w którym można oferować cenę dla nowych użytkowników. |
SubscriptionCancelSurveyResult
Informacje podane przez użytkownika podczas procesu anulowania subskrypcji (ankieta dotycząca przyczyny anulowania).
Zapis JSON |
---|
{ "cancelSurveyReason": integer, "userInputCancelReason": string } |
Pola | |
---|---|
cancelSurveyReason |
Powód anulowania wybrany przez użytkownika w ankiecie. Możliwe wartości to: 0. Inne 1. Nie używam tej usługi zbyt często 2. Problemy techniczne 3. Chodzi o koszty. 4. Udało mi się znaleźć lepszą aplikację |
userInputCancelReason |
Dostosowany powód anulowania podany przez użytkownika. Występuje tylko wtedy, gdy parametr cancelReason ma wartość 0. |
SubscriptionPriceChange
Zawiera informacje o zmianie ceny subskrypcji, które można wykorzystać do kontrolowania ścieżki użytkownika związanej ze zmianą ceny w aplikacji. Może to być prośba o potwierdzenie od użytkownika lub dostosowanie interfejsu pod kątem pomyślnej konwersji.
Zapis JSON |
---|
{
"newPrice": {
object ( |
Pola | |
---|---|
newPrice |
Nowa cena, z którą subskrypcja zostanie odnowiona, jeśli użytkownik zaakceptuje zmianę ceny. |
state |
Obecny stan zmiany ceny. Możliwe wartości to: 0. Oczekujące: stan oczekiwania na zmianę ceny, który jest oczekujący na zaakceptowanie przez użytkownika. W takiej sytuacji możesz opcjonalnie poprosić użytkownika o potwierdzenie za pomocą interfejsu In-App API. 1. Zaakceptowana: stan akceptacji zmiany ceny, z którą subskrypcja będzie odnawiana, chyba że zostanie anulowana. Zmiana ceny zacznie obowiązywać w dniu odnowienia subskrypcji. Pamiętaj, że zmiana może nie zostać wprowadzona przy następnym odnowieniu subskrypcji. |
Metody |
|
---|---|
|
Potwierdzenie zakupu subskrypcji. |
|
Anuluje zakup subskrypcji użytkownika. |
|
Odrocza zakup subskrypcji użytkownika do określonej daty ważności w przyszłości. |
|
Sprawdza, czy zakup subskrypcji użytkownika jest prawidłowy, i zwraca czas wygaśnięcia subskrypcji. |
|
Zwraca środki za zakup subskrypcji, ale subskrypcja pozostaje ważna do określonego czasu jej wygaśnięcia i będzie się powtarzała. |
|
Zwraca środki i natychmiast anuluje zakup subskrypcji przez użytkownika. |