Passer au contenu principal
Guide

achats en ligne pour capacitor

Comment mettre en œuvre les achats en ligne pour les applications capacitor à l'aide du plugin Achat de l'extension Capacitor Purchases et de RevenueCat

Martin Donadieu

Martin Donadieu

Responsable de la création de contenu

achats en ligne pour capacitor

Ce plugin est maintenant transféré vers le dépôt officiel de RevenueCat. Veuillez consulter la documentation officielle pour plus d'informations.

Si vous préférez une interface native API plus simple sans RevenueCat, @capgo/achats_natives implémente les achats en application et les abonnements directement avec StoreKit et Google Play Billing.

Capacitor Purchases is a plugin for the Capacitor framework that allows in-app purchases on iOS and Android. It provides a simple and consistent API across multiple platforms, making it easy for developers to implement in-app subscriptions and purchases in their mobile apps.

One of the key features of the Capacitor Purchases plugin is that it integrates with RevenueCat, a platform that provides tools for in-app subscriptions and in-app purchases. RevenueCat simplifies the process of implementing in-app subscriptions and purchases by providing a simple and consistent API across multiple platforms, and automating tasks such as receipt validation and user management.

Avec RevenueCat, les développeurs peuvent gérer facilement les abonnements, suivre les revenus et effectuer d'autres tâches liées. Certaines fonctionnalités proposées par RevenueCat incluent :

  • Validation automatique des reçus
  • Gestion des utilisateurs
  • Support pour les modèles de tarification personnalisés
  • Analytiques détaillés -Échelle

En utilisant le plugin Capacitor Achats avec RevenueCat, les développeurs peuvent économiser du temps et de l'effort lors de la mise en œuvre des abonnements et des achats en application dans leurs applications mobiles, et fournir des fonctionnalités supplémentaires qui peuvent aider à améliorer l'expérience utilisateur et à augmenter les revenus.

En utilisant le plugin d'achat Capacitor et RevenueCat, les développeurs peuvent gérer et suivre facilement les abonnements et les achats en application, valider les reçus, et gérer les utilisateurs sur plusieurs plateformes. Cela permet également de créer des modèles de tarification personnalisés et d'obtenir des analyses détaillées pour améliorer les performances et le revenu.

Installation

Assurez-vous d'utiliser la dernière version de Capacitor et du plugin d'achat Capacitor. Vous pouvez vérifier la dernière version de Capacitor et du plugin d'achat Capacitor sur le site Web de Capacitor.

Pour installer le plugin d'achat Capacitor, exécutez la commande suivante : npm i @capgo/capacitor-purchases ajoutez le plugin à votre application native code npx cap sync

ajoutez la capacité d'achat en application dans Xcode :

Étape 1 Xcode ensuite Étape 2 Xcode

1. Créez un compte RevenueCat

Cette guide vous guidera à travers la mise en route des abonnements et de RevenueCat’s SDK avec seulement quelques lignes de code.

Inscrivez-vous pour un nouveau compte RevenueCat français.

📘

💡 Voici un conseil !

RevenueCat recommande de créer un compte RevenueCat distinct pour chaque application / projet que vous avez, surtout si vous avez l'intention de vendre l'application à l'avenir. Cela accélérera le processus de transfert, car vous pouvez transférer le compte entier plutôt que d'attendre que le support RevenueCat transfère les projets individuels.

Organisations / Entreprise

Nous recommandons d'utiliser un compte entreprise lors de l'enregistrement chez RevenueCat et de configurer votre application dans un projet. Vous pourrez inviter le reste de votre équipe en tant que collaborateurs à votre projet, mais seulement le propriétaire du projet peut gérer les factures.Les collaborateurs de projet ne peuvent pas gérer les détails de facturation.

2. Configuration du projet et de l'application

▶️ Créer un projet

Naviguez jusqu'au tableau de bord RevenueCat et ajouter un nouveau projet à partir du menu déroulant dans la barre de navigation supérieure appelé Projets.

Étape 1 de RevenueCat

Le modale de création d'un nouveau Projet

▶️ Ajouter une application / Plateforme

De Paramètres du Projet > Applications dans le menu de gauche de l'interface de bord de projet, sélectionnez la plateforme pour l'application que vous ajouterez.

Étape 2 de RevenueCat

Interface de bord de projet pour sélectionner la plateforme de l'application

Le champ Nom d'application Le nom d'application est requis pour ajouter votre application à RevenueCat. Les autres champs de configuration peuvent être ajoutés ultérieurement. Pour effectuer des achats de test et de production, le Bundle ID (iOS) / Nom de package (Android) ainsi que le Secret partagé (iOS) / Clés de service (Android) doivent être configurés.

Étape 3 de RevenueCat

Page de configuration de l'application pour une application Apple App Store

📘

