
Hola, soy Renat de Apphud . Si tiene una aplicación con suscripciones auto-renovables o va a lanzar su primera aplicación con suscripciones, tarde o temprano se enfrentará a la pregunta de cómo transferir correctamente los ingresos de las suscripciones a sus análisis. Hablemos de eso.
¿Por qué necesito considerar los ingresos por ventas de suscripciones?
Los ingresos por suscripción deben considerarse para enviarlos a los sistemas de análisis y atribución de productos que no saben cómo hacer esto: Amplitud, Mixpanel, AppsFlyer, Branch, Adjust. Su servidor será útil para que pueda rastrear eventos de suscripción: conversiones, renovaciones, cancelaciones y enviarlos a sus análisis. Desafortunadamente, no todos los analistas de productos admiten la API de servidor a servidor. Por ejemplo, Firebase o Flurry. No tienen una API para enviar eventos desde su servidor y no admiten suscripciones de seguimiento. Como dicen, ellos mismos no lo hacen, y no dan a los demás.
En este artículo le diré qué dificultades puede encontrar si decide hacerlo usted mismo.
El análisis de suscripción de App Store Connect no abarca
En general, la analítica en App Store Connect no es analítica en absoluto. Solo puede ver el panorama general: conversiones, número de eventos y retención. Apple ni siquiera afirma ser un competidor completo para los analistas de productos. App Store Connect es primitivo:
- No puede asociar datos con usuarios y fuentes de tráfico.
- no puedes construir tus propios embudos y gráficos;
- Los datos se actualizan una vez al día.

Descripción general de la suscripción a App Store Connect
Por qué enviar ingresos por suscripción desde un dispositivo iOS es una mala idea
El principal problema es que no puede enviar eventos de suscripción cuando la aplicación no se está ejecutando. Los fondos se cargan al comienzo de cada período de suscripción, y no se sabe cuándo el usuario iniciará la aplicación. Esto puede suceder en un día, en una semana o nunca. En este último caso, no se enviará nada.
Tipos de eventos
A primera vista, solo dos eventos son suficientes: el comienzo de la prueba y la cancelación de fondos. De hecho, hay muchos eventos y a menudo ocurren. Puede hacer un conjunto de 5 eventos, o puede hacerlo desde 20. Todo depende de sus necesidades.
El siguiente es un conjunto de muestra de eventos relacionados con la suscripción.
Renovaciones
Extensión regular, activación de prueba, registro de una oferta introductoria y promocional (gratuita y de pago).
Conversión de suscripción regular
Conversión de ofertas promocionales de prueba, introductorias y pagas (gratuitas y pagas).
Vencimiento
vencimiento de una suscripción regular, vencimiento de una versión de prueba, vencimiento de una oferta introductoria pagada, vencimiento de una oferta promocional gratuita, vencimiento de una oferta promocional pagada
Devoluciones
reembolso de una suscripción regular, reembolso de una oferta introductoria pagada, reembolso de una oferta promocional pagada
Otros eventos
habilitar renovación, desactivar renovación, transición al período de gracia, actualizar suscripción
Muchos eventos, ¿verdad? Apphud rastrea 19 tipos de eventos. Puede asignar a cada evento su propio nombre y combinar algunas cancelaciones en un solo evento.
Desafíos a los precios
La mayor dificultad es que el cheque de Apple no indica la cantidad debitada. Quizás Apple algún día agregará esto a la verificación, pero hasta ahora tenemos que manejar las siguientes situaciones manualmente.
Cambio de precio
Al aumentar el costo de la suscripción, el desarrollador puede indicar si debe aplicar nuevos precios para los nuevos suscriptores. Si elige postularse , entonces todo es simple. La suscripción simplemente caduca si el usuario se ha negado a aumentar el precio. Y si elige no presentar una solicitud , entonces para los suscriptores antiguos es necesario usar los precios a los que se suscribieron inicialmente. StoreKit no devuelve información sobre el precio al que se ha suscrito el usuario, por lo que debe almacenar el precio para cada usuario en algún lugar.
Cambio de suscripción
Al suscribirse, el usuario mismo puede cambiar su duración y precio en la configuración de suscripción en la aplicación App Store. Debe verificar el identificador del producto al renovar la suscripción y obtener el precio correspondiente. Hay tres tipos de cambios de suscripción: downgrade, cross-grade y upgrade. Sobre esto, escribimos un artículo separado sobre Habr , también puede leer la documentación oficial aquí .
Devolver parte de suscripción no utilizada
Si, pasa. Para los grados cruzados y las actualizaciones de suscripción, la parte paga no utilizada se devuelve al usuario y el costo de la nueva suscripción se cobra de inmediato.

