MARKETPLACE
PLUGINS
REVENUECAT ADVANCED
RevenueCat Advanced logo

RevenueCat Advanced

Published April 2026
   •    Updated this month

Plugin details

Advanced RevenueCat integration for Bubble.io apps. Manage in-app subscriptions, purchases, and user entitlements with ease. Full API support for iOS, Android, and web platforms. Compatible with BDK Native for mobile apps.

$100

One time  •  Or  $29/mo

2.6 stars   •   5 ratings
5 installs  
This plugin does not collect or track your personal data.

Platform

Web & Native mobile

Contributor details

Wax Palm Ventures logo
Wax Palm Ventures
Joined 2021   •   1 Plugin
View contributor profile

Instructions

ENGLISH
To allow the RevenueCat plugin installed in your Bubble app to read subscriptions and charge money, you must first connect the payment platforms (Apple, Google, Stripe) to RevenueCat.
📖 DETAILED INPUT GUIDE:

1. revenuecat_api_key (Secret v1):
  Used for secure Server-Side Actions.
  Path: Dashboard > Project Settings > API Keys > Secret API Keys (starts with 'sk_').

2. revenuecat_api_key_v2 (Secret v2):
  Required for advanced v2 endpoints (Product Mgmt).
  Path: Dashboard > Project Settings > API Keys > Secret API Keys.

3. api_key (Public SDK):
  Used for the API Connector (Get Offerings, etc.).
  Path: Dashboard > Project Settings > API Keys > Public SDK Keys. Choose for your specific platform.

4. app_user_id:
  The unique identifier of the user in your app. In Bubble, use 'Current User's unique id'.

5. entitlement_id:
  The ID of the feature/level you want to grant (e.g., 'premium'). Found in RevenueCat > Entitlements.

6. expiration_date:
  ISO 8601 date (e.g., 2026-12-31T23:59:59Z) or keywords like 'lifetime' (for Grant Promotional Entitlement).

═══════════════════════════════════════════════════════════

SETUP INSTRUCTIONS:



DOC: https://bubble.io/page?id=revenuecat-advanced-demo&tab=Design&name=documentation_english&type=page&elements=bTHMN0

📖 COMPLETE PLATFORM SETUP GUIDE (Apple, Google, Stripe):
Full guide on where to find your App Store, Play Store & Stripe Keys:
https://github.com/carlosdmoron/Bubble-Plugin-RevenueCat-Advanced/blob/main/SETUP_PLATAFORMAS.md


1. Create a RevenueCat account at https://www.revenuecat.com

2. Get your Secret API Key from RevenueCat Dashboard:
  - Go to Dashboard > Apps > [Your App] > API Keys
  - Copy your Secret API Key (starts with "sk_")
  - IMPORTANT: Never use Public API Keys - they are not secure for server-side calls

3. In your Bubble app, go to Plugins > RevenueCat Advanced

4. Paste your Secret API Key in the "api_key" field

═══════════════════════════════════════════════════════════
AVAILABLE API CALLS (12 Endpoints)
═══════════════════════════════════════════════════════════

📊 SUBSCRIBER MANAGEMENT:

1. GET SUBSCRIBER INFO
  What it does: Retrieves complete subscription information for a user
  When to use:
  - Loading user profile
  - Verifying active subscription status
  - Displaying renewal date or billing information
 
  Use case examples:
  • User logs in → verify if they have premium subscription
  • Display in dashboard → "Your subscription renews on Nov 15, 2025"
  • Conditional logic → allow access only if subscription_status = "active"
  • Detect cancellations → show message if will_renew = false

2. VALIDATE RECEIPT
  What it does: Validates purchase receipts from App Store or Google Play Store
  When to use:
  - After an in-app purchase
  - To verify a transaction is legitimate
  - When restoring previous purchases
 
  Use case examples:
  • User purchases plan → validate receipt before granting premium access
  • "Restore Purchases" button → verify saved receipts
  • Prevent fraud → validate receipt is not fake or duplicated
  • Cross-device sync → validate on user's new device

