AppsFlyer
AppsFlyer es una plataforma líder de atribución móvil y analítica de marketing. Es un servicio de terceros que recopila y organiza datos de campañas de marketing, lo que permite a las empresas ver el rendimiento de sus campañas en un solo lugar. Adapty proporciona un conjunto completo de datos que te permite rastrear eventos de suscripción desde los stores en un solo lugar. Con Adapty, puedes ver fácilmente cómo se comportan tus suscriptores, conocer sus preferencias y utilizar esa información para comunicarte con ellos de manera dirigida y efectiva. Por eso, esta integración te permite rastrear eventos de suscripción en AppsFlyer y analizar con precisión cuántos ingresos generan tus campañas.
La integración entre Adapty y AppsFlyer funciona de dos maneras principales.
- Recibir datos de atribución de AppsFlyer Una vez que hayas configurado el envío de la atribución de AppsFlyer a Adapty en el código de tu app, Adapty comenzará a recibir datos de atribución de AppsFlyer. Puedes acceder a estos datos fácilmente y consultarlos en la página del perfil del usuario.
- Envío de eventos de suscripción a AppsFlyer Adapty puede enviar a AppsFlyer todos los eventos de suscripción configurados en tu integración. Así podrás hacer seguimiento de esos eventos desde el dashboard de AppsFlyer, lo que resulta muy útil para evaluar la efectividad de tus campañas publicitarias.
Configurar la integración
Conectar Adapty con AppsFlyer
Para configurar la integración con AppsFlyer:
-
Abre Integrations -> AppsFlyer en el Adapty Dashboard.
-
Activa el interruptor para habilitar la integración.
-
El siguiente paso es configurar las credenciales. Para iOS, encuentra el App ID copiando el Apple ID en App Store Connect (para hacerlo, abre la página de tu app en App Store Connect, ve a la página App Information en la sección General y busca el Apple ID en la parte inferior izquierda de la pantalla).
3.2. Pega el Apple ID copiado en el campo iOS App ID del Adapty Dashboard.
Si utilizas la API 2 de AppsFlyer, debes cambiar a la API 3, ya que AppsFlyer dejará de dar soporte a la versión anterior próximamente. Para hacerlo, en la lista AppsFlyer S2S API, selecciona API 3.
- Para iOS y Android, abre el sitio de AppsFlyer e inicia sesión.
- Haz clic en Your account name -> Security Center en la esquina superior derecha del dashboard.
- En la ventana Manage your account security, haz clic en el botón Manage your AppsFlyer API and S2S tokens.
- Si ya tienes un token S2S, ve al paso 12. Si no lo tienes, haz clic en el botón New token.
-
En la ventana New token, introduce el nombre del token. Este nombre es solo para tu referencia.
-
Elige S2S en la lista Choose type.
-
Haz clic en el botón Create new token para guardar el nuevo token.
-
En la ventana Tokens, copia el token S2S.
-
En el Adapty Dashboard, pega la clave S2S copiada en los campos Dev key for iOS y Dev key for Android.
-
Haz clic en el botón Save para guardar los cambios.
AppsFlyer no tiene modo Sandbox para la integración server2server. Por eso necesitas una aplicación/cuenta diferente en AppsFlyer para el Sandbox Dev Key. Si quieres enviar eventos de sandbox a la misma app, simplemente usa la misma clave para producción y sandbox. :::
Por defecto, Adapty mapea algunos eventos a los eventos estándar de AppsFlyer. Con esta configuración, AppsFlyer puede reenviar los eventos a cada red publicitaria que uses sin configuración adicional. Otro punto importante es que AppsFlyer no admite eventos con más de 26 horas de antigüedad. Por eso, si tienes un evento con más de 26 horas, Adapty lo enviará a AppsFlyer, pero la fecha y hora del evento se reemplazarán por la marca de tiempo actual.
Configurar eventos y etiquetas
Debajo de las credenciales encontrarás tres grupos de eventos que puedes enviar a AppsFlyer desde Adapty. Activa los que necesites. Consulta la lista completa de eventos que ofrece Adapty aquí.
Recomendamos usar los nombres de eventos predeterminados que ofrece Adapty, aunque puedes cambiarlos según tus necesidades.
Adapty enviará los eventos de suscripción a AppsFlyer mediante una integración servidor a servidor, lo que te permitirá ver todos los eventos de suscripción en tu dashboard de AppsFlyer y vincularlos a tus campañas de adquisición.
Conecta tu app con AppsFlyer
Una vez completados los pasos anteriores, llama al método updateAttribution para guardar los datos de atribución y usa Adapty.setIntegrationIdentifier() para establecer el identificador de integración.
Inicializa el SDK de AppsFlyer y espera su callback de UID antes de identificar usuarios en Adapty. De lo contrario, el appsflyer_id se asocia a un perfil anónimo temporal de Adapty creado durante la activación, y no siempre se transfiere al perfil identificado. Cuando esto ocurre, el reenvío de ingresos de AppsFlyer falla silenciosamente.
Estructura del evento
Adapty envía los eventos seleccionados a AppsFlyer mediante una solicitud POST con cuerpo JSON a:
- API v2:
https://api2.appsflyer.com/inappevent/{app_id} - API v3:
https://api3.appsflyer.com/inappevent/{app_id}(recomendado)
Cada evento tiene la siguiente estructura:
{
"appsflyer_id": "1699887556000-6192770",
"eventName": "subscription_renewed",
"eventTime": "2024-03-01 12:00:00",
"eventValue": "{\"af_content_id\":\"yearly.premium.6999\",\"af_order_id\":\"GPA.3383-4699-1373-07113\",\"store_country\":\"US\",\"profile_country\":\"US\",\"af_content_type\":\"in_app\",\"af_revenue\":\"9.9900\",\"af_currency\":\"USD\",\"af_quantity\":\"1\"}",
"os": "17.0.1",
"bundleIdentifier": "com.example.app",
"customer_user_id": "user_12345",
"eventCurrency": "USD",
"ip": "192.168.100.1",
"advertising_id": "00000000-0000-0000-0000-000000000000",
"idfa": "00000000-0000-0000-0000-000000000000",
"idfv": "00000000-0000-0000-0000-000000000000",
"att": "3"
}
It looks like your message was cut off. Could you please share the MDX documentation you’d like me to translate from English to Spanish (es-ES)?
| Parámetro | Tipo | Descripción |
|---|---|---|
appsflyer_id | String | El ID de AppsFlyer (obtenido a través del SDK). |
eventName | String | El nombre del evento en AppsFlyer (mapeado desde el evento de Adapty). |
eventTime | String | Fecha y hora del evento (UTC, formato YYYY-MM-DD HH:MM:SS). |
eventValue | String | Cadena JSON con los detalles del evento (ver más abajo). |
os | String | Versión del sistema operativo. |
bundleIdentifier | String | El bundle ID / nombre de paquete de la aplicación. |
customer_user_id | String | El Customer User ID del usuario. |
eventCurrency | String | Código de moneda (p. ej., “USD”). |
ip | String | Dirección IP del usuario. |
advertising_id | String | Solo Android. Google Advertising ID. |
idfa | String | Solo iOS. ID for Advertisers. |
idfv | String | Solo iOS. ID for Vendors. |
att | String | Solo iOS. Estado de App Tracking Transparency (p. ej., “3” para autorizado). |
El parámetro eventValue es una cadena codificada en JSON que contiene los siguientes campos: | ||
| Parámetro | Tipo | Descripción |
| :------------------ | :------- | :------------------------------------------------------- |
af_content_id | String | El ID del producto en el store. |
af_order_id | String | El ID de transacción original. |
store_country | String | Código de país del usuario en el store. |
profile_country | String | Código de país basado en la IP del usuario. |
af_content_type | String | Siempre in_app si hay ingresos presentes. |
af_revenue | String | Importe de ingresos con formato de 4 decimales. |
af_currency | String | Código de moneda. |
af_quantity | String | Siempre 1 si hay ingresos presentes. |
Solución de problemas
Discrepancia en los ingresos
Si hay una discrepancia en los ingresos entre Adapty y AppsFlyer, puede deberse a que no todos tus usuarios utilizan la versión de la app que incluye el SDK de Adapty. Para garantizar la coherencia de los datos, puedes obligar a tus usuarios a actualizar a una versión de la app que incluya el SDK de Adapty.
Datos de integración faltantes
Si el envío de eventos falla, generalmente se debe a datos de integración faltantes. Para resolver este problema, asegúrate de lo siguiente:
- Tu app tiene instalado el SDK de AppsFlyer.
- Estás llamando al método
getAppsFlyerUID.
Fallo de autenticación
Si recibes el error Failed to authenticate en la consola, puede deberse a una incompatibilidad entre la versión de AppsFlyer y la versión de las credenciales.
Consulta la guía de migración o reemplaza las credenciales por las válidas desde aquí.