💡 Voici un conseil !

Après avoir enregistré votre application, RevenueCat recommande de configurer Notifications du serveur de plateformeCes notifications ne sont pas obligatoires, mais elles accéléreront webhooks et les temps de livraison de l'intégration et réduiront le temps de mise à jour de vos abonnés.

📘

Applications et utilisateurs de production et de test

RevenueCat n'a pas de milieux de production et de test séparés. Au lieu de cela, les transactions sous-jacentes pour les utilisateurs sont différenciées par sandbox et production.

Tout les applications RevenueCat peuvent effectuer des achats de type sandbox et de production à partir des magasins. Si vous avez des applications séparées pour le stade et la production, vous pouvez créer plusieurs projets dans RevenueCat pour refléter votre configuration.

De plus, les utilisateurs ne sont pas séparés par environnement. Le même utilisateur peut avoir des achats de type sandbox actifs et des achats de type production actifs en même temps.

▶️ Identifiants de service

Les identifiants de service doivent être configurés pour que RevenueCat puisse communiquer avec les magasins d'applications en votre nom. Consultez les guides de RevenueCat Secret partagé d'App Store Connect, Identifiants de service Playet Secret partagé de l'Amazon Appstore pour plus d'informations.

Notez que les identifiants de service Play peuvent prendre jusqu'à 36 heures pour se propager à travers les serveurs de Google.

3. Configuration du produit

▶️ Configuration du magasin

Avant de pouvoir commencer à utiliser RevenueCat pour récupérer des produits, vous devez configurer vos produits dans les magasins respectifs. Consultez les guides suivants pour App Store Connect, Google Play Console, Amazon Appstore, et Stripe pour obtenir de l'aide pour naviguer dans ce processus.

Si vous vendez des produits iOS, assurez-vous de signer votre 'Accord sur les applications payantes' et de remplir vos informations bancaires et fiscales dans App Store Connect > Accords, impôts et banques. Il faut compléter cela avant de pouvoir tester tout achat..

📘

Voulez-vous passer sous silence la configuration du magasin pendant la phase de test ?

Sur iOS, vous pouvez retarder la configuration des produits dans App Store Connect en testant avec des fichiers de configuration StoreKit au lieu de cela. Ces fichiers de configuration nécessitent une configuration minimale et sont configurables via Xcode directement.

En savoir plus sur la configuration des fichiers StoreKit dans RevenueCat Test de l'environnement de développement guide.

▶️ Configurez les produits et les droits en RevenueCat

Une fois que vos produits intégrés ont été configurés dans App Store Connect, Google Play Console, Amazon Appstoreou StripeVous devrez copier cette configuration dans le tableau de bord de RevenueCat. RevenueCat utilise un système de droits pour contrôler l'accès aux fonctionnalités premium et des offres pour gérer l'ensemble des produits que vous proposez à vos clients.

Les droits sont le niveau d'accès dont un client est « autorisé » après avoir acheté un produit spécifique. Les offres sont une façon simple pour vous d'organiser les produits intégrés que vous souhaitez « offrir » sur votre mur de paiement et de les configurer à distance. RevenueCat recommande l'utilisation de ces fonctionnalités pour simplifier votre __CAPGO_KEEP_0__ et vous permettre de changer de produits sans mettre à jour l'application. utilizing these features to simplify your code and enable you to change products without releasing an app update.

Configuration des produits pour configurer vos produits et les organiser ensuite en Offres ou en Entitlements. Étape 4 de RevenueCat

4. Utilisation de Purchases __CAPGO_KEEP_0__ de RevenueCat

RevenueCat SDK met en œuvre de manière fluide les achats et les abonnements sur plusieurs plateformes tout en synchronisant les jetons avec le serveur de RevenueCat.

Si vous rencontrez des problèmes avec le SDK, voir

If you run into issues with the SDK, see pour obtenir des conseils. Utilisez uniquement votre clé publique __CAPGO_KEEP_0__ pour configurer les achats.

📘

recommande l'utilisation de ces fonctionnalités pour simplifier votre SDK et vous permettre de changer de produits sans mettre à jour l'application.

Vous pouvez obtenir votre clé publique SDK dans la section API clés dans les paramètres du projet dans le tableau de bord. Il convient de configurer l'instance partagée de

Purchases seulement une fois, généralement lors du lancement de l'application. Par la suite, la même instance est partagée dans toute votre application en accédant à l' instance dans le __CAPGO_KEEP_0__. .shared instance in the SDK.

Configurer __CAPGO_KEEP_0__ Configuring SDK __CAPGO_KEEP_0__ clés

Assurez-vous de configurer Achats avec votre clé publique SDK uniquement. Vous pouvez en savoir plus sur les différentes clés API disponibles chez RevenueCat Guide d'authentification.