Un ejemplo de un usuario en Apphud que ha cambiado su suscripción con la devolución de una parte no utilizada
Diferentes precios para diferentes países.
En la App Store, Connect puede crear diferentes precios para una suscripción para diferentes países. Por lo tanto, debe almacenar los precios de cada país por separado y usar el precio correspondiente al país del usuario.
Diferentes monedas
No todos los analistas de productos admiten la conversión de divisas. Es necesario convertir los precios a la moneda base (por ejemplo, USD) y usarlo solo en todas partes. En Apphud, actualizamos regularmente los tipos de cambio utilizando los tipos de cambio abiertos .
Comisión de manzana
La comisión de Apple es del 30%. Pero después de un año de usar la suscripción, la comisión de Apple se reduce al 15%. Un matiz importante: las interrupciones en la suscripción por más de 60 días restablecen la fecha de uso continuo.
La oración introductoria no es necesariamente introductoria
Esto significa que las ofertas introductorias de prueba y de pago pueden ser no solo al comienzo de la suscripción, sino que también se pueden emitir al regresar a la suscripción, si el usuario no ha elaborado la oferta introductoria antes.
Precios de oferta de lanzamiento
Es necesario almacenar los precios y el tipo de ofertas introductorias para cada país en el servidor: prueba, prepago o pago tal como se utiliza. Lea más sobre oraciones introductorias aquí .
Las ofertas promocionales pueden alternarse y reemplazarse entre sí, ya que se pueden usar un número ilimitado de veces. Es necesario almacenar no solo el precio de la suscripción principal, sino también los precios de todas las ofertas promocionales de cada país. Lea más sobre ofertas promocionales aquí .

Un ejemplo de un usuario en Apphud que se inscribió con una oferta introductoria y luego aprovechó una oferta promocional.
Devoluciones
Es necesario calcular las transacciones para las cuales se realizó la devolución y enviar cantidades negativas a los analistas.
Determinación de la ID de usuario cuando se inicia desde otro dispositivo.
El usuario puede iniciar la aplicación desde otro dispositivo. Es importante determinar correctamente la ID de usuario con la que se envían los datos al análisis. En algunos casos, tendrá que combinar usuarios en el servidor. Las renovaciones deben enviarse con la identificación de usuario correcta.
Almacenamiento de cheques de usuario y cheques programados
Finalmente, debe guardar los cheques de los usuarios y verificarlos antes de la fecha de vencimiento esperada y para los eventos que Apple envía en sus notificaciones.
Integraciones en Apphud
Una de las funciones de Apphud es la integración, que permite enviar eventos de suscripción a análisis de productos a través de nuestro servidor.
Integraciones de analistas de producto
Para permitir la integración con Amplitude o Mixpanel , debe agregar una clave API en la configuración de Apphud.
Después de agregar integración a sus análisis, vendrán eventos en tiempo real. Puede encontrar ARPU, MRR, tasas de conversión de prueba, cancelar la suscripción, etc. Y, por supuesto, asociar todo esto con sus propios eventos dentro de la aplicación. Además, los indicadores para cada usuario estarán disponibles para usted: la cantidad gastada por él, el número de transacciones y otros.

Usuario de ejemplo en Mixpanel después de agregar integración en Apphud
Integración con sistemas de atribución
Si está promocionando su aplicación o planea hacerlo, la integración de Apphud con AppsFlyer o Branch lo ayudará a rastrear la efectividad de sus campañas publicitarias. Puede comparar canales de tráfico por ingresos totales de suscripciones y otras métricas.

Ingresos de suscripción de diferentes canales de tráfico en Branch
Integraciones con mensajería instantánea.
También puede recibir información sobre nuevas pruebas o renovaciones en tiempo real en Slack o Telegram . La integración no llevará más de un minuto.
Conclusión
Es difícil calcular los ingresos exactos de las suscripciones usted mismo. Además de tener su propio servidor, deberá calcular correctamente la cantidad cobrada. Para la implementación, pasará mucho tiempo y recursos que vale la pena gastar en mejorar el producto. Apphud lo ayudará a calcular correctamente los ingresos de las suscripciones y enviarlos a sus análisis.