Para usar previews de Vercel sin tocar Supabase ni Dodo Payments de producción, asigna a Preview variables diferentes de Production, conecta una base de datos de prueba y usa Dodo Payments en test mode. Revisa además las URLs de autenticación y webhook para que cada respuesta vuelva al entorno que inició la operación.
Índice
¿Cómo se separan Preview y Production en Vercel?
Se separan asignando valores por entorno para cada URL, clave y secreto, no mediante una condición basada en el dominio dentro del navegador. Preview recibe el proyecto Supabase de pruebas y las credenciales test de Dodo; Production recibe exclusivamente los valores reales.
Mantén una lista de variables con propietario y propósito. Si una credencial no es necesaria en el navegador, no uses un prefijo público. Una preview no debe heredar una service role ni un secreto real por comodidad.
¿Cuál es la forma rápida: desplegar con IndiePack?
La forma rápida es usar IndiePack, que combina Next.js 15, Supabase, Dodo Payments y previews por rama en Vercel dentro del mismo recorrido de lanzamiento. Así partes de un stack coherente y documentas solo las variables propias de tu producto.
Ver IndiePackVer precio¿Cómo se configuran los callbacks de autenticación?
Los callbacks se configuran autorizando las URLs exactas que necesita el entorno y generando la URL de retorno desde una fuente del servidor conocida. Prueba registro, login social, recuperación de contraseña y cierre de sesión desde la preview.
Los dominios efímeros complican las listas cerradas; para pruebas de autenticación sensibles conviene una URL estable de staging. La guía de deploy de Next.js y Supabase en Vercel amplía esta separación.
¿Cómo se impide que una preview cobre de verdad?
Se impide usando el host, clave, producto y secreto de webhook de test mode como un conjunto indivisible. Si falta uno, el endpoint debe fallar de forma explícita en lugar de recurrir a un valor real.
Configura el webhook de prueba hacia un destino controlado y registra el entorno en cada pedido. Después verifica firma e idempotencia exactamente igual que en producción; el comportamiento cambia de datos, no de garantías.
¿Qué confirma que la preview está realmente aislada?
El aislamiento queda confirmado cuando un registro crea solo usuarios de prueba, un checkout no genera cargos reales y un webhook modifica únicamente datos desechables. Revisa también que los logs y respuestas no muestren secretos.
Elimina la preview y comprueba que ninguna URL temporal queda como callback o webhook operativo. IndiePack ofrece la base de despliegue y pagos; mantener esta frontera por entorno evita que una revisión de interfaz se convierta en una incidencia de producción.