Paywall web
Avant de commencer, assurez-vous d’avoir la version requise du SDK Adapty installée :
- Paywall Builder ou paywalls personnalisés : 3.6.1 ou ultérieure (iOS), 3.15 ou ultérieure (Android et multiplateforme)
- Flow & Paywall Builder : 4.0 ou ultérieure (toutes les plateformes)
Avec Adapty, vous pouvez créer un paywall ou un flow avec un bouton qui redirige vos utilisateurs vers leur navigateur pour effectuer un paiement. Ensuite, lorsqu’ils reviennent dans votre application après un achat réussi, l’abonnement s’active. Cela vous permet de contourner les frais du store tout en suivant les paiements des utilisateurs.
L’App Store n’autorise les options de paiement externes qu’aux États-Unis et au Japon.
Pour utiliser un paywall exclusivement pour ces marchés, dupliquez votre paywall actuel et configurez un paywall web. Vous aurez ainsi deux paywalls presque identiques : un pour les États-Unis et le Japon, et un autre pour tous les autres.
Comment ça fonctionne
Un paywall web est une URL unique générée pour chacun de vos paywalls intégrés à l’application. Elle s’ouvre dans le navigateur pour le paiement et fonctionne avec différents fournisseurs de paiement (Stripe, Paddle et autres), prenant en charge aussi bien une page simple avec un bouton Apple Pay que des flows plus complexes avec des offres supplémentaires.
Les paywalls web fonctionnent de la manière suivante :
- Configurez l’apparence et le comportement de la page de paywall web dans l’éditeur de paywall web.
- Liez le paywall web dans les paramètres du paywall.
- Dans le paywall de votre application, ajoutez un bouton redirigeant les utilisateurs vers le navigateur.
- Lorsque les utilisateurs appuient sur le bouton, le SDK Adapty génère une URL unique qui inclut l’identifiant de profil Adapty de l’utilisateur.
- Les utilisateurs accèdent à la page de paywall web et paient leur abonnement via un moyen de paiement externe.
- Lorsqu’ils reviennent dans l’application, le SDK Adapty interroge le serveur pour détecter les mises à jour du profil afin de confirmer l’activation de l’abonnement.
- Adapty enregistre l’achat et surveille l’abonnement pour détecter tout changement de statut, comme les renouvellements ou les annulations.
L’ID de profil dans l’URL associe l’achat web à l’utilisateur de l’application. L’achat est rattaché au profil déjà utilisé par votre application, vous n’avez donc pas besoin d’appeler Adapty.identify() pour un acheteur web.
Étape 1. Créer un paywall web
- Préparez un paywall :
- Pour activer les paiements externes sur un paywall existant, dupliquez-le. Cela vous permet d’afficher le web paywall à votre segment cible et l’original à tous les autres.
- Pour partir de zéro, créez un nouveau paywall.
- Sur la page du paywall, passez à l’onglet Web paywall et cliquez sur Create web paywall. Vous serez redirigé vers une nouvelle page.
- Configurez le web paywall et connectez un moyen de paiement.
Pour obtenir de l’aide sur la configuration de l’éditeur externe et la connexion d’un fournisseur de paiement, consultez le guide de démarrage rapide.
- Retournez sur la page Web paywall et collez le lien du paywall.
Lors du déploiement de votre paywall en production, assurez-vous d’utiliser le lien correct généré après la publication de votre web paywall. Le format du lien est paywalls-....fnlfx.com.
- Cliquez sur Save.
Étape 2. Déclencher le paywall
Pour utiliser votre paywall web, vous devez le déclencher, et la manière de procéder dépend de votre configuration :
- Si vous utilisez le Flow & Paywall Builder, il vous suffit d’ajouter un nouveau bouton qui utilisera le lien que vous avez fourni pour suivre les achats et renvoyer les données à Adapty.
- Si vous utilisez le SDK, vous devez configurer la méthode
openWebPaywallpour gérer les paywalls web.
Étape 2a. Ajouter un bouton d’achat web
Si vous utilisez le Flow & Paywall Builder, vous devez ajouter un bouton de paywall web. Ce bouton utilisera le lien que vous avez fourni pour suivre les achats et renvoyer les données à Adapty.
-
Ouvrez le flow et ajoutez un bouton.
Si vous utilisez un modèle ou un paywall existant, ajoutez un bouton de paywall web à côté du bouton d’achat existant. Vous pouvez le configurer de la même façon.
-
Dans le panneau Interactions à droite, cliquez sur Add trigger. Ensuite, assignez l’action Purchase à ce déclencheur.
-
Dans les paramètres de l’action, passez à l’onglet Web payment. Là, sélectionnez un produit et—optionnellement—une offre à associer au bouton d’achat web.
-
Collez le lien du paywall web dans le champ Web paywall URL.
-
Par défaut, les paywalls web s’ouvrent dans un navigateur intégré à l’application afin que les utilisateurs n’aient pas besoin de quitter votre app. Si vous souhaitez les ouvrir dans un navigateur externe, sélectionnez Open in external browser.
Étape 2b. Appeler la méthode du SDK
Si vous travaillez avec un paywall que vous avez développé vous-même, vous devez gérer les paywalls web via la méthode du SDK. Consultez les guides spécifiques à chaque framework :
Étape 3. Configurer un placement
Étant donné que l’App Store n’autorise les options de paiement externe qu’aux États-Unis et au Japon, créez un segment d’utilisateurs distinct pour les utilisateurs iOS sur ces marchés et configurez un placement pour cibler différents paywalls selon les segments. Pour les utilisateurs Android, aucune restriction géographique ne s’applique — créez un segment Android distinct sans filtre de pays.
- Créez un nouveau segment avec les attributs suivants :
- Country from store account : United States, Japan
- Platform : iOS and iPadOS
- App version : La dernière version qui utilise le SDK Adapty.
- Créez un placement ou modifiez un placement existant. Ajoutez une nouvelle audience avec le paywall web et le segment créé.
Ajouter un tunnel d’annulation
Un tunnel d’annulation est une page web qu’un abonné ouvre pour annuler son abonnement. Avant que l’annulation ne soit finalisée, le tunnel peut proposer une pause, un forfait à tarif réduit ou une période gratuite. Vous le créez dans le même éditeur que votre paywall web, et votre app l’ouvre via une URL. Le tunnel annule l’abonnement auprès de votre prestataire de paiement, donc votre app n’effectue aucun appel API d’annulation.
Pour créer un entonnoir d’annulation, dans l’éditeur de paywall web, ouvrez l’onglet Cancellation. Les actions de rétention sont disponibles uniquement dans les entonnoirs d’annulation, vous ne pouvez donc pas les ajouter à l’entonnoir qui gère votre paywall web. Pour l’entonnoir lui-même, consultez le guide FunnelFox sur les entonnoirs d’annulation.
Obtenir l’identifiant de profil FunnelFox de l’abonné
Un funnel d’annulation identifie l’abonné par son identifiant de profil FunnelFox. Après un achat d’abonnement web, FunnelFox écrit cet identifiant dans le profil Adapty en tant qu’attribut personnalisé fnlfx_profile_id, accompagné de fnlfx_funnel_id, fnlfx_session_id, vendor_profile_id et vendor.
FunnelFox écrit ces attributs une seule fois, lors du premier achat d’abonnement web. Les achats ultérieurs ne les modifient pas. Pour un achat consommable, FunnelFox ne les écrit que si l’élément de paiement possède un niveau d’accès personnalisé.
Votre application lit fnlfx_profile_id depuis customAttributes du profil utilisateur. Pour retrouver cette valeur dans Adapty, ouvrez Profiles et recherchez le profil de l’utilisateur.
Adapty stocke jusqu’à 30 attributs personnalisés par profil. Lorsqu’un profil est plein, Adapty ignore les attributs supplémentaires sans renvoyer d’erreur, et FunnelFox ne les renvoie pas. Si votre application définit ses propres attributs personnalisés, laissez de la place pour les cinq attributs FunnelFox.
Ouvrir le funnel depuis votre application
Votre application construit elle-même l’URL d’annulation. Elle ne va pas dans le champ Web paywall URL — ce champ appartient à un paywall qui vend un produit, et Adapty y ajoute adapty_profile_id, pas fpid.
Combinez l’URL de votre funnel d’annulation publié avec le fnlfx_profile_id de l’abonné :
https://<your-project>.fnlfx.com/cancel?fpid=<fnlfx_profile_id>
Passez la valeur de l’attribut telle qu’elle est stockée, sans préfixe. Ouvrez l’URL quand l’utilisateur appuie sur votre bouton d’annulation.
Les utilisateurs peuvent fermer la page à tout moment, y compris après que le funnel a annulé l’abonnement. Ne considérez pas leur retour dans l’application comme une confirmation. Récupérez le profil pour obtenir l’état actuel. Un abonnement annulé conserve son niveau d’accès jusqu’à la fin de la période payée.