- Ресурс: Покупка подписки
- ВводнаяЦенаИнформация
- ПодпискаОтменаОпросРезультат
- ПодпискаЦенаИзменить
- Методы
Ресурс: Покупка подписки
Ресурс SubscriptionPurchase указывает состояние покупки подписки пользователя.
JSON-представление |
---|
{ "kind": string, "startTimeMillis": string, "expiryTimeMillis": string, "autoResumeTimeMillis": string, "autoRenewing": boolean, "priceCurrencyCode": string, "priceAmountMicros": string, "introductoryPriceInfo": { object ( |
Поля | |
---|---|
kind | Этот тип представляет собой объект subscribePurchase в службе androidpublisher. |
startTimeMillis | Время предоставления подписки в миллисекундах с начала Эпохи. |
expiryTimeMillis | Время истечения срока действия подписки (в миллисекундах с момента начала Эпохи). |
autoResumeTimeMillis | Время, когда подписка будет автоматически возобновлена, в миллисекундах с момента начала Эпохи. Присутствует только в том случае, если пользователь запросил приостановку подписки. |
autoRenewing | Будет ли подписка автоматически продлеваться по истечении текущего срока ее действия. |
priceCurrencyCode | Код валюты ISO 4217 для стоимости подписки. Например, если цена указана в британских фунтах стерлингов, параметр PriceCurrencyCode имеет значение «GBP». |
priceAmountMicros | Стоимость подписки. Для стран с льготным налогообложением цена не включает налоги. Для стран с включенным налогом цена включает налог. Цена выражается в микроединицах, где 1 000 000 микроединиц представляют одну единицу валюты. Например, если цена подписки составляет 1,99 евро, ценаAmountMicros равна 1990000. |
introductoryPriceInfo | Вводная информация о цене подписки. Это присутствует только в том случае, если подписка была приобретена по начальной цене. Это поле не указывает на то, что подписка в настоящее время находится в ознакомительном ценовом периоде. |
countryCode | Код страны/региона выставления счетов пользователя по стандарту ISO 3166-1 альфа-2 на момент предоставления подписки. |
developerPayload | Строка, указанная разработчиком, содержащая дополнительную информацию о заказе. |
paymentState | Состояние оплаты подписки. Возможные значения: 0. Ожидается платеж 1. Платеж получен 2. Бесплатная пробная версия 3. Ожидается отложенное обновление/понижение версии. Не присутствует для отмененных подписок с истекшим сроком действия. |
cancelReason | Причина, по которой подписка была отменена или не продлевается автоматически. Возможные значения: 0. Пользователь отменил подписку 1. Подписка была отменена системой, например, из-за проблемы с выставлением счетов 2. Подписка была заменена новой 3. Подписка была отменена разработчиком |
userCancellationTimeMillis | Время, когда подписка была отменена пользователем, в миллисекундах с начала эпохи. Присутствует только в том случае, если cancelReason равен 0. |
cancelSurveyResult | Информация, предоставляемая пользователем при завершении процесса отмены подписки (опрос причины отмены). |
orderId | Идентификатор последнего повторяющегося заказа, связанного с покупкой подписки. Если подписка была отменена из-за отклонения платежа, это будет идентификатор заказа из заказа, в котором платеж отклонен. |
linkedPurchaseToken | Токен покупки исходной покупки, если эта подписка является одной из следующих: 0. Повторная регистрация отмененной, но еще не истекшей подписки 1. Обновление/понижение предыдущей подписки. Например, предположим, что пользователь первоначально регистрируется, и вы получаете токен покупки X, затем пользователь отменяет подписку и проходит процедуру повторной регистрации (до истечения срока действия его подписки), и вы получаете токен покупки Y, и, наконец, пользователь обновляет свою подписку, и вы получаете покупку. токен Z. Если вы вызываете этот API с токеном покупки Z, в этом поле будет установлено значение Y. Если вы вызываете этот API с токеном покупки Y, в этом поле будет установлено значение X. Если вы вызываете этот API с токеном покупки X, это поле не будет установлено. |
purchaseType | Тип приобретения подписки. Это поле заполняется только в том случае, если эта покупка была совершена не с использованием стандартного процесса выставления счетов в приложении. Возможные значения: 0. Тестовая (т. е. приобретена из учетной записи для тестирования лицензии) 1. Промо (т. е. приобретена с использованием промокода) |
priceChange | Самая последняя доступная информация об изменении цен. Это присутствует только в том случае, если предстоящее изменение цены на подписку еще не применено. После продления подписки с новой ценой или ее отмены информация об изменении цены возвращена не будет. |
profileName | Имя профиля пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google». |
emailAddress | Адрес электронной почты пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google». |
givenName | Имя пользователя при покупке подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google». |
familyName | Фамилия пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google». |
profileId | Идентификатор профиля Google пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google». |
acknowledgementState | Состояние подтверждения продукта подписки. Возможные значения: 0. Еще не подтверждено 1. Подтверждено. |
externalAccountId | Идентификатор учетной записи пользователя в стороннем сервисе. Отображается только в том случае, если привязка учетной записи произошла в рамках процесса покупки подписки. |
promotionType | Тип промоакции, примененной к этой покупке. Это поле заполняется только в том случае, если при покупке подписки применялась акция. Возможные значения: 0. Одноразовый код 1. Косметический код. |
promotionCode | Промокод, примененный к этой покупке. Это поле заполняется только в том случае, если при покупке подписки применяется промо-код. |
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 при совершении покупки. |
ВводнаяЦенаИнформация
Содержит вводную информацию о цене подписки.
JSON-представление |
---|
{ "introductoryPriceCurrencyCode": string, "introductoryPriceAmountMicros": string, "introductoryPricePeriod": string, "introductoryPriceCycles": integer } |
Поля | |
---|---|
introductoryPriceCurrencyCode | Код валюты ISO 4217 для начальной цены подписки. Например, если цена указана в британских фунтах стерлингов, параметр PriceCurrencyCode имеет значение «GBP». |
introductoryPriceAmountMicros | Начальная цена подписки без учета налогов. Валюта такая же, как и PriceCurrencyCode. Цена выражается в микроединицах, где 1 000 000 микроединиц представляют одну единицу валюты. Например, если цена подписки составляет 1,99 евро, ценаAmountMicros равна 1990000. |
introductoryPricePeriod | Начальный ценовой период указан в формате ISO 8601. Обычными значениями являются (но не ограничиваются ими) «P1W» (одна неделя), «P1M» (один месяц), «P3M» (три месяца), «P6M» (шесть месяцев) и «P1Y» (один год). |
introductoryPriceCycles | Количество расчетных периодов, в течение которых будут предлагаться начальные цены. |
ПодпискаОтменаОпросРезультат
Информация, предоставляемая пользователем при завершении процесса отмены подписки (опрос причины отмены).
JSON-представление |
---|
{ "cancelSurveyReason": integer, "userInputCancelReason": string } |
Поля | |
---|---|
cancelSurveyReason | Причину отмены, которую пользователь выбрал в опросе. Возможные значения: 0. Другое 1. Я недостаточно пользуюсь этой услугой 2. Технические проблемы 3. Причины, связанные с затратами 4. Я нашел лучшее приложение |
userInputCancelReason | Настроенная пользователем причина отмены ввода. Присутствует только тогда, когда cancelReason равен 0. |
ПодпискаЦенаИзменить
Содержит информацию об изменении цены для подписки, которую можно использовать для управления действиями пользователя при изменении цены в приложении. Это может быть в форме запроса подтверждения от пользователя или адаптации опыта для успешной конверсии.
JSON-представление |
---|
{
"newPrice": {
object ( |
Поля | |
---|---|
newPrice | Новая цена, по которой подписка будет продлена, если изменение цены будет принято пользователем. |
state | Текущее состояние изменения цен. Возможные значения: 0. Выдающееся: состояние ожидания изменения цены, ожидающего согласия пользователя. В этом состоянии вы можете дополнительно запросить подтверждение от пользователя с помощью API внутри приложения. 1. Принято: укажите принятое изменение цены, с которым подписка будет продлена, если она не будет отменена. Изменение цены вступит в силу в будущем, когда подписка будет продлена. Обратите внимание, что это изменение может не произойти при следующем продлении подписки. |
Методы | |
---|---|
| Подтверждает покупку подписки. |
| Отменяет покупку подписки пользователя. |
| Откладывает покупку подписки пользователя до истечения указанного срока в будущем. |
| Проверяет, действительна ли покупка подписки пользователя, и возвращает время ее окончания. |
| Возвращает пользователю оплату за подписку, но подписка остается действующей до истечения срока ее действия и будет продолжать действовать повторно. |
| Возвращает и немедленно отзывает покупку подписки пользователя. |