3. UPDATE SUBSCRIBER ATTRIBUTES
  What it does: Stores custom user data for segmentation and analytics
  When to use:
  - Saving additional user information
  - Creating custom segments
  - For analysis and reporting
 
  Use case examples:
  • Onboarding completed → {"signup_source": "google_ads", "campaign": "summer2025"}
  • User upgrades plan → {"subscription_tier": "premium", "upgrade_date": "2025-10-24"}
  • Demographics → {"user_type": "student", "university": "MIT"}
  • Preferences → {"language": "en", "notifications": "enabled"}

4. DELETE SUBSCRIBER
  What it does: Permanently deletes all user data
  When to use:
  - User requests account deletion
  - GDPR/privacy compliance
  - Cleanup of inactive user data
 
  Use case examples:
  • User clicks "Delete my account" → permanently erase everything
  • GDPR request → comply with right to be forgotten
  • Annual cleanup → remove users inactive for 2+ years
  • WARNING: This action is irreversible

5. CREATE OR TRANSFER SUBSCRIBER
  What it does: Creates new subscriber or transfers subscription between IDs
  When to use:
  - Migrating users between systems
  - Changing user identifier
  - Merging duplicate accounts
 
  Use case examples:
  • User changes email → transfer from user@old.com to user@new.com
  • Account merge → consolidate history from 2 profiles
  • System migration → change from numeric user_id to email
  • Maintain subscription → when switching unique identifiers

6. GET OFFERINGS
  What it does: Retrieves all available plans and products
  When to use:
  - Displaying pricing page (paywall)
  - Listing subscription options
  - Running A/B tests on offers
 
  Use case examples:
  • Paywall → show "Basic $9.99/mo", "Premium $19.99/mo", "Enterprise $49.99/mo"
  • Pricing page → list all options with descriptions
  • A/B test → show offering_a vs offering_b by segment
  • Free trial → display "7 days free, then $14.99/month"

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🛍️ PRODUCT MANAGEMENT (API v2):

7. LIST PRODUCTS
  What it does: Lists all products configured in your project
  When to use:
  - Admin panel management
  - Catalog synchronization
  - Reporting and analytics
 
  Use case examples:
  • Admin dashboard → display table of all products
  • Auto-sync → update catalog every 24 hours
  • Monthly report → analyze sales by product
  • Verification → ensure products are configured correctly

8. CREATE PRODUCT
  What it does: Creates new products from your application
  When to use:
  - Dynamic product management
  - Automatic launches
  - Region-specific products
 
  Use case examples:
  • Admin creates plan → "Premium Plus" with additional AI features
  • Automatic launch → create product when activating new feature
  • Regionalization → create "Premium_EU" with euro pricing
  • Temporary products → create Black Friday special offer

9. LIST OFFERINGS V2
  What it does: Lists offerings with advanced v2 API functionality
  When to use:
  - Multi-project management
  - Complex configurations
  - Custom metadata
 
  Use case examples:
  • Multi-tenant → show specific offerings per client/project
  • Advanced metadata → filter offerings by custom tags
  • Corporate dashboard → manage offerings across multiple apps
  • Granular configuration → offerings with complex rules

10. LIST ENTITLEMENTS
   What it does: Lists all available permissions/access rights
   When to use:
   - Configuring which features each plan unlocks
   - Feature access control
   - Permission management
   
   Use case examples:
   • Initial setup → define entitlements: "premium_features", "unlimited_storage"
   • Verify access → if user.entitlements includes "export_data" → allow export
   • Features panel → show which features user has enabled
   • Debugging → verify which entitlements are configured

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎁 PROMOTIONAL OFFERS:

11. GRANT PROMOTIONAL ENTITLEMENT
   What it does: Grants temporary promotional access to premium features
   When to use:
   - Marketing campaigns
   - Special trial periods
   - Customer compensation
   - Influencer collaborations
   
   Use case examples:
   • Black Friday → grant 30 days free: {duration: "P30D", entitlement: "premium_features"}
   • Influencer marketing → give 90 days free to content creators
   • Compensation → customer had technical issue → 1 month free
   • Beta testers → free early access for 60 days
   • Referral program → referred friend gets 2 weeks free

