Importation des données historiques dans Adapty

Après avoir installé le SDK Adapty et publié votre application, vous pouvez accéder à vos utilisateurs et abonnés dans la section Profiles. Mais que faire si vous disposez d’une infrastructure existante et souhaitez migrer vers Adapty, ou si vous voulez simplement consulter vos données existantes dans Adapty ?

L’importation de données n’est pas obligatoire

Adapty accordera automatiquement des niveaux d’accès aux utilisateurs historiques et restaurera leurs événements d’achat dès qu’ils ouvriront l’application avec le SDK Adapty intégré. Pour ce cas d’usage, l’importation de données historiques n’est pas nécessaire. Cependant, l’importation de données garantit des analyses précises si vous disposez d’un volume important de transactions historiques, bien qu’elle ne soit généralement pas requise pour la migration.

Pour importer des données dans Adapty :

  1. Exportez vos transactions dans un fichier CSV (des fichiers séparés doivent être fournis pour iOS, Android et Stripe). Consultez la section Format du fichier d’importation ci-dessous pour les exigences détaillées.
  2. Si un fichier dépasse 1 Go, préparez un échantillon de données d’environ 100 lignes.
  3. Téléchargez tous les fichiers sur Google Drive (vous pouvez les compresser, mais gardez-les séparés).
  4. Pour les transactions iOS, assurez-vous que la section In-app purchase API dans les App settings est renseignée avec l’Issuer ID, le Key ID et la Private key (fichier .P8), même si vous utilisez StoreKit 1. Consultez les sections Provide Issuer ID and Key ID et Upload In-App Purchase Key file pour des instructions détaillées.
  5. Partagez les liens avec notre équipe par e-mail ou via le chat en ligne dans l’Adapty Dashboard.

Ne vous inquiétez pas, l’importation de données historiques ne créera pas de doublons, même si ces données chevauchent des entrées existantes dans Adapty.

Limitations connues pour Android

  1. Seuls les abonnements actifs seront restaurés ; les transactions expirées ne le seront pas.
  2. Seuls les derniers renouvellements d’un abonnement seront restaurés ; la chaîne complète des achats ne le sera pas.
  3. Si le prix du produit a changé depuis l’achat, le prix actuel sera utilisé, ce qui peut entraîner des erreurs de tarification.

Si vous avez un grand volume de transactions Android, vous devrez peut-être demander une augmentation du quota de l’API Google Play Developer avant de commencer l’importation afin d’éviter de dépasser la limite par défaut de l’API.

Format du fichier d’importation

Si vous migrez depuis RevenueCat, vous pouvez envoyer directement le fichier d’export RevenueCat — aucune conversion n’est nécessaire. Consultez la documentation de RevenueCat pour les instructions d’export.

Préparez vos données dans un ou plusieurs fichiers respectant les règles suivantes :

  • Le format du fichier est .CSV.
  • Des fichiers séparés pour les importations Android, iOS et Stripe.
  • Chaque fichier d’importation contient toutes les colonnes requises.
  • Les colonnes des fichiers d’importation ont des en-têtes.
  • Les en-têtes de colonnes sont exactement ceux indiqués dans la colonne Column name du tableau ci-dessous. Vérifiez les fautes de frappe.
  • Les colonnes non requises peuvent être absentes du fichier. N’ajoutez pas de colonnes vides pour les données que vous n’avez pas.
  • Les fichiers d’importation ne doivent pas contenir de colonnes supplémentaires non mentionnées dans le tableau. Si c’est le cas, supprimez-les.
  • Les valeurs sont séparées par des virgules.
  • Les valeurs ne sont pas entourées de guillemets.
  • Si un utilisateur possède plusieurs apple_original_transaction_id, ajoutez-les tous en lignes séparées pour chaque apple_original_transaction_id. Sinon, nous pourrions ne pas être en mesure de restaurer les achats consommables.

Utilisez les fichiers suivants comme exemples pour iOS et Android.

Colonnes disponibles dans le fichier d’importation

Nom de la colonnePrésenceDescription
user_idrequisID de votre utilisateur
apple_original_transaction_idrequis pour iOS

L’identifiant de transaction original ou OTID (en savoir plus), utilisé dans le mécanisme d’importation StoreKit 2. Un utilisateur pouvant avoir plusieurs OTID, il suffit d’en fournir au moins un pour réussir l’importation.

Remarque : Nous exigeons que les identifiants de l’API d’achat intégré soient configurés dans votre Adapty Dashboard pour cette importation. Découvrez comment le faire ici.

