Somos un SaaS clínico empaquetado como PWA para iOS (PWABuilder / WKWebView). Actualmente cobramos con Stripe en la web. Apple nos exige In-App Purchases (IAP) en la app. El objetivo es implementar un flujo cruzado usando RevenueCat exclusivo para compras en iOS, actualizando nuestro backend (Python) vía webhooks, sin alterar nuestra infraestructura actual de Stripe.
Alcance del Trabajo (3 Capas):
1. IOS Nativo (Swift / Xcode):
* Instalar e inicializar SDK de RevenueCat.
* Crear un puente WKScriptMessageHandler (Iapbridge) para comunicar la pwa (js) con swift.
* Programar función Swift que reciba app_user_id y productId, ejecute
Purchases.shared.purchase() y notifique el éxito a la web.
2. Frontend (pwa / js):
* detectar si es entorno nativo ios.
* En iOS: Ocultar UI de Stripe y mostrar botón "Suscribirse con Apple" que dispare el puente nativo.
* Gestionar redirección nativa (/account/subscriptions) para usuarios que intenten gestionar su facturación de Apple.
3. Backend (Python):
* Crítico: No tocar la lógica de Stripe existente.
* Crear nuevo endpoint para recibir webhooks de RevenueCat.
* Filtrar y procesar solo eventos de Apple ("store": "app_store").
* Activar estado "Premium" con Initial_purchase / renewal y revocarlo con expiration / cancellation.
Requisitos:
* Experiencia demonstrable en Apple IAP, Swift (WKWebView) y RevenueCat.
* Conocimiento en PWAs, JS y Python.
Entregables:
* Código nativo iOS documentado.
* Snippets JS para integrar en nuestro frontend.
* Código del endpoint (Python).
* Soporte en pruebas Sandbox y subida a App Store Connect.
Plazo de Entrega: No definido