12. REVOKE PROMOTIONAL ENTITLEMENT
   What it does: Cancels promotional access before its natural expiration
   When to use:
   - Canceling promotions early
   - Resolving abuse cases
   - Correcting grant errors
   
   Use case examples:
   • Abuse detected → user mass-shared promo code → revoke access
   • Campaign change → end promotion before planned date
   • Human error → access given to wrong user → correct immediately
   • Terms violation → user broke conditions → remove promo access

═══════════════════════════════════════════════════════════

📱 MOBILE APP INTEGRATION:
For iOS/Android apps, use this plugin with BDK Native for full integration.

📚 COMPLETE DOCUMENTATION:
https://www.revenuecat.com/docs

💡 SUPPORT:
All endpoints support dynamic parameters for multi-user apps.
Each user configures their own api_key once.


═══════════════════════════════════════════════════════════
INSTRUCCIONES EN ESPAÑOL
═══════════════════════════════════════════════════════════

INSTRUCCIONES DE CONFIGURACIÓN:

📖 GUÍA COMPLETA DE PLATAFORMAS (Apple, Google, Stripe):
Guía paso a paso sobre dónde encontrar todas tus llaves (App Store, Play Store y Stripe Webhook):
https://github.com/carlosdmoron/Bubble-Plugin-RevenueCat-Advanced/blob/main/SETUP_PLATAFORMAS.md


1. Crea una cuenta en RevenueCat: https://www.revenuecat.com

2. Obtén tu Secret API Key desde el Dashboard:
  - Ve a Dashboard > Apps > [Tu App] > API Keys
  - Copia tu Secret API Key (comienza con "sk_")
  - IMPORTANTE: Nunca uses Public API Keys - no son seguras

3. En tu app Bubble, ve a Plugins > RevenueCat Advanced

4. Pega tu Secret API Key en el campo "api_key"

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LLAMADAS API (12 Endpoints)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📊 GESTIÓN DE SUSCRIPTORES:

1. GET SUBSCRIBER INFO
  Qué hace: Obtiene información completa de suscripción
  Cuándo usar: Cargar perfil, verificar estado, mostrar facturación
  Ejemplos:
  • Login → verificar suscripción premium
  • Dashboard → "Tu suscripción se renueva el 15 Nov 2025"
  • Lógica → acceso si status = "active"

2. VALIDATE RECEIPT
  Qué hace: Valida recibos de App Store/Play Store
  Cuándo usar: Después de compra, restaurar compras
  Ejemplos:
  • Compra → validar antes de dar acceso premium
  • Botón Restaurar → verificar recibos guardados
  • Prevenir fraude → validar legitimidad

3. UPDATE SUBSCRIBER ATTRIBUTES
  Qué hace: Guarda datos personalizados del usuario
  Cuándo usar: Segmentación, analytics, atributos custom
  Ejemplos:
  • Onboarding → {"signup_source": "google_ads"}
  • Upgrade → {"tier": "premium"}
  • Preferencias → {"language": "es"}

4. DELETE SUBSCRIBER
  Qué hace: Elimina todos los datos del usuario
  Cuándo usar: Solicitud de borrado, GDPR, limpieza
  Ejemplos:
  • Eliminar cuenta → borrado permanente
  • GDPR → derecho al olvido
  • ⚠️ ADVERTENCIA: Acción irreversible

5. CREATE OR TRANSFER SUBSCRIBER
  Qué hace: Crea usuario o transfiere suscripción
  Cuándo usar: Migración, cambio de ID, fusionar cuentas
  Ejemplos:
  • Cambio email → transferir suscripción
  • Fusión → consolidar perfiles
  • Migración → cambiar identificador

