Amplitude

Amplitude est un puissant service d’analyse mobile. Avec Adapty, vous pouvez facilement envoyer des événements à Amplitude, observer le comportement de vos utilisateurs et prendre des décisions éclairées.

Adapty fournit un ensemble complet de données qui vous permet de suivre les événements d’abonnement depuis les stores en un seul endroit et de les envoyer à votre compte Amplitude. Cela vous permet de relier le comportement de vos utilisateurs à leur historique de paiement dans Amplitude, et d’orienter vos décisions produit.

Comment configurer l’intégration Amplitude

Dans Adapty, vous pouvez configurer des flows distincts pour les événements de production et les événements de test provenant de l’environnement sandbox d’Apple ou Stripe, ou d’un compte de test Google.

  • Pour les événements de production, saisissez les clés API de Production depuis le tableau de bord Amplitude, avec une clé API unique pour chaque plateforme : iOS, Android et Stripe.
  • Pour les événements de test, utilisez les champs Sandbox selon vos besoins.

Pour configurer l’intégration Amplitude :

  1. Ouvrez Integrations -> Amplitude dans votre Adapty Dashboard.
3b50552-CleanShot_2023-08-15_at_16.47.102x.webp
  1. Activez Amplitude integration pour l’activer.

  2. Remplissez les champs de l’intégration :

    FieldDescription
    Amplitude iOS/ Android/ Stripe API keySaisissez la Clé API Amplitude pour iOS/ Android/ Stripe dans Adapty. Vous la trouverez sous Project settings dans Amplitude. Pour obtenir de l’aide, consultez la documentation Amplitude. Commencez avec les clés Sandbox pour les tests, puis passez aux clés de Production après des tests réussis.
    2297782-CleanShot_2023-08-15_at_16.53.512x.webp
  3. Paramètres optionnels pour une personnalisation supplémentaire :

ParamètreDescription
How the revenue data should be sentChoisissez d’envoyer le chiffre d’affaires brut ou le chiffre d’affaires après taxes et commissions. Consultez Commissions du store et taxes pour plus de détails.
Exclude historical eventsChoisissez d’exclure les événements antérieurs à l’installation du SDK Adapty, afin d’éviter les doublons. Par exemple, si un utilisateur s’est abonné le 10 janvier mais a installé le SDK Adapty le 6 mars, Adapty n’enverra que les événements à partir du 6 mars.
Send User AttributesSélectionnez cette option pour envoyer des attributs propres à l’utilisateur, comme les préférences de langue.
Always populate user_idAdapty envoie automatiquement device_id en tant qu’amplitudeDeviceId. Pour user_id, ce paramètre définit le comportement :
  • ON : envoie l’profile_id Adapty si amplitudeUserId ou customer_user_id ne sont pas disponibles.
  • OFF : laisse user_id vide si aucun des deux identifiants n’est disponible.
  1. Choisissez les événements que vous souhaitez recevoir et associez leurs noms.

  2. Cliquez sur Save pour confirmer vos modifications.

Une fois que vous avez cliqué sur Save, Adapty commencera à envoyer des événements à Amplitude.

En plus des événements, Adapty envoie le statut d’abonnement et l’ID du produit d’abonnement aux propriétés utilisateur Amplitude.

Événements et tags

Sous les identifiants, trois groupes d’événements peuvent être envoyés à Amplitude depuis Adapty. Activez simplement ceux dont vous avez besoin. Consultez la liste complète des événements proposés par Adapty ici.

da67694-CleanShot_2023-08-15_at_16.52.352x.webp

Nous recommandons d’utiliser les noms d’événements par défaut fournis par Adapty. Vous pouvez toutefois les modifier selon vos besoins. Adapty enverra les événements d’abonnement à Amplitude via une intégration serveur à serveur, ce qui vous permettra de consulter tous les événements d’abonnement dans votre tableau de bord Amplitude.

Configuration du SDK

Utilisez la méthode setIntegrationIdentifier() pour définir le paramètre amplitude_device_id. C’est indispensable pour configurer l’intégration.

Si vous gérez l’inscription des utilisateurs, vous pouvez également passer amplitude_user_id.

Les SDK tiers génèrent des identifiants utilisateur de manière asynchrone. L’identifiant peut ne pas être disponible au moment où Adapty.activate() s’exécute. Si votre Customer User ID provient de l’un de ces SDK, appelez Adapty.activate() sans lui. Dès que l’identifiant est disponible, appelez setIntegrationIdentifier(), puis identify() avec le CUID.

Structure des événements Amplitude

Adapty envoie les événements à Amplitude via l’API HTTP v2. Chaque événement est structuré comme suit :

{
  "api_key": "your_amplitude_api_key",
  "events": [
    {
      "partner_id": "adapty",
      "event_type": "subscription_renewed",
      "time": 1709294400000,
      "insert_id": "123e4567-e89b-12d3-a456-426614174000",
      "user_id": "user_12345",
      "device_id": "device_12345",
      "platform": "iOS",
      "os_name": "iOS",
      "productId": "yearly.premium.6999",
      "revenue": 9.99,
      "event_properties": {
        "vendor_product_id": "yearly.premium.6999",
        "original_transaction_id": "GPA.3383...",
        "currency": "USD",
        "environment": "Production",
        "store": "app_store"
      },
      "user_properties": {
        "subscription_state": "subscribed",
        "subscription_product": "yearly.premium.6999"
      }
    }
  ]
}

Where:

ParamètreTypeDescription
api_keyStringVotre clé API Amplitude.
eventsArrayListe d’objets événement (Adapty en envoie un à la fois).
events[].partner_idStringToujours “adapty”.
events[].event_typeStringLe nom de l’événement (mappé depuis l’événement Adapty).
events[].timeLongHorodatage de l’événement en millisecondes.
events[].insert_idStringIdentifiant unique de l’événement (UUID).
events[].user_idStringID utilisateur Amplitude ou ID utilisateur client.
events[].device_idStringID d’appareil Amplitude.
events[].platformStringPlateforme (ex. : “iOS”, “Android”).
events[].os_nameStringNom du système d’exploitation.
events[].productIdStringL’ID du produit dans le store.
events[].revenueFloatMontant du revenu.
events[].event_propertiesObjectAttributs détaillés de l’événement (contient tous les champs d’événement disponibles).
events[].user_propertiesObjectAttributs utilisateur tels que l’état de l’abonnement.

Résolution des problèmes

access_level_updated apparaît comme échoué dans le journal d’événements

access_level_updated est un événement réservé aux webhooks. Adapty ne l’envoie jamais à cette intégration. Mais Adapty enregistre un résultat pour chaque intégration activée, et un événement non pris en charge est affiché comme un échec.