Integraciones de análisis

Adapty envía todos los eventos de suscripción a servicios de análisis como Amplitude, Mixpanel y AppMetrica. También podemos enviar eventos a tu servidor mediante la integración con webhook. Lo mejor de todo es que no tienes que encargarte de enviar ningún evento: nosotros lo hacemos por ti. Solo asegúrate de configurar la integración en el Adapty Dashboard.

Adapty admite la integración con los siguientes servicios de análisis de terceros:

Note

¿No ves tu proveedor de análisis?

¡Cuéntanos! Crea una solicitud de función y lo consideraremos.

Propiedades del evento

Los eventos de webhook se envían en formato JSON. Todos los eventos siguen la misma estructura, pero sus campos varían según el tipo de evento, el store y tu configuración específica.

Note

Adapty convierte otras divisas a USD utilizando el tipo de cambio de currencylayer.com (actualizado cada 8 horas). El tipo se fija en el momento de la transacción — los cambios futuros no afectan al resultado de la conversión.

PropiedadTipoDescripción
profile_iduuidID de usuario de Adapty.
currencystrMoneda local (por defecto USD).
price_usdfloatPrecio del producto antes de la comisión de Apple/Google. Ingresos.
proceeds_usdfloatPrecio del producto después de la comisión de Apple/Google. Ingresos netos.
net_revenue_usdfloatIngresos netos (ingresos después de la comisión de Apple/Google e impuestos) en USD. Puede estar vacío.
price_localfloatPrecio del producto antes de la comisión de Apple/Google en moneda local. Ingresos.
proceeds_localfloatPrecio del producto después de la comisión de Apple/Google en moneda local. Ingresos netos.
transaction_idstrIdentificador único de una transacción, como una compra o renovación.
original_transaction_idstrIdentificador de la transacción de la compra original.
purchase_dateISO 8601 dateFecha y hora de la compra del producto.
original_purchase_dateISO 8601 dateFecha y hora de la compra original.
environmentstrPuede ser Sandbox o Production.
vendor_product_idstrID del producto en Apple App Store, Google Play Store o Stripe.
base_plan_idstrID del plan base en Google Play Store o ID de precio en Stripe.
event_datetimeISO 8601 dateFecha y hora del evento.
storestrPuede ser app_store o play_store.
trial_durationstrDuración del período de prueba en días. Se envía con el formato ” days”, por ejemplo, “7 days”.
cancellation_reasonstr

Motivo por el que el usuario canceló una suscripción.

Puede ser

iOS & Android

voluntarily_cancelled, billing_error, refund

iOS

price_increase, product_was_not_available, unknown

Android

new_subscription_replace, cancelled_by_developer

subscription_expires_atISO 8601 dateFecha de expiración de la suscripción. Normalmente en el futuro.
consecutive_paymentsintNúmero de períodos consecutivos sin interrupciones durante los que un usuario está suscrito. Incluye el período actual.
rate_after_first_yearboolBooleano que indica que la suscripción cumple los requisitos para una comisión reducida (normalmente el 15%) después de un año de renovaciones continuas. Las comisiones varían según la elegibilidad del programa y el país. Consulta Comisiones e impuestos del store para más detalles.
promotional_offer_idstrID de la oferta promocional tal como aparece en la sección de productos del Adapty Dashboard.
store_offer_categorystrPuede ser introductory o promotional.
store_offer_discount_typestrPuede ser free_trial, pay_as_you_go o pay_up_front.
paywall_namestrNombre del paywall desde el que se originó la transacción.
paywall_revisionintRevisión del paywall desde el que se originó la transacción. El valor se establece en 1.
developer_idstrID de desarrollador (SDK) del placement desde el que se originó la transacción.
ab_test_namestrNombre de la prueba A/B desde la que se originó la transacción.
ab_test_revisionintRevisión de la prueba A/B desde la que se originó la transacción. El valor se establece en 1.
cohort_namestrNombre de la audiencia a la que pertenece el perfil.
profile_event_iduuidID de evento único que puede usarse para deduplicación.
store_countrystrEl país que nos envía el store.
profile_ip_addressstrIP del perfil (puede ser IPv4 o IPv6, con preferencia por IPv4 cuando está disponible). Se actualiza cada vez que cambia la IP del dispositivo.
profile_countrystrDeterminado por Adapty a partir de la IP del perfil.
profile_total_revenue_usdfloatIngresos totales del perfil, incluidos los reembolsos.
variation_iduuidID único del paywall donde se realizó la compra.
access_level_idstrID del nivel de acceso de pago.
is_activeboolBooleano que indica si el nivel de acceso de pago está activo para el perfil.
will_renewboolBooleano que indica si el nivel de acceso de pago se renovará.
is_refundboolBooleano que indica si la transacción ha sido reembolsada.
is_lifetimeboolBooleano que indica si el nivel de acceso de pago es de por vida.
is_in_grace_periodboolBooleano que indica si el perfil está en período de gracia.
starts_atISO 8601 dateFecha y hora en que el nivel de acceso de pago comienza para el usuario.
renewed_atISO 8601 dateFecha y hora en que se inició más recientemente el período actual del acceso de pago. Hasta la primera renovación, coincide con activated_at.
expires_atISO 8601 dateFecha y hora en que expirará el acceso de pago.
activated_atISO 8601 dateFecha y hora en que se activó el acceso de pago.
billing_issue_detected_atISO 8601 dateFecha y hora del problema de facturación.
profile_has_access_levelBoolBooleano que indica si el perfil tiene un nivel de acceso activo (solo Webhook).

