- RevenueCat c'est le spécialiste des abonnements et des achats in-app;
- Stripe c'est le mastodonte du paiement en ligne de manière générale;
- Tout contenu digital consommé dans une application doit passer par les stores (et tu te fais imposer une commission de 15-30% par Apple/Google - c'est le jeu);
- Dans ce cas, RevenueCat est le parfait partenaire: gratuit (jusqu'à 10K de MTR), facile d'implémentation, et passe par les stores;
- Si tu vends un produit qui ne doit pas passer obligatoirement par les stores, alors Stripe est ton partenaire de choix.
Allez, on est parti !
Présentation des deux solutions
Bon en tant que développeur mobile, il y a un moment où on cherche à monétiser notre dur labeur. Et si tu pars de zéro, que tu n’y connais rien dans ce domaine, il y a de fortes chances que tu te retrouves complètement perdu. Je me suis retrouvée exactement dans cette situation, et cet article est là pour te partager mes conclusions.
Au début de tes recherches autour des paiements/abonnements dans une application mobile, tu risques fortement de tomber sur deux noms: RevenueCat et Stripe. Alors, lequel choisir ? C’est quoi la différence ?
Je t’emmène faire un petit tour d’horizon, histoire d’y voir plus clair.
RevenueCat: la plateforme spécialisée in-app purchases
RevenueCat, c’est le couteau suisse des in-app purchases et des abonnements mobiles. Apparemment, tenter de gérer les abonnements entre l’App Store et le Google Play Store serait un vrai cauchemar administratif (sur ce point, je ne l’ai pas essayé moi-même - mes recherches m’ont convaincues de ne pas me lancer là-dedans mais de passer par un service tiers.. à toi de savoir). RevenueCat existe pour éviter ce calvaire.
En gros, RevenueCat se positionne comme une couche d’abstraction entre ton app et les stores. Tu intègres leur SDK, et boom, tu as une API unifiée pour gérer tes abonnements sur IOS et sur Android. Pas besoin de jongler entre StoreKit et Google Play Billing, RevenueCat s’occupe de tout.
Stripe: le géant du paiement en ligne
Même si tu débutes, je parie que tu as tout de même entendu parler de Stripe. C’est vraiment le mastodonte du paiement en ligne. Si tu achètes quoi que ce soit sur internet, il y de bonnes chances que Stripe soit dans la boucle.
Contrairement à RevenueCat qui se concentre uniquement sur le mobile, Stripe, c’est l’infrastructure de paiement complète. Cartes bancaires, virements, wallets digitaux, crypto, abonnements, factures… bref, si ça touche au paiement, Stripe le fait.
Pour le mobile spécifiquement, Stripe te permet de gérer des paiements in-app qui ne passent pas par les stores (mais attention aux règles, on en parle plus tard). Tu peux vendre des biens physiques, des services, des produits numériques, et tout ça avec une flexibilité totale sur les prix, les devises et les méthodes de paiement
Différences fondamentales d'approche
Alors voilà le truc : RevenueCat et Stripe ne sont pas des concurrents directs. C’est un peu comme comparer une poussette et un siège auto - les deux servent à transporter ton bébé, mais pas de la même façon (et oui, je suis très fière de cette comparaison).
RevenueCat se concentre exclusivement sur les achats intégrés des stores (App Store et Google Play). Si tu vends des abonnements ou des produits consommables via les plateformes officielles, c’est ton allié. Il facilite l’implémentation, la gestion multi-plateforme et l’analytics.
Stripe, lui, te permet de gérer des paiements directs qui contournent les stores. Tu gardes plus de marge (pas de commission de 15-30% aux stores), mais tu as beaucoup plus de responsabilités : conformité réglementaire, gestion des litiges, sécurité des données de paiement, etc.
‼️ Et attention, point crucial : les règles des stores sont très strictes. Si tu vends du contenu numérique consommé dans l’app (abonnement premium, points virtuels, fonctionnalités déblocables), Apple et Google imposent que tu passes par leurs systèmes de paiement.
Cas d'usage et type d'applications
On y voit un peu plus claire, mais la vraie question demeure: quand utiliser quoi ? Parce que choisir le mauvais outil, c’est un peu comme partir en randonnée avec des tongs: techniquement possible, mais regrets assurés.
Quand choisir RevenueCat
RevenueCat, c’est ton choix par défaut si ton modèle économique repose sur des abonnements ou achats in-app classiques. Voici les cas typiques :
- App de productivité avec abonnement premium - Genre to-do list, app de notes, gestionnaire de budget. Tu proposes une version gratuite avec des limitations, et un abonnement mensuel/annuel/comme tu veux pour débloquer toutes les fonctionnalités. C'est le cas de mon application Organizer. RevenueCat va gérer les trials, les renouvellements, les annulations, bref, toute la mécanique.
- App de contenu (fitness, méditation, éducation) - Tu vends l'accès à une bibliothèque de vidéos, cours, méditations guidées. RevenueCat te permet de gérer facilement plusieurs tiers d'abonnement (basique, premium, famille) et de synchroniser l'état d'abonnement entre iOS et Android.
- Jeu mobile avec achats intégrés - Vente de monnaie virtuelle, packs de gems, skins, battle pass. RevenueCat gère les produits consommables et non-consommables, et te donne des analytics clairs sur tes revenus.
- App B2B avec gestion d'équipe - Si tu proposes des abonnements par utilisateur ou par équipe, RevenueCat peut gérer ça proprement avec son système de customer IDs.
Le point commun, c’est que dans tous ces cas, tu vends du contenu ou des fonctionnalités numériques qui sont consommés dans l’app. Et là, de toute façon, Apple et Google ne te laissent pas le choix: tu dois passer par leurs systèmes.
Quand choisir Stripe
Stripe entre en jeu quand tu sors du cadre classique des achats in-app. Voici où il brille :
- App de e-commerce - Tu vends des produits physiques (vêtements, alimentaire, artisanat). Stripe te permet d'accepter les paiements sans donner 30% aux stores. Tu gères ton catalogue, tes stocks, tes livraisons, et Stripe s'occupe juste de la transaction.
- Marketplace ou plateforme - Tu mets en relation des vendeurs et des acheteurs (genre Airbnb, Uber). Stripe Connect te permet de gérer les paiements multi-parties, de prendre ta commission, et de reverser le reste aux vendeurs.
- Services professionnels - Réservations de prestations (coiffeur, coach, consultant). Le paiement se fait pour un service dans le monde réel, pas pour du contenu digital in-app.
- App avec modèle freemium web + mobile - Tu proposes un abonnement qu'on peut souscrire sur ton site web, et qui débloque des features dans l'app mobile. Stripe gère l'abonnement côté web, et tu synchronises l'état dans ton app (attention aux règles des stores sur ce cas précis).
- Paiements ponctuels ou flexibles - Tu as besoin de facturer des montants variables, de gérer des remboursements complexes, d'accepter plusieurs devises, de faire du split payment. Stripe te donne une flexibilité totale.
En bref, Stripe est au top si tu vends des biens/services physiques ou du contenu consommé hors de l’app. Et si tu veux garder le contrôle total sur l’expérience de paiement et éviter la commission des stores.
Peut-on les utiliser ensemble ?
Réponse courte: oui. Par exemple, imagine que tu développes une app de fitness en ligne. Dans ce cas, tu pourrais avoir:
- Des cours via un format vidéo, accessible uniquement dans l'app => Abonnement via RevenueCat
- Des équipements de sport à acheter => Paiement via Stripe
- Des sessions de coachings en visio => Réservations et paiements via Stripe
Et si tu es sur cet article, c’est probablement que tu es au début de ton aventure de développeur, donc assez peu probable que ce cas s’applique pour toi. Mais au moins, on en aura parlé !
Fonctionnalités et capacités
Allez, on plonge un peu plus dans la technique.
Gestion des abonnements
RevenueCat
La gestion d’abonnements, c’est vraiment son terrain de jeux, et c’est pour ça qu’il existe.
Tu peux créer plusieurs niveaux d’abonnement (basique, premium, ultra premium) avec des durées différentes (mensuel, annuel, à vie). Et le truc cool, c’est que tu définis tout ça une seule fois dans le dashboard RevenueCat, et ça se synchronise automatiquement entre iOS et Android.
Les périodes d’essai sont gérées automatiquement. Tu proposes 7 jours gratuits, et RevenueCat track si l’utilisateur a déjà profité du trial ou pas. Pareil pour les prix promotionnels - tu peux faire des offres spéciales sans te prendre la tête.
Et le must : la gestion des renouvellements et annulations. RevenueCat reçoit les webhooks des stores en temps réel et met à jour le statut de tes utilisateurs. Un user annule ? Tu le sais instantanément. Son paiement échoue ? Tu peux déclencher une action dans ton app pour l’inciter à mettre à jour son moyen de paiement.
En bref, pour la gestion des abonnements, RevenueCat te simplifie grandement la vie.
Stripe
Stripe aussi gère les abonnements, mais avec une approche plus… universelle. Tu peux créer des plans d’abonnement avec des prix fixes ou variables, ajouter des add-ons, faire de la facturation au prorata, gérer des coupons de réduction.
La force de Stripe, c’est la flexibilité. Tu veux facturer à l’usage ? Possible. Tu veux combiner un forfait de base + des frais variables ? Pas de souci. Tu veux faire des abonnements par paliers avec des prix dégressifs ? Let’s go.
Stripe te permet aussi de gérer des cycles de facturation complexes - paiement tous les 3 mois, facturation le 1er du mois, essais prolongés. Bref, si tu as un modèle économique un peu atypique, Stripe ne va pas te bloquer.
Achats intégrés (In-App Purchases)
RevenueCat
RevenueCat gère tous les types d’achats in-app : consommables (packs de gems, vies supplémentaires), non-consommables (retrait de pub permanent), et abonnements (on vient d’en parler).
Le gros avantage, c’est que son SDK s’occupe de toute la complexité de StoreKit et Google Play Billing. Tu appelles une méthode type Purchases.shared.purchase(package: package), et RevenueCat gère la transaction, la validation du reçu, la mise à jour du statut utilisateur, bref, tout.
Il gère aussi automatiquement la restauration des achats - crucial pour ne pas énerver tes utilisateurs qui changent de téléphone. Et si un achat échoue (réseau instable, problème de paiement), RevenueCat retry automatiquement quand c’est possible.
Stripe
Stripe ne fait pas vraiment d’achats “in-app” au sens des stores. Il fait des paiements in-app, nuance importante.
Tu peux intégrer Stripe directement dans ton app mobile pour vendre n’importe quoi : produits physiques, services, réservations. Stripe fournit des SDKs mobiles (iOS et Android) avec des UI pré-construites pour la saisie de carte bancaire, Apple Pay, Google Pay.
‼️ Mais rappelle-toi : si tu vends du contenu digital consommé dans l’app, tu dois passer par les stores.
Analytics et reporting
RevenueCat - Le dashboard qui fait plaisir
Franchement, le dashboard de RevenueCat, c’est un bonheur. Tu vois en temps réel :
- Tes revenus (MRR, ARR, revenus par produit)
- Ton taux de conversion (visiteurs → trials → payants)
- Ton churn (combien d'users annulent chaque mois)
- La LTV (lifetime value) de tes clients
- Les performances de tes offres promotionnelles
Et tout ça est automatiquement séparé entre iOS et Android, ce qui te permet de comparer facilement les deux plateformes.
RevenueCat propose aussi des cohortes - tu peux voir comment se comportent les utilisateurs qui se sont inscrits en janvier vs février, identifier les tendances saisonnières, ce genre de trucs.
Stripe - La puissance des données
Stripe, c’est la data, beaucoup de data. Tu as accès à tout : chaque transaction, chaque tentative de paiement, chaque échec, chaque remboursement.
Le Stripe Dashboard te donne des métriques classiques (volume, revenus, taux de réussite), mais c’est vraiment avec Stripe Sigma (leur outil de requêtes SQL) que ça devient intéressant. Tu peux créer des rapports ultra-personnalisés en interrogeant directement la base de données.
Stripe propose aussi Stripe Radar pour la détection de fraude - il analyse automatiquement les paiements suspects et peut bloquer les transactions risquées.
Webhooks et intégrations
RevenueCat
RevenueCat envoie des webhooks pour tous les événements importants :
- Nouvel abonnement
- Renouvellement
- Annulation
- Expiration
- Changement de plan
- Problème de paiement
Tu peux connecter ces webhooks à ton backend pour déclencher des actions : envoyer un email de bienvenue, débloquer du contenu, notifier ton équipe, etc.
RevenueCat propose aussi des intégrations natives avec plein d’outils : Amplitude, Mixpanel, Firebase, Slack, Intercom… Tu peux envoyer tes événements d’achat directement dans tes outils analytics sans coder quoi que ce soit.
Stripe
Les webhooks Stripe, c’est la référence. Ils sont ultra-fiables, bien documentés, et couvrent absolument tous les événements possibles (il y en a plus de 100).
Et niveau intégrations, Stripe c’est un autre niveau. Tu peux te connecter à des centaines d’outils : CRMs, comptabilité, facturation, analytics, marketing automation, etc.
Stripe propose aussi Stripe Apps - une marketplace d’extensions développées par des tiers pour étendre les fonctionnalités.
Implémentation technique
Top, maintenant qu’on comprend bien à quoi ça sert, et les outils proposés, allons regarder du côté de l’implémentation: techniquement, comment on fait fonctionner tout ça ?
Complexité d'intégration
RevenueCat
RevenueCat a été conçu pour te simplifier la vie. L’intégration de base prend grosso modo quelques heures si tu suis bien la doc. Tu installes le SDK, tu configures tes produits dans le dashboard RevenueCat (qui se synchronise avec les stores - attention il y a un délai d’attente avec Google qui peut aller jusqu’à 36 heures, pas de panique si ce n’est pas immédiat), et tu appelles quelques méthodes dans ton code. C’est tout. Bon, côté Google, il y a encore quelques configurations techniques qui semblent compliquées au début, si ça t’intéresse, je te prépare un tuto prochainement !
Et puis tu dois quand même configurer tes produits dans App Store Connect et Google Play Console avant de les importer dans RevenueCat. C’est une étape un peu fastidieuse, surtout la première fois, mais tu ne la fais qu’une fois.
Stripe
Stripe, c’est plus technique. Tu as le choix entre plusieurs approches :
- Côté client uniquement - Tu utilises Stripe.js ou les SDKs mobiles pour créer des tokens de paiement, que tu envoies ensuite à ton backend. C'est la méthode la plus simple, mais elle a des limitations de sécurité.
- Architecture client-serveur (recommandé) - Tu as besoin d'un backend qui crée les PaymentIntents, gère les webhooks, et communique avec Stripe de manière sécurisée. C'est plus de boulot, mais c'est la bonne pratique.
Et on ne va pas se mentir : tu vas devoir te taper la doc en détail. Stripe est extrêmement bien documenté, mais il y a beaucoup de concepts à comprendre : PaymentIntents, PaymentMethods, Customers, Subscriptions, Invoices…
SDKs disponibles (IOS, Android, React Native, Flutter)
RevenueCat
RevenueCat propose des SDKs natifs pour les principales plateformes mobiles :
- iOS - SDK Swift/Objective-C hyper propre. L'intégration avec SwiftUI est fluide, et tu as accès à toutes les features de StoreKit 2.
- Android - SDK Kotlin/Java qui abstrait toute la complexité de Google Play Billing. Fonctionne parfaitement avec Jetpack Compose.
- React Native- Plugin officiel bien maintenu. La même API JavaScript pour iOS et Android.
- Flutter - Package officiel purchases_flutter avec un bon support. Perso, c'est celui que j'utilise (tu l'avais deviné ?), et franchement, l'expérience est très propre.
- Capacitor/Cordova - Plugins disponibles pour les apps hybrides.
Le gros avantage, c’est que tous ces SDKs exposent la même API logique. Tu apprends une fois, tu sais implémenter partout. Et la doc inclut des exemples de code pour chaque plateforme.
Stripe
Stripe couvre beaucoup plus large niveau plateformes, vu qu’ils ne font pas que du mobile :
- iOS - SDK Swift moderne avec support de SwiftUI et des composants UI pré-construits pour la saisie de carte.
- Android - SDK Kotlin avec Material Design components intégrés.
- React Native - Package @stripe/stripe-react-native officiel et bien foutu.
- Flutter - Package flutter_stripe officiel. L'intégration est propre, mais tu vas devoir gérer un peu plus de logique côté client qu'avec RevenueCat.
- Web - Stripe.js, la référence pour les paiements web. Ultra optimisé et sécurisé.
- Backend - SDKs officiels pour Node.js, Python, Ruby, PHP, Go, Java, .NET... bref, tous les langages majeurs.
Le point commun de tous ces SDKs Stripe c’est qu’ils sont extrêmement bien documentés avec des guides détaillés et des exemples complets.
Documentation et ressources développeurs
RevenueCat
La documentation RevenueCat est un vrai régal (autant que de la documentation puisse l’être, on est d’accord). Elle est claire, bien organisée, avec plein d’exemples de code et de captures d’écran.
Tu as des guides par framework (iOS, Android, Flutter, React Native…), des guides par cas d’usage (configurer un trial, gérer les promotions, implémenter un paywall…), et une section troubleshooting bien fournie.
Leur blog publie régulièrement des articles sur les best practices de monétisation mobile. C’est pas juste de la tech, ils partagent aussi des insights business (quel pricing choisir, comment réduire le churn, etc.).
Et si tu bloques, leur support est plutôt réactif. Tu peux aussi rejoindre leur communauté Slack où d’autres devs peuvent t’aider.
Le petit bémol : comme c’est une boîte plus petite que Stripe, il y a moins de ressources tierces (tutos YouTube, cours, articles de blog communautaires).
Stripe
La doc Stripe, c’est la référence absolue en matière de documentation technique.
Tout est expliqué en détail, avec des exemples de code dans multiple langages, des diagrammes de séquence, des guides de migration, des explications sur la sécurité PCI… C’est exhaustif.
Leur API reference est interactive - tu peux tester des appels API directement depuis la doc avec tes vraies clés de test. C’est génial pour comprendre comment ça marche.
Stripe propose aussi des webhooks en local pour tester - tu installes le Stripe CLI et tu peux recevoir des webhooks sur ton localhost. Super pratique en dev.
Niveau communauté, Stripe a une base de connaissances gigantesque : Stack Overflow regorge de questions/réponses, il y a des milliers de tutos, de cours, d’articles. Si tu as un problème, il y a beaucoup de chances que quelqu’un l’ait déjà eu avant toi.
Tarification
Parlons argent, parce que c’est bien beau d’avoir des features géniales, mais si ça explose ton budget, ça ne sert à rien 🤑
Structure tarifaire de RevenueCat
RevenueCat fonctionne sur un modèle freemium avec plusieurs paliers. La tarification est basée sur ton MTR (Monthly Tracked Revenue) - en gros, le chiffre d’affaires mensuel que tu génères via les achats in-app.
- Free - Gratuit jusqu'à 10'000$ de MTR: Parfait pour démarrer ou pour les side projects, accès à toutes les fonctionnalités de base (SDK, dashboard, webhooks), par contre intégrations limitées et support communautaire uniquement
- Launch - 1% du MTR (minimum 250$/mois) au−dela de 10'000$/mois: Idéal pour les apps en croissance, accès à toutes les intégrations natives, support email prioritaire et analytics avancés
- Grow - Tarif personnalisé: Pour les apps avec un MTR élevé, support dédié, SLA garantis et fonctionnalités entreprise (SSO, etc.)
Alors, 1% du MTR, ça peut paraître raisonnable, mais ça s’additionne aux 15-30% des stores.
Prenons un exemple concret. Tu génères 50’000$ de MTR par mois (on rêve grand ici ein):
- Commission store (on va dire 20% en moyenne) : 10 000$
- Commission RevenueCat (1%) : 500$
- Résultat: 39 500$
Attention, petit piège : si tu dépasses les 10K$ de MTR ne serait-ce qu’un mois, tu dois passer au plan Launch avec le minimum de 250$/mois, même si le mois suivant tu retombes à 5K/mois. Ça peut faire mal pour les apps avec des revenus irréguliers.
Structure tarifaire de Stripe
Stripe, c’est un modèle totalement différent, basé sur des frais par transaction.
- Tarif standard (sans abonnement)
- 2,9% + 0,25€ par transaction réussie pour les cartes européennes
- 3,25% + 0,25€ pour les cartes internationales
- 1,5% + 0,25€ pour SEPA et autres virements
- Pour les abonnements spécifiquement
- Même tarif de transaction
- Pas de frais supplémentaire pour la gestion des récurrences
- Facturation intelligente incluse (retry automatique en cas d'échec, etc.)
- Stripe Billing - Si tu utilises leur outil de gestion d'abonnements avancé
- 0,5% supplémentaire (en plus des frais de transaction)
- Features premium : facturation complexe, gestion du prorata, etc.
- Volume pricing - Tarifs négociables pour les gros volumes
- Si tu fais plus de 1M€/an, tu peux négocier des tarifs préférentiels, généralement autour de 2,2-2,5% au lieu de 2,9%
Frais Stripe : 50€ × 2,9% + 0,25€ = 1,70€. Ce qui te reste : 48,30€
Pour un abonnement mensuel à 10€ sur un an :
Revenu brut : 120€ Frais Stripe (12 transactions) : 120€ × 2,9% + (0,25€ × 12) = 6,48€. Ce qui te reste : 113,52€
Frais additionnels possibles :
- Stripe Radar (anti-fraude avancé) : 0,05€ par transaction screenée
- Litiges (chargebacks) : 15€ par litige (remboursé si tu gagnes)
- Devises étrangères : +1% de frais de conversion
Le bon côté ? Pas de minimum mensuel, pas d’abonnement obligatoire. Tu paies uniquement ce que tu utilises. Si tu fais zéro vente, tu paies zéro.
Comparaison des coûts selon le volume
En fait, RevenueCat n’est jamais vraiment “concurrent” de Stripe en termes de coûts, parce qu’avec RevenueCat tu as toujours les 15-30% des stores en plus, c’est incompressible. Stripe te coûte généralement moins cher en % total, mais :
- Tu ne peux l'utiliser que pour certains types de ventes (pas de contenu digital in-app)
- Tu dois gérer toute l'infrastructure toi-même
- Tu as plus de responsabilités (compliance, sécurité, support client)
En gros, RevenueCat c’est convenience over cost - tu paies un peu plus pour un gain de temps massif. ET, pour une app qui démarre et toi qui commences ton business, c’est gratuit. Parce que c’est beau de parler de 10K de MTR par mois, mais soyons réaliste, c’est pas demain la veille.
Stripe c’est cost over convenience - tu paies moins mais tu bosses plus. ET, pour une app qui démarre, et qui a des produits digitaux in-app, alors tu paies plus, parce que tu as les comissions des stores + les frais Stripe.
Conformité aux stores (App Store et Google Play)
Ah, les règles des stores. Le sujet qui fait flipper tous les développeurs mobiles. Parce que violer ces règles, c’est pas juste une petite tape sur les doigts - c’est potentiellement le ban de ton app.
Respect des règles des plateformes
On en a déjà parlé plusieurs fois, mais citons-le ici clairement et une bonne fois pour toute:
‼️ Le contenu digital consommé dans l’app doit passer par les stores ‼️
Si tu vends quelque chose qui est consommé ou utilisé dans ton app (abonnement premium, fonctionnalités supplémentaires, contenu virtuel, monnaie du jeu, etc), tu es obligé d’utiliser le système de paiement du store.
Exemples qui doivent passer par les stores :
- Abonnement pour débloquer des features premium
- Achat de gems/coins/points dans un jeu
- Accès à du contenu exclusif in-app (cours, vidéos, articles)
- Retrait de publicités
- Filtres ou stickers dans une app photo
Exemples qui peuvent passer outres les stores:
- Produits physiques (vêtements, alimenataire, etc.)
- Réservations de services (coiffeur, taxi, hôtel)
- Billets d'événements réels
- Abonnements à des services physiques (livraison de repas, box mensuelle)
Tu ne peux pas avoir un bouton “Acheter sur notre site web” dans ton app pour contourner la commission des stores. On appelle ça de l‘“anti-steering” et c’est interdit. Tu ne peux même pas mentionner qu’il existe des prix moins chers ailleurs. Genre tu ne peux pas écrire “20€/mois dans l’app, 15€/mois sur notre site”, au risque te voir ban instantanément.
Le gros avantage de RevenueCat est qu’il est conforme par design. Il utilise exclusivement les systèmes de paiement officiels (StoreKit pour iOS, Google Play Billing pour Android). Et si Apple ou Google change leurs règles (et ils le font régulièrement), RevenueCat met à jour son SDK et tu n’as rien à faire de spécial. En gros, tu peux dormir sur tes deux oreilles.
Avec Stripe, c’est plus… délicat. Techniquement, Stripe lui-même est neutre - c’est un outil de paiement, après tout. Mais comment tu l’utilises peut te mettre en violation des règles.
Il y a un cas d’exception, qui est les apps de type “reader”. Depuis 2022, Apple a créé une exception pour ce type d’app, qui peuvent rediriger vers leur site web pour l’abonnement. Alors, ne t’emballe pas, il s’agit des applications du type Netflix, Spotify, ou Kindle. Et pour être élligible, il faut faire une demande spéciale à Apple, c’est vraiment limité à des cas précis, etc. En bref, ne compte pas là-dessus, à moins d’être le prochain Netflix (l’ambition ne tue pas, après tout).
Limitations et contraintes
RevenueCat
Comme rien n’est parfait, utiliser RevenueCat (et donc les stores) vient avec son lot de limitations:
- Pas de contrôle sur l'UX de paiement - C'est les interfaces natives des stores. Tu ne peux pas customiser le flow, ajouter des étapes, modifier le wording. C'est bien pour la sécurité et la confiance, mais zéro flexibilité.
- Délai de validation - Chaque fois que tu ajoutes/modifies un produit in-app, il doit être validé par Apple (généralement 24-48h). Google est plus rapide mais pas instantané non plus.
- Gestion des refunds complexe - Les utilisateurs peuvent demander des remboursements directement à Apple/Google sans passer par toi. Tu n'as pas toujours ton mot à dire, et tu dois gérer ces cas dans ton app.
- Limitations géographiques - Certains pays ne supportent pas tous les moyens de paiement. Certains utilisateurs ne peuvent tout simplement pas acheter dans ton app.
Stripe
Et bien sûr, Stripe aussi a certaines limitations:
- Compliance PCI-DSS - Tu dois gérer la sécurité des données de paiement. Stripe aide beaucoup, mais c'est ta responsabilité.
- Support client - C'est toi qui gères les litiges, les remboursements, les problèmes de paiement, pas le store.
- Fraude et chargebacks - Tu dois implémenter des systèmes anti-fraude et gérer les contestations de paiement.
- Légal et taxes - Selon où tu vends, tu dois potentiellement collecter la TVA, gérer la facturation, etc.
Conclusion
Alors, après ce tour d’horizon, qu’est-ce qu’on en conclu ?
Dans mon cas, développeuse solo, début du business, petites app et petits revenus, la réponse est assez clair: RevenueCat. En plus, mon système de monétisation est in-app, je dois donc de toute façon passer par les stores, donc la question ne se pose même pas vraiment.
Je pense que Stripe est une excellente solution une fois plus avancé dans le business, parce que les commissions peuvent être moins élevées que le tarif de RevenueCat (à calculer, évidemment). Mais c’est plus de travail d’implémentation, de documentation, de maintenance, etc. C’est clairement, selon moi, parfait pour un business plus avancé.
Pour une petite application qui démarre, RevenueCat, c’est top (et gratuit !). En tout cas, c’est ce que j’utilise, et pour l’instant, rien à redire.
Voilà, j’espère que ça t’aide à y voir plus clair, n’hésite pas à m’écrire si tu n’es pas d’accord sur un point ou si tu souhaites simplement discuter 🙂
A la prochaine !
Commentaires