import { CapacitorPurchases } from '@capgo/capacitor-purchases'
import { isPlatform } from '@ionic/vue' // use the right one for your framework

CapacitorPurchases.setDebugLogsEnabled({ enabled: import.meta.env.DEV }) // Enable to get debug logs in dev mode
if (isPlatform('ios')) {
    CapacitorPurchases.setup({ apiKey:'appl_******'})
} else if (isPlatform('android')) {
    CapacitorPurchases.setup({ apiKey:'goog_******'})
}

Lorsque vous êtes en développement, RevenueCat recommande d'activer les journaux de débogage plus détaillés. Pour plus d'informations sur ces journaux, consultez leur Guide de débogage Si vous prévoyez d'utiliser RevenueCat en parallèle de vos achats existants __CAPGO_KEEP_0__, consultez leur guide sur

If you’re planning to use RevenueCat alongside your existing purchase code, refer to their guide on Configuration des achats avec les identifiants d'utilisateur.

📘

Si vous avez un système d'authentification des utilisateurs dans votre application, vous pouvez fournir un identifiant d'utilisateur au moment de la configuration ou à une date ultérieure avec un appel à

Pour en savoir plus, consultez le guide de RevenueCat sur .logIn()Configuration Identifier les Utilisateurs.

Le SDK récupérera automatiquement les Offres configurées et récupérera les informations sur les produits auprès d'Apple, Google ou Amazon. Ainsi, les produits disponibles seront déjà chargés lorsque les clients lanceront votre écran d'achat.

Voici un exemple de récupération d'Offres. Vous pouvez utiliser les Offres pour organiser votre écran de paywall. Consultez la guide de RevenueCat sur Afficher les Produits pour plus d'informations et de meilleures pratiques.

▶️ Récupérer et Afficher les Produits Disponibles

📘

Configurer les Achats avec les Identifiants Utilisateurs

Si vous avez un système d'authentification utilisateur dans votre application, vous pouvez fournir un identifiant utilisateur au moment de la configuration ou à une date ultérieure avec un appel à .logIn(). Pour en savoir plus, consultez la guide de RevenueCat sur Identifier les Utilisateurs.

Le SDK récupérera automatiquement les Offres configurées et récupérera les informations de produit auprès d'Apple, Google ou Amazon. Ainsi, les produits disponibles seront déjà chargés lorsque les clients lanceront votre écran d'achat.

Voici un exemple de récupération d'Offres. Vous pouvez utiliser les Offres pour organiser votre écran de paywall. Consultez la guide de RevenueCat sur Affichage des produits pour plus d'informations et de meilleures pratiques.

const { offerings } = await CapacitorPurchases.getOfferings()
if (offerings.current !== null) {  
    // Display current offering with offerings.current
}

Si la récupération de vos Offres, produits, ou packages disponibles sont vides, c'est dû à un problème de configuration dans le magasin respectif. Offres configurées

Les raisons les plus courantes pour cela dans App Store Connect sont un accord de paiement obsolète ‘Paid Applications Agreement’ ou des produits qui ne sont pas au moins dans l'état ‘Ready To Submit’. Dans GooglePlay, cela se produit généralement lorsque l'application n'est pas publiée sur une piste fermée et qu'un utilisateur de test valide a été ajouté.

Vous pouvez trouver plus d'informations sur la résolution de ce problème dans RevenueCat Centre d'aide.

▶️ Effectuer une transaction

Le SDK comprend une méthode simple pour faciliter les transactions. La purchase:package procède à partir d'un paquet récupéré de l'offre et traite la transaction avec le magasin d'applications correspondant.

Le code d'exemple ci-dessous montre le processus d'achat d'un paquet et de confirmation qu'il déverrouille le contenu « your_entitlement_id ». Plus de détails sur la purchase:package méthode peuvent être trouvés dans la guide de RevenueCat sur Effectuer des transactions.

const purchase = async (p: Package): Promise<PurchaserInfo | null> => {
  try {
    // console.log('purchase', p)
    const data = await CapacitorPurchases.purchasePackage({
      identifier: p.identifier,
      offeringIdentifier: p.offeringIdentifier,
    })
    const purchaserInfo = data.purchaserInfo
    // console.log('listenBuy', purchaserInfo)
    if (purchaserInfo.activeSubscriptions.includes(p.identifier)) {
      // set the user as paid
    }
    return purchaserInfo
  }
  catch (e) {
    console.error('listenBuy error', e)
  }
  return null
}

▶️ Vérifier l'état d'une souscription

Vous pouvez utiliser cette méthode chaque fois que vous avez besoin de récupérer le statut le plus récent, et il est sécurisé d'appeler cette méthode à plusieurs reprises tout au long du cycle de vie de votre application. Transactions __CAPGO_KEEP_0__ automatiquement cache la version la plus récente CustomerInfo __CAPGO_KEEP_0__ — donc dans la plupart des cas, cette méthode récupère dans le cache et s'exécute très rapidement.

