REST Resource: purchases.subscriptions

Recurso: SubscriptionPurchase

Un recurso SubscriptionPurchase indica el estado de la compra de una suscripción del usuario.

Representación JSON
{
  "kind": string,
  "startTimeMillis": string,
  "expiryTimeMillis": string,
  "autoResumeTimeMillis": string,
  "autoRenewing": boolean,
  "priceCurrencyCode": string,
  "priceAmountMicros": string,
  "introductoryPriceInfo": {
    object (IntroductoryPriceInfo)
  },
  "countryCode": string,
  "developerPayload": string,
  "paymentState": integer,
  "cancelReason": integer,
  "userCancellationTimeMillis": string,
  "cancelSurveyResult": {
    object (SubscriptionCancelSurveyResult)
  },
  "orderId": string,
  "linkedPurchaseToken": string,
  "purchaseType": integer,
  "priceChange": {
    object (SubscriptionPriceChange)
  },
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string,
  "profileId": string,
  "acknowledgementState": integer,
  "externalAccountId": string,
  "promotionType": integer,
  "promotionCode": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Campos
kind

string

Este tipo representa un objeto subscriptionPurchase del servicio androidpublisher.

startTimeMillis

string (int64 format)

Hora en que se otorgó la suscripción, en milisegundos desde la época.

expiryTimeMillis

string (int64 format)

Es la hora a la que vencerá la suscripción, en milisegundos desde el ciclo.

autoResumeTimeMillis

string (int64 format)

Tiempo en el que se reanudará automáticamente la suscripción, en milisegundos, desde el Época. Solo está presente si el usuario solicitó pausar la suscripción.

autoRenewing

boolean

Si la suscripción se renovará automáticamente cuando alcance su hora de vencimiento actual.

priceCurrencyCode

string

Código de moneda ISO 4217 para el precio de la suscripción. Por ejemplo, si el precio se especifica en libras esterlinas, priceCurrencyCode es "GBP".

priceAmountMicros

string (int64 format)

Precio de la suscripción (para países que no incluyen impuestos), el precio no incluye impuestos. En el caso de los países con impuestos incluidos, el precio incluye impuestos. El precio se expresa en microunidades, donde 1,000,000 microunidades representan una unidad de la moneda. Por ejemplo, si el precio de la suscripción es €1.99, priceAmountMicros es 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

Información de precio de lanzamiento de la suscripción. Esto solo está presente cuando se compró la suscripción con un precio de lanzamiento.

Este campo no indica que la suscripción se encuentre en el período de precios de lanzamiento.

countryCode

string

Código de país/región de facturación ISO 3166-1 alfa-2 del usuario en el momento en que se otorgó la suscripción.

developerPayload

string

Es una string especificada por el desarrollador que contiene información complementaria sobre un pedido.

paymentState

integer

El estado de pago de la suscripción. Los valores posibles son 0. Pago pendiente 1. Pago recibido 2. Prueba gratuita 3. Actualización pendiente o cambio a una versión inferior pendiente

No está presente para las suscripciones canceladas y vencidas.

cancelReason

integer

El motivo por el que se canceló una suscripción o no se renueva automáticamente. Los valores posibles son 0. El usuario canceló la suscripción 1. El sistema canceló la suscripción, por ejemplo, debido a un problema de facturación 2. La suscripción se reemplazó por una nueva 3. El desarrollador canceló la suscripción

userCancellationTimeMillis

string (int64 format)

La hora a la que el usuario canceló la suscripción, en milisegundos desde el ciclo de entrenamiento. Solo está presente si cancelReason es 0.

cancelSurveyResult

object (SubscriptionCancelSurveyResult)

Información que proporciona el usuario cuando completa el flujo de cancelación de la suscripción (encuesta del motivo de cancelación).

orderId

string

El ID de pedido del pedido recurrente más reciente asociado con la compra de la suscripción. Si se canceló la suscripción porque se rechazó el pago, este será el ID del pedido rechazado.

linkedPurchaseToken

string

El token de compra de la compra de origen si esta suscripción es una de las siguientes: 0. Volver a registrarse en una suscripción cancelada que no venció 1. Actualizar una suscripción anterior o pasar a una versión anterior

Por ejemplo, supongamos que un usuario se registró originalmente y usted recibe el token de compra X, luego el usuario cancela y completa el proceso de nuevo registro (antes del vencimiento de su suscripción), y usted recibe el token de compra Y, finalmente el usuario actualiza su suscripción y usted recibe el token de compra Z. Si llamas a esta API con el token de compra Z, este campo se establecerá en Y. Si llamas a esta API con el token de compra Y, este campo se establecerá en X. Si llamas a esta API con el token de compra X, este campo no se establecerá.

purchaseType

integer

Es el tipo de compra de la suscripción. Este campo solo se establece si la compra no se realizó con el flujo de facturación integrada estándar. Los valores posibles son 0. Prueba (es decir, comprada desde una cuenta de prueba de licencia) 1. Promoción (es decir, compra con un código promocional)

priceChange

object (SubscriptionPriceChange)

La información más reciente disponible sobre el cambio de precio Esto está presente solo cuando hay un cambio de precio próximo para que se aplique la suscripción.

Una vez que se renueve la suscripción con el precio nuevo o se cancele, no se mostrará ninguna información sobre el cambio de precio.

profileName

string

Es el nombre de perfil del usuario cuando se compró la suscripción. Presente únicamente para las compras realizadas con "Suscríbete con Google"

emailAddress

string

La dirección de correo electrónico del usuario cuando se compró la suscripción. Presente únicamente para las compras realizadas con "Suscríbete con Google"

givenName

string

Es el nombre del usuario cuando se compró la suscripción. Presente únicamente para las compras realizadas con "Suscríbete con Google"

familyName

string

El nombre de la familia del usuario cuando se compró la suscripción. Presente únicamente para las compras realizadas con "Suscríbete con Google"

profileId

string

El ID de perfil de Google del usuario cuando se compró la suscripción. Presente únicamente para las compras realizadas con "Suscríbete con Google"

acknowledgementState

integer

El estado de confirmación del producto de suscripción. Los valores posibles son 0. Aún no se confirmó 1. Acknowledged

externalAccountId

string

Es el identificador de la cuenta de usuario en el servicio de terceros. Solo está presente si la vinculación de la cuenta se produjo como parte del flujo de compra de la suscripción.

promotionType

integer

Es el tipo de promoción que se aplica a esta compra. Este campo solo se establece si se aplica una promoción cuando se compró la suscripción. Los valores posibles son 0. Código de uso único 1. Código personalizado

promotionCode

string

Es el código promocional que se aplicó en esta compra. Este campo solo se establece si se aplica una promoción de código personalizado cuando se compra la suscripción.

obfuscatedExternalAccountId

string

Es una versión ofuscada del ID que está asociada de forma exclusiva con la cuenta del usuario en tu app. Presenta las siguientes compras: * Si se vinculó la cuenta como parte del flujo de compra de la suscripción. * Se especificó mediante https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#set ofuscadaccountid cuando se realizó la compra.

obfuscatedExternalProfileId

string

Es una versión ofuscada del ID que está asociada de forma exclusiva con el perfil del usuario en tu app. Solo está presente si se especifica con https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#set ofuscadprofileid cuando se realizó la compra.

Información de precio de lanzamiento

Contiene la información del precio de lanzamiento para una suscripción.

Representación JSON
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
Campos
introductoryPriceCurrencyCode

string

Código de moneda ISO 4217 para el precio de lanzamiento. Por ejemplo, si el precio se especifica en libras esterlinas, priceCurrencyCode es "GBP".

introductoryPriceAmountMicros

string (int64 format)

Precio de lanzamiento de la suscripción, sin impuestos. La moneda es la misma que priceCurrencyCode. El precio se expresa en microunidades, donde 1,000,000 microunidades representan una unidad de la moneda. Por ejemplo, si el precio de la suscripción es €1.99, priceAmountMicros es 1990000.

introductoryPricePeriod

string

Período de precio de lanzamiento, que se especifica en formato ISO 8601. Los valores comunes son (pero no se limitan a): “P1W” (una semana), “P1M” (un mes), “P3M” (tres meses), “P6M” (seis meses) y “P1Y” (un año).

introductoryPriceCycles

integer

La cantidad de períodos de facturación para ofrecer precios de lanzamiento.

SuscripciónCancelarSurveyResult

Información que proporciona el usuario cuando completa el flujo de cancelación de la suscripción (encuesta del motivo de cancelación).

Representación JSON
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
Campos
cancelSurveyReason

integer

Es el motivo de cancelación que el usuario eligió en la encuesta. Los valores posibles son 0. Otro 1. No uso este servicio lo suficiente 2. Problemas técnicos 3. Motivos relacionados con el costo 4. Encontré una app mejor

userInputCancelReason

string

Es el motivo personalizado de cancelación del usuario. Solo está presente cuando cancelReason es 0.

Cambio del precio de la suscripción

Contiene la información sobre el cambio de precio para una suscripción que se puede usar para controlar el recorrido del usuario para el cambio de precio en la app. Puede solicitarse la confirmación del usuario o adaptar la experiencia para una conversión exitosa.

Representación JSON
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
Campos
newPrice

object (Price)

El nuevo precio con el que se renovará la suscripción si el usuario acepta el cambio de precio.

state

integer

El estado actual del cambio de precio. Los valores posibles son 0. Extraordinario: Indica el estado de un cambio de precio pendiente hasta que el usuario acepte. En este estado, de manera opcional, puedes buscar la confirmación del usuario mediante la API en la aplicación. 1. Aceptado: indica el cambio de precio aceptado con el que se renovará la suscripción, a menos que se cancele. El cambio de precio entrará en vigencia en una fecha futura, cuando se renueve la suscripción. Ten en cuenta que es posible que el cambio no ocurra cuando se renueve la suscripción.

Métodos

acknowledge

Acepta una compra de suscripción.

cancel

Cancela la compra de la suscripción de un usuario.

defer

Aplaza la compra de la suscripción de un usuario hasta una hora de vencimiento futura especificada.

get

Verifica si la compra de suscripción de un usuario es válida y muestra su hora de vencimiento.

refund

Reembolsa la compra de una suscripción del usuario, pero la suscripción sigue siendo válida hasta su fecha de vencimiento y continuará reproduciéndose.

revoke

Permite realizar un reembolso y revocar de inmediato la compra de una suscripción del usuario.