google_product_idrequis pour GoogleID du produit dans le Google Play Store.
google_purchase_tokenrequis pour GoogleIdentifiant unique représentant l’utilisateur et l’ID du produit pour l’achat intégré effectué
google_is_subscriptionrequis pour GoogleLes valeurs possibles sont 1 | 0
stripe_tokenrequis pour StripeToken d’un objet Stripe représentant un achat unique. Peut être un token d’abonnement Stripe (sub_...) ou d’intention de paiement (pi_...).
subscription_expiration_dateoptionnelLa date d’expiration de l’abonnement, c’est-à-dire la prochaine date de facturation, date et heure avec fuseau horaire (2020-12-31T23:59:59-06:00)
created_atoptionnelDate et heure de création du profil (2019-12-31 23:59:59-06:00)
birthdayoptionnelLa date de naissance de l’utilisateur au format 2000-12-31
emailoptionnelL’adresse e-mail de votre utilisateur
genderoptionnelLe genre de l’utilisateur
phone_numberoptionnelLe numéro de téléphone de votre utilisateur
countryoptionnelformat ISO 3166-1 alpha-2
first_nameoptionnelLe prénom de votre utilisateur
last_nameoptionnelLe nom de famille de votre utilisateur
last_seenoptionnelLa date et l’heure avec fuseau horaire (2020-12-31T23:59:59-06:00)
idfaoptionnelL’identifiant pour les annonceurs (IDFA) est un identifiant d’appareil aléatoire attribué par Apple à l’appareil d’un utilisateur. Applicable uniquement aux applications iOS
idfvoptionnelL’identifiant pour les fournisseurs (IDFV) est un code unique attribué à toutes les applications développées par un même développeur. Applicable uniquement aux applications iOS
advertising_idoptionnelL’Advertising ID est un code unique attribué par le système d’exploitation Android que les annonceurs peuvent utiliser pour identifier de manière unique l’appareil d’un utilisateur
amplitude_user_idoptionnelL’ID utilisateur d’Amplitude
amplitude_device_idoptionnelL’ID d’appareil d’Amplitude
mixpanel_user_idoptionnelL’ID utilisateur de Mixpanel
appmetrica_profile_idoptionnelL’ID de profil utilisateur d’AppMetrica
appmetrica_device_idoptionnelL’ID d’appareil d’AppMetrica
appsflyer_idoptionnelIdentifiant unique d’AppsFlyer
adjust_device_idoptionnelL’ID d’appareil d’Adjust
facebook_anonymous_idoptionnelIdentifiant unique généré par Facebook pour les utilisateurs qui interagissent avec votre application ou site web de manière anonyme, c’est-à-dire sans être connectés à Facebook
branch_idoptionnelIdentifiant unique de Branch
attribution_sourceoptionnelLa source d’intégration de l’attribution, par exemple, appsflyer
attribution_statusoptionnelorganic
attribution_channeloptionnelLe canal d’attribution qui a amené la transaction
attribution_campaignoptionnelLa campagne d’attribution qui a amené la transaction
attribution_ad_groupoptionnelLe groupe d’annonces d’attribution qui a amené la transaction
attribution_ad_setoptionnelL’ensemble d’annonces d’attribution qui a amené la transaction
attribution_creativeoptionnelLes éléments visuels ou textuels spécifiques utilisés dans une publicité ou une campagne marketing, suivis pour déterminer leur efficacité à générer des actions souhaitées telles que des clics, des conversions ou des installations
custom_attributesoptionnelDéfinissez jusqu’à 30 attributs personnalisés sous forme de dictionnaire JSON en format clé-valeur :
  • key : (chaîne) Le nom de l’attribut personnalisé
  • value : (chaîne, entier, flottant ou booléen) La valeur de l’attribut personnalisé.

Format : "{'string_value': 'some_value', 'float_value': 123.0, 'int_value': 456}".

Notez l’utilisation des guillemets doubles et simples dans le format. Gardez à l’esprit que les booléens et les entiers seront convertis en flottants.

Champs requis

Il existe 2 groupes de champs requis pour chaque plateforme : user_id et les données identifiant les achats spécifiques à la plateforme concernée. Consultez le tableau ci-dessous pour les champs obligatoires par plateforme.

PlateformeChamps requis
iOS

user_id

apple_original_transaction_id

Android

user_id

google_product_id

google_purchase_token

google_is_subscription

Stripe

user_id

stripe_token

Sans ces champs, Adapty ne pourra pas récupérer les transactions.

Pour des analyses de cohortes précises, veuillez indiquer created_at. Si cette valeur n’est pas fournie, nous considérerons que la date d’installation est identique à la date du premier achat.

Importer des données dans Adapty

Contactez-nous et partagez vos fichiers d’importation via support@adapty.io ou via le chat en ligne dans l’Adapty Dashboard.