Achats intégrés et abonnements pour votre app Replit
Votre app Replit encaisse probablement via Stripe. Sur le web, rien ne change. Mais dans l'app iOS, Apple impose l'achat intégré (In-App Purchase) pour les biens numériques (guideline 3.1.1), et Google Play Billing s'applique sur Android. WebViewGold gère les deux via RevenueCat, avec un seul appel d'URL depuis votre app web.
Biens physiques, livraisons, billets, réservations, services fournis hors de l'app
Votre paiement web convient
Votre paiement web convient
Stripe
Contenus de type « reader » achetés ailleurs
Consultables sans achat intégré, sans lien d'achat dans l'app
Autorisé avec restrictions
Stripe
Prompt pour Replit
Collez ceci dans Replit pour implémenter la partie app web. Vérifiez le résultat, publiez, puis testez dans l'app WebViewGold.
Prompt à coller dans Replit Agent
Ajoutez les achats intégrés des stores à cette app Replit pour le wrapper WebViewGold. Dans le front-end React, quand navigator.userAgent contient mon token WebViewGold personnalisé, masquez le paiement Stripe et affichez un bouton « S'abonner » qui navigue vers revenuecat://purchase?external_id=USER_ID&product=pro_monthly avec l'identifiant utilisateur Replit Auth, ainsi qu'un lien « Restaurer les achats » qui navigue vers restoreinapppurchases://. Dans le backend, ajoutez POST /api/webhooks/revenuecat qui vérifie l'en-tête Authorization par rapport au secret REVENUECAT_WEBHOOK_SECRET, lit app_user_id et type dans l'événement et fait un upsert d'une ligne subscriptions avec status et expires_at. Exposez GET /api/me/plan et conditionnez-y les fonctionnalités premium. N'affichez ni prix web ni liens de paiement externes dans l'app.
Je suis très content d'avoir acheté cette application ! Extrêmement facile et excellente documentation. J'ai été en contact avec le service client, ils ont répondu très rapidement et très amicalement. Ils ont résolu ma question en un jour. 10/10 recommanderaient.
RevenueCat est gratuit jusqu'à un certain seuil de revenus mensuels et synchronise les deux stores.
Créez les produits dans App Store Connect et la Play Console
Définissez votre abonnement ou votre produit à achat unique avec des identifiants identiques sur les deux stores (par exemple pro_monthly). Apple exige que le titulaire du compte ait signé l'accord Paid Apps.
Connectez les deux stores à RevenueCat
Créez un projet RevenueCat, ajoutez les apps iOS et Android, collez les identifiants des stores et définissez une Offering avec vos produits. Vous pouvez aussi concevoir un paywall natif dans le tableau de bord RevenueCat.
Activez RevenueCat dans WebViewGold
Collez la clé API RevenueCat dans Config.swift et Config.java (ou dans le Cloud Builder). Côté natif, c'est terminé.
Déclenchez les achats depuis Replit
Depuis votre bouton de mise à niveau, naviguez vers revenuecat://purchase?external_id=USER_ID&product=pro_monthly, ou affichez le paywall natif avec revenuecat://launchPaywall?external_id=USER_ID&offering=default. Utilisez l'identifiant utilisateur de Backends Express/Flask/FastAPI avec Replit Postgres ou des bases de données externes comme external_id.
Débloquez les fonctionnalités dans votre backend
Faites pointer un webhook RevenueCat vers Backends Express/Flask/FastAPI avec Replit Postgres ou des bases de données externes et mettez à jour l'offre de l'utilisateur à chaque événement d'achat ou de renouvellement. Votre app web affiche alors les fonctionnalités premium exactement comme pour les clients qui paient via Stripe.
Masquez le paiement web dans l'app
Détectez l'app grâce au user agent personnalisé envoyé par WebViewGold et affichez le bouton d'achat intégré à la place du paiement web. Apple refuse les apps qui renvoient vers des pages de paiement externes pour des biens numériques.
Les règles à respecter
Guideline 3.1.1 d'Apple : les biens et services numériques débloqués dans l'app doivent être vendus par achat intégré. N'affichez ni mention « moins cher sur notre site » ni lien vers un paiement externe dans l'app iOS.
Règles de Google Play Billing : il en va de même sur Android, à quelques exceptions près et avec des programmes régionaux qui laissent l'utilisateur choisir son système de facturation.
Les abonnements doivent pouvoir être restaurés : WebViewGold gère le flux de restauration natif (restoreinapppurchases://) ; affichez un lien « Restaurer les achats » dans vos réglages.
La prise en charge des achats intégrés dans WebViewGold nécessite l'Extended License (voir la mise à niveau de licence).
Le Small Business Program d'Apple et le palier à 15 % de Google réduisent la commission des stores sur le premier million de dollars de revenus annuels ; RevenueCat prend en charge les deux.
Questions fréquentes
Puis-je conserver Stripe pour la version web de Replit ?
Oui. Le web reste tel quel. Seuls les achats effectués dans les apps iOS et Android passent par les stores. Beaucoup d'apps combinent les deux : Stripe sur le web, achats intégrés dans les apps, avec un seul champ « offre » dans la base de données.
Apple prend-il 30 % ?
Apple et Google prennent 15 % pour la plupart des petits développeurs (moins d'un million de dollars par an via le Small Business Program / le palier à 15 %) et 30 % au-delà. L'écart de prix vaut généralement la portée des stores.
Puis-je vendre des crédits pour des fonctionnalités d'IA via les achats intégrés ?
Oui. Les achats intégrés consommables sont faits pour les crédits. Définissez le consommable dans les deux stores, associez-le dans RevenueCat et ajoutez les crédits dans Backends Express/Flask/FastAPI avec Replit Postgres ou des bases de données externes à la réception de l'événement webhook.
Ai-je besoin du paywall natif ?
Non. Vous pouvez garder votre propre page de tarifs dans l'app web et appeler simplement revenuecat://purchase depuis le bouton d'achat. Le paywall natif de RevenueCat est facultatif et peut être testé en A/B depuis le tableau de bord.
Trois façons de mettre votre app dans les stores
Même résultat, charge de travail différente de votre côté. Les trois formules incluent la garantie d'approbation et le support humain 24/7.
Faites-le vous-même
$109 par plateforme, paiement unique
La licence WebViewGold : un projet Xcode ou Android Studio prêt à l'emploi. Collez votre URL, définissez le nom et l'icône, activez les fonctionnalités, compilez et soumettez. Mises à jour gratuites à vie.
Ni Mac, ni Xcode, ni Android Studio : configurez dans le navigateur, nous compilons les deux apps dans le cloud et les transmettons à App Store Connect et à la Play Console.
Envoyez-nous votre URL et votre icône. Notre équipe configure, compile et livre votre app sous 72 heures, en marque blanche, projets sources inclus. Les deux plateformes pour $1,158.
Les remboursements sont accordés aux conditions indiquées dans notre FAQ : un refus non lié au contenu par Apple et/ou Google, demandé dans les 14 jours suivant l'achat.