Ganar dinero
Pagos con Stripe
Cobra a los usuarios de apps generadas con IA usando tu propia cuenta de Stripe: las claves se quedan en el servidor y el cumplimiento se verifica por webhook
1Lo que esto le da a tu app#
Permite que las apps que generas cobren dinero real (muros de pago, mejoras «Pro», botones de compra) mediante Stripe Checkout.
Es TU cuenta de Stripe: tus claves, tu dinero, pagado directamente a ti. AppMint no se queda con comisión ni asume responsabilidad por los pagos (sin Stripe Connect). Conectas Stripe UNA sola vez en Ajustes; todas las apps que generes la reutilizan: solo describes qué vender, nunca vuelves a introducir claves.
La IA escribe todo el código de pagos. Tu clave secreta nunca va dentro de la app: vive en tu backend de Supabase.
2Primero conecta Supabase (obligatorio)#
Los pagos con Stripe necesitan un servidor seguro que guarde tu clave secreta y confirme los pagos: ese servidor es tu proyecto de Supabase. Por eso conecta y activa Supabase primero (Ajustes → BACKEND - SUPABASE); el capítulo «🗄️ Backend de Supabase (conéctalo una vez)» al inicio de esta guía te explica cómo.
Si Supabase no está activo, verás «Claves de Stripe guardadas, pero los pagos también requieren Supabase activo». AppMint envía tu secreto de Stripe a tus funciones de Supabase automáticamente al desplegar: nunca se incluye en la app generada.
3Obtén tus claves de Stripe (empieza en modo de prueba)#
En una computadora:
- Abre el panel de Stripe y quédate en modo de prueba o sandbox mientras construyes (Stripe ahora llama «sandbox» al entorno de prueba; las cuentas antiguas muestran un interruptor Test/Live). Aquí no se hace ningún cargo real.
- Ve a Developers → API keys.
- Copia la «Publishable key» (empieza con pk_test_…) y revela y copia la «Secret key» (empieza con sk_test_…).
Usa la clave secreta estándar (sk_…), no una clave restringida (rk_…): AppMint valida y envía la clave sk_. No necesitas aprobación como comercio para crear y probar todo el flujo antes de activar los pagos reales.
4Conecta Stripe en AppMint#
Abre AI Studio → Ajustes → desplázate hasta «PAGOS - STRIPE (OPCIONAL)» → «CONECTAR STRIPE (TU CUENTA)»:
- Deja «Modo en vivo» DESACTIVADO por ahora (desactivado = modo de prueba).
- Pega tu clave publicable en el campo pk_test_….
- Pega tu clave secreta en el campo sk_test_… (se guarda cifrada en este dispositivo).
- Activa «Habilitar pagos de Stripe para las apps generadas».
- Toca «Validar y guardar claves de Stripe». AppMint comprueba el formato, se asegura de que ambas claves sean del mismo modo y verifica el secreto con Stripe. Si todo sale bien, verás «● Conectado (TEST)».
5Lo que AppMint conecta por ti#
Cuando generas una app con pagos, AppMint hace toda la conexión automáticamente: no tienes que tocar los paneles de Supabase ni de Stripe:
- Envía tu STRIPE_SECRET_KEY a tus funciones Edge de Supabase (cifrada, solo en el servidor).
- Despliega una función «create-checkout» (inicia una sesión de Stripe Checkout) y una función «stripe-webhook» (confirma los pagos).
- Registra el webhook en Stripe y guarda su secreto de firma.
- Crea una tabla «entitlements» para que la app sepa quién pagó.
La clave publicable (pk_) es el único valor de Stripe que va dentro de la app, y es seguro que sea pública.
6Describe tu muro de pago: la IA lo construye#
Solo di lo que quieres, en lenguaje normal. La IA añade el botón de compra, la llamada al pago y bloquea las funciones de pago por ti:
- «Cobra $5 una sola vez para desbloquear el tema Pro.»
- «Una suscripción de $9 al mes que quita los anuncios.»
- «Vende un PDF descargable por $19.»
Nunca pegas claves ni precios en el chat como configuración, solo la intención. El acceso se desbloquea únicamente cuando Stripe confirma el pago mediante el webhook, nunca por una marca de «pagado» del lado del cliente, así que no se puede falsificar.
7Prueba un pago de principio a fin#
En modo de prueba no se mueve dinero real. Ejecuta todo el flujo:
- Abre tu app y toca el botón de comprar o mejorar.
- En la página de pago de Stripe Checkout, paga con la tarjeta de prueba:
4242 4242 4242 4242, any future expiry, any CVC, any ZIP.
- Vuelves a la app y la función de pago se desbloquea.
- Revisa el panel de Stripe (modo de prueba) → Payments: verás el cargo de prueba.
Si se desbloquea, tu webhook y tus permisos de acceso están bien conectados.
4242 4242 4242 4242 exp: any future date CVC: any 3 digits8Pasa a producción cuando estés listo#
- Activa tu cuenta de Stripe para pagos reales (panel de Stripe → «Activate» / completa los datos de tu negocio).
- En Stripe, cambia del modo sandbox/prueba al modo en vivo y copia tus claves LIVE (pk_live_… y sk_live_…) desde Developers → API keys.
- En AppMint → Ajustes → Pagos: activa «Modo en vivo», pega las claves pk_live_/sk_live_ y toca «Validar y guardar». La insignia cambia a «● Conectado (LIVE)».
- Vuelve a compilar tu app.
AppMint impide mezclar claves de prueba y de producción, y al cambiar de modo se actualiza el secreto desplegado: prueba y producción nunca conviven en una misma app, así que no puedes publicar claves de prueba por accidente.
9Si algo no funciona#
- «Claves de Stripe guardadas, pero los pagos también requieren Supabase activo» → activa Supabase primero (paso 2).
- «Seleccionaste TEST pero las claves son LIVE» (o al revés) → el modo debe coincidir con el prefijo de tus claves (pk_test/sk_test frente a pk_live/sk_live).
- «Stripe rechazó la clave» → la clave secreta es incorrecta o fue revocada. Vuelve a copiarla desde Developers → API keys.
- El pago se completa pero la función sigue bloqueada → el webhook no llegó a Supabase. Vuelve a compilar o desplegar para que AppMint registre de nuevo el webhook, y confirma que el proyecto de Supabase de la app es el que conectaste.
- No puedes activar una cuenta en producción → Stripe NO da de alta comercios en algunos países (incluida la India). El modo de prueba funciona en todas partes para crear tu app; para cobros reales en esos países necesitarías un país compatible con Stripe u otro proveedor.