Cada evento incluye las siguientes propiedades:

transaction_id, original_transaction_id, purchase_date, original_purchase_date, environment, vendor_product_id, event_datetime, store.

Además, algunos eventos tienen propiedades adicionales. Para los eventos subscription_refunded y non_subscription_purchase_refunded, es obligatorio proporcionar los valores de price_usd y proceeds_usd como propiedades adicionales.

Nombre del eventoPropiedades
subscription_initial_purchaseprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
subscription_renewedprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
subscription_cancelledcancellation_reason, trial_duration
trial_startedsubscription_expires_at, trial_duration
trial_convertedprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
trial_cancelledcancellation_reason, trial_duration
non_subscription_purchaseprice_usd, proceeds_usd
billing_issue_detectedsubscription_expires_at, trial_duration
entered_grace_periodsubscription_expires_at, trial_duration

Ejemplo de evento

{
    "price_usd": 9.99,
    "proceeds_usd": 6.99,
    "transaction_id": "1000000628581600",
    "original_transaction_id": "1000000628581600",
    "purchase_date": "2020-02-18T18:40:22.000000+0000",
    "original_purchase_date": "2020-02-18T18:40:22.000000+0000",
    "environment": "Sandbox",
    "vendor_product_id": "premium",
    "event_datetime": "2020-02-18T18:40:22.000000+0000",
    "store": "app_store"
}

Adapty envía eventos a tu servidor y a sistemas de analítica de terceros.

La propiedad profile_ip_address se sincroniza con la IP actual del dispositivo. Cada vez que los servidores de Adapty reciben información del SDK, la IP se actualizará si difiere de la que tenemos registrada.

Configurar el identificador del perfil

  • Configura el identificador del perfil para la analítica seleccionada usando las instrucciones para instrucciones para configurar atributos de usuario en tu app .
Warning

Evitar duplicados

No olvides desactivar el envío de eventos de suscripción desde los dispositivos y tu servidor para evitar duplicados.

Deshabilitar la analítica externa para un cliente específico

Es posible que quieras dejar de enviar eventos de analítica para un cliente concreto. Esto es útil si tu app ofrece la opción de no participar en servicios de analítica.

Para deshabilitar la analítica externa de un cliente, usa el método updateProfile(). Crea un objeto AdaptyProfileParameters.Builder y establece el valor correspondiente.
Cuando la analítica externa está bloqueada, Adapty no enviará ningún evento a ninguna integración para ese usuario específico. Si quieres deshabilitar una integración para todos los usuarios de tu app, simplemente desactívala en el Adapty Dashboard.

Warning

Bloquear el análisis externo detiene la entrega de eventos a todas las integraciones para este usuario, incluidos los webhooks personalizados. No lo uses si tu backend depende de eventos de webhook para gestionar el acceso de este usuario.

La configuración no es retroactiva: los eventos creados antes de activarla se siguen entregando. Tampoco afecta al análisis propio de Adapty: las transacciones del usuario siguen contando en los gráficos del dashboard.

Deshabilitar la recopilación de identificadores publicitarios