Il est courant d'appeler cette méthode lors de la décision de montrer à l'utilisateur quelle interface à afficher, et chaque fois que l'utilisateur effectue une action qui nécessite un niveau d'entitlement spécifique.

📘

💡 Voici un conseil !

Vous pouvez accéder à beaucoup plus d'informations sur une souscription que simplement savoir si elle est active ou non. Consultez la guide de RevenueCat sur État de la souscription pour savoir si la souscription est configurée pour se renouveler, si il y a un problème détecté avec la carte de crédit de l'utilisateur, et plus encore.

RevenueCat permet à vos utilisateurs de restaurer leurs achats en ligne, réactivant tout le contenu qu'ils ont acheté auparavant à partir du même compte de magasin (compte Apple, Google ou Amazon). Nous recommandons à tous les applications d'avoir une façon pour les utilisateurs de déclencher la méthode de restauration. Notez que Apple exige un mécanisme de restauration en cas où un utilisateur perd accès à ses achats (par exemple : désinstallation/réinstallation de l'application, perte de ses informations de compte, etc.).

  const res = await CapacitorPurchases.restoreTransactions()
  const purchaserInfo = res.purchaserInfo
  const ids: string[] = [] // extract active subscriptions ids
  purchaserInfo.activeSubscriptions.forEach((id) => {
    ids.push(id)
  })

Si deux identifiants d'utilisateur d'application différents __CAPGO_KEEP_0__ restore les transactions à partir du même compte de magasin sous-jacent (compte Apple, Google ou Amazon).\nRevenueCat peut tenter de créer un alias entre les deux identifiants d'utilisateur d'application et les compter comme le même utilisateur à l'avenir. Voir la guide de RevenueCat sur Restaurer les achats pour plus d'informations sur les différents comportements de restauration configurables.

Puisque le SDK fonctionne sans heurt sur n'importe quelle plateforme, les modifications de l'information d'achat d'un utilisateur peuvent provenir de diverses sources. Vous pouvez répondre à toute modification dans les CustomerInfo d'un client en se conformant à une méthode de délégué facultative, purchases:receivedUpdated:.

Cette méthode se déclenchera chaque fois que le SDK reçoit une mise à jour CustomerInfo d'objet à partir d'appels à getCustomerInfo(), purchase(package:), purchase(product:), ou restorePurchases().

Les mises à jour de l'information de client ne sont pas envoyées à votre application à partir du serveur de RevenueCat, les mises à jour peuvent uniquement se produire à partir d'une requête réseau sortante vers RevenueCat, comme mentionné ci-dessus.

En fonction de votre application, il peut suffire d'ignorer le délégué et de simplement gérer les modifications de l'information de client la prochaine fois que votre application est lancée ou dans les blocs de fin de la méthode du SDK.

CapacitorPurchases.addListener('purchasesUpdate', (data) => {
  console.log('purchasesUpdate', data)
})

👍

Vous y êtes arrivé(e) !

Vous avez maintenant mis en place un système de souscription à fonctionnalités complète sans passer un mois à écrire le serveur code. Félicitations !

Applications d'exemple

Pour télécharger des exemples plus complets d'intégration de la SDK, rendez-vous sur les ressources d'applications d'exemple de RevenueCat.

Voir les Exemples

Je publierai bientôt une application d'exemple utilisant la Capacitor et Vue.js.

Si vous avez besoin d'utiliser en profondeur la Capacitor SDK, consultez la documentation ici.

Étapes suivantes

\

Si vous avez besoin d'une mise à jour en direct dans votre application

Rejoignez-nous ici 👇

Inscrivez-vous ici pour obtenir votre compte

Capgo

Continuez à partir des achats en application pour capacitor

Si vous utilisez les achats en application pour capacitor pour planifier les paiements et les achats, connectez-le avec Capgo Tarification pour le flux de travail du produit dans Capgo Tarification, Système de paiement pour les détails d'implémentation dans Système de paiement, @capgo/achats natifs pour les détails d'implémentation dans @capgo/achats natifs, Démarrage pour les détails d'implémentation dans Démarrage, et Guide de revenus pour les détails d'implémentation dans le Livre de stratégie de revenus.

Mises à jour en temps réel pour les applications Capacitor

Lorsqu'un bug de la couche web est en ligne, expédiez la correction par Capgo au lieu d'attendre des jours pour l'approbation de la boutique d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les changements natifs restent dans le chemin de revue normal.

Commencez dès maintenant

Dernières actualités de notre Blog

Capgo vous donne les meilleures informations dont vous avez besoin pour créer une application mobile véritablement professionnelle.