6. GET OFFERINGS
  Qué hace: Obtiene planes y productos disponibles
  Cuándo usar: Paywall, pricing, A/B testing
  Ejemplos:
  • Paywall → "Basic $9.99", "Premium $19.99"
  • A/B test → diferentes ofertas por segmento
  • Trial → "7 días gratis, luego $14.99/mes"

🛍️ GESTIÓN DE PRODUCTOS:

7. LIST PRODUCTS - Lista productos del proyecto
8. CREATE PRODUCT - Crea nuevos productos
9. LIST OFFERINGS V2 - Ofertas con API v2 avanzada
10. LIST ENTITLEMENTS - Lista permisos/derechos

🎁 OFERTAS PROMOCIONALES:

11. GRANT PROMOTIONAL ENTITLEMENT
   Qué hace: Otorga acceso promocional temporal
   Ejemplos:
   • Black Friday → 30 días gratis
   • Influencers → 90 días acceso
   • Compensación → 1 mes gratis por problema

12. REVOKE PROMOTIONAL ENTITLEMENT
   Qué hace: Cancela acceso promo antes de expirar
   Ejemplos:
   • Abuso → revocar acceso
   • Error → corregir otorgamiento


═══════════════════════════════════════════════════════════
INSTRUCTIONS EN FRANÇAIS
═══════════════════════════════════════════════════════════

INSTRUCTIONS DE CONFIGURATION:

1. Créez un compte RevenueCat: https://www.revenuecat.com

2. Obtenez votre Secret API Key depuis le Dashboard:
  - Allez à Dashboard > Apps > [Votre App] > API Keys
  - Copiez votre Secret API Key (commence par "sk_")
  - IMPORTANT: N'utilisez jamais les Public API Keys - non sécurisées

3. Dans votre app Bubble, allez à Plugins > RevenueCat Advanced

4. Collez votre Secret API Key dans le champ "api_key"

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
APPELS API DISPONIBLES (12 Endpoints)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📊 GESTION DES ABONNÉS:

1. GET SUBSCRIBER INFO
  Fonction: Récupère les informations d'abonnement
  Quand utiliser: Charger profil, vérifier statut, afficher facturation
  Exemples:
  • Connexion → vérifier abonnement premium
  • Tableau de bord → "Votre abonnement se renouvelle le 15 nov 2025"
  • Logique → accès si status = "active"

2. VALIDATE RECEIPT
  Fonction: Valide les reçus App Store/Play Store
  Quand utiliser: Après achat, restaurer achats
  Exemples:
  • Achat → valider avant accès premium
  • Bouton Restaurer → vérifier reçus sauvegardés
  • Prévenir fraude → valider légitimité

3. UPDATE SUBSCRIBER ATTRIBUTES
  Fonction: Enregistre données personnalisées utilisateur
  Quand utiliser: Segmentation, analytics, attributs custom
  Exemples:
  • Onboarding → {"signup_source": "google_ads"}
  • Upgrade → {"tier": "premium"}
  • Préférences → {"language": "fr"}

4. DELETE SUBSCRIBER
  Fonction: Supprime toutes les données utilisateur
  Quand utiliser: Demande suppression, RGPD, nettoyage
  Exemples:
  • Supprimer compte → effacement permanent
  • RGPD → droit à l'oubli
  • ⚠️ ATTENTION: Action irréversible

5. CREATE OR TRANSFER SUBSCRIBER
  Fonction: Crée utilisateur ou transfère abonnement
  Quand utiliser: Migration, changement ID, fusionner comptes
  Exemples:
  • Changement email → transférer abonnement
  • Fusion → consolider profils
  • Migration → changer identifiant

6. GET OFFERINGS
  Fonction: Récupère plans et produits disponibles
  Quand utiliser: Paywall, tarification, A/B testing
  Exemples:
  • Paywall → "Basic 9,99€", "Premium 19,99€"
  • A/B test → offres différentes par segment
  • Essai → "7 jours gratuits, puis 14,99€/mois"

🛍️ GESTION DES PRODUITS:

