Intégrations analytiques

Adapty envoie tous les événements d’abonnement aux services d’analyse, tels qu’Amplitude, Mixpanel et AppMetrica. Vous pouvez également recevoir ces événements sur votre serveur via l’intégration webhook. Le mieux dans tout ça, c’est que vous n’avez rien à faire : nous nous chargeons d’envoyer les événements à votre place. Configurez simplement l’intégration dans l’Adapty Dashboard.

Adapty prend en charge l’intégration avec les services d’analyse tiers suivants :

Votre outil d’analyse n’est pas dans la liste ?

Faites-le nous savoir ! Soumettez une demande de fonctionnalité et nous étudierons son ajout.

Propriétés des événements

Les événements webhook sont envoyés au format JSON. Tous les événements suivent la même structure, mais leurs champs varient selon le type d’événement, le store et votre configuration spécifique.

Adapty convertit les autres devises en USD au taux de change de currencylayer.com (actualisé toutes les 8 heures). Le taux est fixé au moment de la transaction — les variations ultérieures n’affectent pas le résultat de la conversion.

PropriétéTypeDescription
profile_iduuidIdentifiant utilisateur Adapty.
currencystrDevise locale (USD par défaut).
price_usdfloatPrix du produit avant commission Apple/Google. Chiffre d’affaires brut.
proceeds_usdfloatPrix du produit après commission Apple/Google. Chiffre d’affaires net.
net_revenue_usdfloatRevenu net (après commission Apple/Google et taxes) en USD. Peut être vide.
price_localfloatPrix du produit avant commission Apple/Google en devise locale. Chiffre d’affaires brut.
proceeds_localfloatPrix du produit après commission Apple/Google en devise locale. Chiffre d’affaires net.
transaction_idstrIdentifiant unique d’une transaction, comme un achat ou un renouvellement.
original_transaction_idstrIdentifiant de transaction de l’achat d’origine.
purchase_dateISO 8601 dateDate et heure de l’achat du produit.
original_purchase_dateISO 8601 dateDate et heure de l’achat d’origine.
environmentstrPeut être Sandbox ou Production.
vendor_product_idstrID du produit sur l’Apple App Store, le Google Play Store ou Stripe.
base_plan_idstrID du plan de base sur le Google Play Store ou ID de prix sur Stripe.
event_datetimeISO 8601 dateDate et heure de l’événement.
storestrPeut être app_store ou play_store.
trial_durationstrDurée de la période d’essai en jours. Envoyée au format « days », par exemple « 7 days ».
cancellation_reasonstr

Raison pour laquelle l’utilisateur a annulé un abonnement.

Valeurs possibles :

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 dateDate d’expiration de l’abonnement. Généralement dans le futur.
consecutive_paymentsintNombre de périodes consécutives pendant lesquelles l’utilisateur est abonné sans interruption. Inclut la période actuelle.
rate_after_first_yearboolBooléen indiquant que l’abonnement bénéficie d’un taux de commission réduit (généralement 15 %) après un an de renouvellement continu. Les taux varient selon l’éligibilité au programme et le pays. Voir Commission du store et taxes pour plus de détails.
promotional_offer_idstrID de l’offre promotionnelle, tel qu’indiqué dans la section Produits de l’Adapty Dashboard.
store_offer_categorystrPeut être introductory ou promotional.
store_offer_discount_typestrPeut être free_trial, pay_as_you_go ou pay_up_front.
paywall_namestrNom du paywall depuis lequel la transaction a été initiée.
paywall_revisionintRévision du paywall depuis lequel la transaction a été initiée. La valeur est définie à 1.
developer_idstrID développeur (SDK) du placement depuis lequel la transaction a été initiée.
ab_test_namestrNom du test A/B depuis lequel la transaction a été initiée.
ab_test_revisionintRévision du test A/B depuis lequel la transaction a été initiée. La valeur est définie à 1.
cohort_namestrNom de l’audience à laquelle appartient le profil.
profile_event_iduuidIdentifiant unique de l’événement, utilisable pour la déduplication.
store_countrystrPays transmis par le store.
profile_ip_addressstrAdresse IP du profil (IPv4 ou IPv6, avec préférence pour IPv4 si disponible). Mise à jour à chaque changement d’IP de l’appareil.
profile_countrystrDéterminé par Adapty, à partir de l’IP du profil.
profile_total_revenue_usdfloatRevenu total du profil, remboursements inclus.
variation_iduuidIdentifiant unique du paywall sur lequel l’achat a été effectué.
access_level_idstrID du niveau d’accès payant.
is_activeboolBooléen indiquant si le niveau d’accès payant est actif pour le profil.
will_renewboolBooléen indiquant si le niveau d’accès payant sera renouvelé.
is_refundboolBooléen indiquant si la transaction a été remboursée.
is_lifetimeboolBooléen indiquant si le niveau d’accès payant est à vie.
is_in_grace_periodboolBooléen indiquant si le profil est en délai de grâce.
starts_atISO 8601 dateDate et heure auxquelles le niveau d’accès payant commence pour l’utilisateur.
renewed_atISO 8601 dateDate et heure auxquelles le niveau d’accès payant sera renouvelé.
expires_atISO 8601 dateDate et heure auxquelles le niveau d’accès payant expirera.
activated_atISO 8601 dateDate et heure auxquelles le niveau d’accès payant a été activé.
billing_issue_detected_atISO 8601 dateDate et heure du problème de facturation.
profile_has_access_levelBoolBooléen indiquant si le profil dispose d’un niveau d’accès actif (webhook uniquement).

Chaque événement possède les propriétés suivantes :

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

En outre, certains événements ont des propriétés supplémentaires. Pour les événements subscription_refunded et non_subscription_purchase_refunded, les valeurs de price_usd et proceeds_usd doivent obligatoirement être fournies en tant que propriétés supplémentaires.

Nom de l’événementPropriétés
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

Exemple d’événement

{
    "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 envoie les événements à votre serveur et aux systèmes d’analyse tiers.

La propriété profile_ip_address est synchronisée avec l’IP actuelle de l’appareil. À chaque fois que les serveurs Adapty reçoivent des informations du SDK, l’IP est mise à jour si elle diffère de celle enregistrée.

Définir l’identifiant du profil

  • Définissez l’identifiant du profil pour l’outil d’analyse sélectionné en utilisant les instructions pour instructions pour définir les attributs utilisateur dans votre application .

Éviter les doublons

N’oubliez pas de désactiver l’envoi d’événements d’abonnement depuis les appareils et votre serveur pour éviter les doublons.

Désactiver l’analyse externe pour un client spécifique

Vous pouvez vouloir arrêter d’envoyer des événements analytiques pour un client spécifique. C’est utile si votre application propose une option de désactivation des services d’analyse.

Pour désactiver l’analyse externe pour un client, utilisez la méthode updateProfile(). Créez un objet AdaptyProfileParameters.Builder et définissez la valeur correspondante.
Lorsque l’analyse externe est bloquée, Adapty n’envoie plus aucun événement à aucune intégration pour cet utilisateur. Si vous souhaitez désactiver une intégration pour tous les utilisateurs de votre application, désactivez-la simplement dans l’Adapty Dashboard.

Désactiver la collecte des identifiants publicitaires