Integración con Tenjin

Tenjin es una plataforma de atribución y análisis móvil para desarrolladores de apps y marketers. Proporciona herramientas para medir y optimizar campañas de adquisición de usuarios, ofreciendo información detallada sobre el rendimiento de la app y el comportamiento de los usuarios. Con su enfoque transparente y flexible, Tenjin agrega datos de redes publicitarias y stores de aplicaciones, lo que permite a los equipos analizar el ROI, rastrear conversiones y monitorear métricas clave de rendimiento. Al reenviar eventos de suscripción a Tenjin, puedes ver exactamente de dónde provienen las conversiones y qué campañas generan más valor en todos los canales, plataformas y dispositivos. En esencia, los dashboards de Tenjin ofrecen analíticas avanzadas para campañas de marketing.

Al reenviar la atribución de Tenjin a Adapty, enriqueces las analíticas de Adapty con criterios de filtrado adicionales que puedes usar en análisis de cohortes y conversiones.

Esta integración funciona de dos maneras principales:

  1. Recibir datos de atribución de Tenjin Una vez integrado, Adapty recopila datos de atribución de Tenjin. Puedes consultar esta información en la página de perfil del usuario en el Adapty Dashboard.
  2. Enviar eventos de suscripción a Tenjin Adapty envía eventos de compra a Tenjin en tiempo real. Estos eventos ayudan a evaluar la efectividad de tus campañas publicitarias directamente en el dashboard de Tenjin. | Característica de integración | Descripción | | ----------------------------- | ------------------------------------------------------------ | | Frecuencia | Tiempo real | | Dirección de datos |

    Transmisión bidireccional:

    • Eventos de Adapty: Del servidor de Adapty al servidor de Tenjin
    • Atribución de Tenjin: Del SDK de Tenjin al servidor de Adapty
    | | Punto de integración de Adapty |
    • SDKs de Tenjin y Adapty en el código de la app
    • Servidor de Adapty
    |

Configurar la integración

Conectar Adapty con Tenjin

  1. Abre la página Integrations -> Tenjin en el Adapty Dashboard.

  2. Activa el toggle para habilitar la integración.

    tenjin-toggle.webp
  3. Inicia sesión en el Tenjin Dashboard.

  4. Ve a Configuration -> Apps en el menú de navegación.

    tenjin-apps.webp
  5. Selecciona la app de tu plataforma (iOS o Android) y ve a la pestaña App and SDK.

  6. En la pestaña App and SDK, haz clic en Copy en la columna SDK Key. Si todavía no tienes una SDK key, haz clic en el botón Generate SDK Key para crear una.

    tenjin-copy-sdk-key.webp
  7. Vuelve al Adapty Dashboard y pega el SDK Key copiado en el campo correspondiente a tu plataforma:

    • Para apps iOS: pégalo en el campo iOS SDK Key o iOS Sandbox SDK Key
    • Para apps Android: pégalo en el campo Android SDK Key o Android Sandbox SDK Key

    Tenjin no dispone de un modo Sandbox específico para la integración server-to-server. Usa una app de Tenjin separada o la misma clave tanto para eventos de producción como de sandbox.

tenjin-keys.webp
  1. Si tienes apps en ambas plataformas, repite los pasos 5-7 para la otra plataforma.

  2. (opcional) Ajusta la sección How the revenue data should be sent si es necesario. Para una explicación detallada de sus opciones, consulta los Ajustes de integración.

  3. Haz clic en Save para finalizar la configuración.

Adapty enviará ahora los eventos de compra a Tenjin y recibirá datos de atribución. Puedes ajustar el intercambio de eventos en la sección Events names.

Configurar eventos y etiquetas

Tenjin solo acepta eventos de compra y Trial started. En la sección Events names, selecciona qué eventos compartir con Tenjin según tus objetivos de seguimiento.

tenjin-events.webp

Conecta tu app a Tenjin

Usa el método del SDK Adapty.updateAttribution() para obtener datos de atribución de Tenjin y enviarlos a Adapty.

Estructura del evento

Adapty envía los eventos seleccionados a Tenjin según la configuración de la sección Events names en la página de integración de Tenjin. Cada evento tiene la siguiente estructura:

{
  "price": 99.0,
  "locale": "en-US",
  "country": "ME",
  "postcut": "false",
  "currency": "USD",
  "platform": "ios",
  "quantity": 1,
  "bundle_id": "com.adapty.adaptydemoapp",
  "ip_address": "127.0.0.1",
  "os_version": "18.1.1",
  "product_id": "month.premium.99",
  "app_version": "3.2.0",
  "sdk_version": "server",
  "device_model": "iPhone 13 Mini",
  "advertising_id": "00000000-0000-0000-0000-000000000000",
  "os_version_release": "18.1.1",
  "developer_device_id": "00000000-0000-0000-0000-000000000000",
  "analytics_installation_id": "00000000-0000-0000-0000-000000000000"
}

Where

ParámetroTipoDescripción
priceFloatEl precio unitario del artículo comprado en la unidad estándar de la divisa (p. ej., USD se reporta en dólares).
localeStringEl locale del dispositivo. Para Android: Locale.getDefault().toString(). Para iOS: [[NSLocale currentLocale] localeIdentifier].
countryStringEl código de país según el estándar de locale ISO (p. ej., US para Estados Unidos).
postcutString (Boolean)Indica si la compra se envió después del recorte de la plataforma. 1 para verdadero, 0 para falso.
currencyStringEl código de divisa ISO (p. ej., USD para dólares estadounidenses).
platformStringLa plataforma del dispositivo (p. ej., ios, android, windows, amazon).
quantityIntegerEl número de unidades compradas.
bundle_idStringEl identificador de bundle de la app (p. ej., com.example.app).
ip_addressString (IPv4)La dirección IP del usuario. Se utiliza para determinar el país.
os_versionStringLa versión del sistema operativo del dispositivo. Para Android: String.valueOf(Build.VERSION.SDK_INT). Para iOS: [[UIDevice currentDevice] systemVersion].
product_idStringIdentificador único del producto comprado.
app_versionFloat, DecimalLa versión de la app. Para Android: context.getPackageManager().getPackageInfo(). Para iOS: [[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"].
sdk_versionStringLa versión del SDK en uso, siempre establecida en server.
device_modelStringEl modelo del dispositivo. Para Android: Build.MODEL. Para iOS: sysctl("hw.machine").
advertising_idUUIDEl ID de publicidad del dispositivo. Obligatorio para Android. En iOS puede estar vacío o ser todo ceros.
os_version_releaseStringLa versión de lanzamiento del sistema operativo. Para Android: String.valueOf(Build.VERSION.RELEASE). Para iOS: [[UIDevice currentDevice] systemVersion].
developer_device_idUUIDEl identificador del proveedor (solo iOS).
analytics_installation_idUUIDID de instalación de analíticas. Para más detalles, consulta la documentación en https://docs.tenjin.com.