7. LIST PRODUCTS - Liste produits du projet
8. CREATE PRODUCT - Crée nouveaux produits
9. LIST OFFERINGS V2 - Offres avec API v2 avancée
10. LIST ENTITLEMENTS - Liste permissions/droits

🎁 OFFRES PROMOTIONNELLES:

11. GRANT PROMOTIONAL ENTITLEMENT
   Fonction: Accorde accès promotionnel temporaire
   Exemples:
   • Black Friday → 30 jours gratuits
   • Influenceurs → 90 jours d'accès
   • Compensation → 1 mois gratuit pour problème

12. REVOKE PROMOTIONAL ENTITLEMENT
   Fonction: Annule accès promo avant expiration
   Exemples:
   • Abus → révoquer accès
   • Erreur → corriger attribution

📚 DOCUMENTATION: https://www.revenuecat.com/docs
💡 Tous les endpoints supportent paramètres dynamiques multi-utilisateurs

Types

This plugin can be found under the following types:
Api   •   Action

Categories

This plugin can be found under the following categories:
Mobile   •   Payment   •   Ecommerce   •   Technical

Resources

Support contact
Documentation
Tutorial

Rating and reviews

Average rating (2.6)

error not fixed
June 16th, 2026
Hi Carlos, Thanks for letting me know. I have checked my RevenueCat configuration and all of my iOS subscriptions, products, offerings, and API keys are visible and configured correctly in the RevenueCat dashboard. When I set the platform value to ios in the plugin, I receive the following error: RevenueCat API Error (HTTP 400): {"code":7000,"message":"Invalid Platform."} I also tested by leaving the platform field empty, but I still receive the exact same "Invalid Platform" error. Based on my testing, the issue does not appear to be related to my RevenueCat setup. It seems that the plugin is not able to retrieve data correctly from RevenueCat on the server side. Previously, the plugin was returning the error app_user_id and api_key are required. That issue appears to have been fixed, but now the workflow is failing with the "Invalid Platform" error instead. Could you please perform a deeper investigation? From my side, RevenueCat is configured correctly and all data is available. It seems the plugin is not passing the platform value correctly or is unable to fetch data from RevenueCat properly. Can you please give me the altenate solution as soon as poosible. Otherwise i will not pay for this. Thank you. Best regards, Ucodesoft
Sent ap editor acccess to email
June 10th, 2026
Thanks for the update. I have share my bubble editor access (read-only mode) to your email. Can you please check and let me know.if anything needed from my side please let me know.
Hi Ucodesoft, The issue has been fixed on our side and the updated version is now live. Please update the RevenueCat Advanced plugin to the latest version and review the changes. After updating, re-test your workflows, including "Get Offerings," to confirm everything is working correctly. Let us know if you encounter any further issues. (plugin author)
June 10th, 2026
  •  
Wax Palm Ventures
Plugin Still Throws “app_user_id and api_key are required” Even After Proper Configuration
May 26th, 2026
HI Carlos, Thanks for the update. I hope you are doing well. The issue is that no matter which workflow I test, the plugin keeps showing the same error repeatedly. I have sent an email also. I have already added all the required keys correctly, including: Secret API Key (sk_...) Public SDK Key (appl_...) app_user_id But the plugin still keeps returning the error: app_user_id and api_key are required Because of this, I am unable to test or continue any RevenueCat workflow. Please check this issue carefully, as it seems to be a core plugin problem rather than a setup issue from my side. Thanks And Regards
Plugin Still Throws “app_user_id and api_key are required” Even After Proper Configuration
May 22nd, 2026
Thanks for the update and for taking my previous review as a high priority issue. However, I am still facing another major problem with the plugin. I have already provided all the required keys correctly: revenuecat_api_key (Secret Key starting with sk_...) api_key (Public SDK Key starting with appl_...) Both keys are properly added in the plugin settings. I have also provided the app_user_id, but whenever I run the workflow, the plugin console still returns the following error: app_user_id and api_key are required Because of this issue, I am unable to test any plugin actions or continue the RevenueCat integration. This seems like a very common and critical issue, so please investigate and fix it as a high priority. It would also help if you could provide clearer documentation or an example setup for: required keys correct app_user_id format workflow configuration required initialization steps Thank you.
Hello, Thank you very much for your valuable feedback and for continuing to evaluate the plugin. Below I detail the changes we’ve included in version v1.3.1 and how they will affect your workflow. 📦 Main improvements Support for legacy and current field names The validateConfig function now automatically normalizes: api_key → public_sdk_key revenuecat_api_key → secret_api_key Therefore, you can continue using the names you already had configured in your project without needing to update them. Automatic generation of app_user_id If you don’t send an app_user_id when running purchase workflows, the plugin creates a UUID v4 at runtime and uses it in the native call. The UUID is shown in the console (Generated missing app_user_id: <uuid>), which makes it easy to persist later if you want to store it in your users table. Native purchase UI on mobile devices The Purchase Package and Purchase Product workflows now invoke the StoreKit (iOS) and Google Play Billing (Android) interfaces directly. No “simulation” window is shown; the user sees the native UI provided by the operating system, with the usual confirmation and cancellation messages. New documentation: https://bubble.io/page?id=revenuecat-advanced-demo&tab=Design&name=documentation_english&type=page&elements=bTHMN0 If you have any additional feedback, please feel free to write to the email address. carlosdmoron1225@gmail.com (plugin author)
May 22nd, 2026
  •  
Wax Palm Ventures
Plugin Cannot Handle Native iOS RevenueCat Purchase Flow Properly
May 21st, 2026
The plugin is not handling the RevenueCat purchase flow properly for native iOS apps. Issues I faced: [GET] Get Offerings returns: app_user_id and api_key are required even after correctly adding: Secret API Keys Public SDK Keys app_user_id The plugin configuration is confusing because: some actions require SDK keys some require Secret keys but there is no clear documentation about which action uses which key. The plugin successfully fetches RevenueCat products/offering metadata partially, but there is no native purchase action available. Missing important actions: Purchase Package Purchase Product Restore Purchases Without these actions, the plugin cannot complete the actual iOS In-App Purchase flow. The plugin appears to work like a REST API wrapper only, not a complete RevenueCat native SDK integration. There is no built-in method to: open Apple native purchase popup complete StoreKit purchase flow restore subscriptions check active entitlements automatically after purchase Documentation is incomplete regarding: required setup app_user_id format difference between Secret API key and Public SDK key Bubble workflow examples native mobile purchase setup with BDK Native/Natively Even after: RevenueCat configured correctly App Store products imported API keys added offerings created the plugin still fails to fetch offerings consistently.
Hello, Thank you again for taking the time to provide such detailed feedback regarding the native iOS RevenueCat purchase flow. Your review helped us identify several areas where the plugin experience and documentation needed significant improvements. Based directly on your comments, we have now released a major improvement update focused specifically on native mobile support for Bubble Mobile / React Native environments. The new version now includes: • Native RevenueCat SDK bridge integration for Bubble Mobile • Purchase Package workflow • Purchase Product workflow • Restore Purchases workflow • Improved handling for native iOS and Android purchase flows • Better separation between Public SDK Keys and Secret API Keys • Expanded setup documentation for BDK Native / Bubble Mobile workflows • Updated examples and workflow guidance You were absolutely right that the previous implementation behaved more like a REST wrapper than a complete native purchase solution. This update was designed specifically to address that gap. We would truly appreciate it if you could test the new version and share your thoughts with us again. We are actively refining the plugin and will continue improving it over the next week based on real developer feedback until the experience reaches the level of quality we are aiming for. Your comments genuinely helped shape this release, and we are very grateful for the detailed technical feedback you provided. If you encounter any additional issues, edge cases, or suggestions, please feel free to reply directly. We are listening carefully and iterating quickly. Thank you again for helping us improve RevenueCat Advanced. Best regards, Carlos Morón (plugin author)
May 22nd, 2026
  •  
Wax Palm Ventures
Bubble