Si usas algunas funciones de Firebase en combinación con Stripe, puedes procesar pagos en tu app web sin necesidad de crear tu propia infraestructura de servidor. En esta guía, aprenderás a implementar y personalizar tu propia versión de la app de código abierto de ejemplo cloud-functions-stripe-sample.web.app.
Antes de comenzar, crea un proyecto en Firebase console y configura una cuenta de Stripe.
Descripción general de la implementación
- Configura una cuenta de Stripe.
- Crea un proyecto en Firebase console.
- Habilita la facturación para tu proyecto y configura la CLI de Firebase
para usar tu proyecto con
firebase use --add
. - Obtén el código fuente de la app de muestra de Firestripe. Configúralo con la información correspondiente de tu proyecto y personaliza el código para adaptarlo a tu app.
- Una vez que hayas implementado tu app, busca una lista de usuarios y de transacciones en Firebase console.
Configura y, luego, implementa la app de ejemplo
- Obtén el código fuente.
- Habilita el acceso a Google y a la dirección de correo electrónico en la configuración del proveedor de autenticación.
- Habilita Cloud Firestore.
- Instala la CLI de Firebase.
si aún no lo hiciste y accede con
firebase login
. - Configura esta muestra para usar tu proyecto con
firebase use --add
. - Ejecuta
cd functions; npm install; cd -
para instalar las dependencias de forma local Agrega tu clave secreta de la API de Stripe. a la configuración del entorno Cloud Functions:
firebase functions:config:set stripe.secret=<YOUR STRIPE SECRET KEY>
Configura tu clave publicable de Stripe en
/public/javascript/app.js
:const STRIPE_PUBLISHABLE_KEY=<YOUR STRIPE PUBLISHABLE KEY>;
Implementa tu proyecto con
firebase deploy
. Este comando realiza las siguientes acciones:- Envía todos los archivos del directorio
public
a Hosting para que tu sitio web esté disponible. - Envía el código del directorio
functions
a Cloud Functions for Firebase. - Establece reglas de seguridad en tu base de datos de Cloud Firestore como se configuró en
firestore.rules
Las reglas proporcionadas solo permiten que un usuario lea y escriba sus propios pagos y formas de pago.
- Envía todos los archivos del directorio
Prueba la app de muestra
Visita la URL de tu app de pagos en your-firebase-project-id.web.app
y verifica que funcionen las siguientes características:
- Puedes acceder a través de Google o de correo electrónico.
- Puedes agregar una nueva tarjeta de prueba Stripe y verla en el elemento de selección de la tarjeta.
- Puedes seleccionar una de tus tarjetas y cargarla.
- Puedes salir de la sesión.
Para comparar, consulta cloud-functions-stripe-sample.web.app.
A fin de brindarles una experiencia optimizada a tus usuarios, puedes personalizar más el aspecto de tu página de pagos o incorporarla en tu app existente.
Visualiza los pagos procesados
Una vez que hayas implementado y configurado tu página de pagos, puedes consultar Firebase console y ver una lista de usuarios junto con sus formas de pago y pagos.
- Ve a Cloud Firestore.
- Busca la lista de usuarios. Si agregaron tarjetas de crédito o hicieron transacciones, verás una lista con esa información por cada usuario.
Acepta pagos reales
Cuando estés listo para recibir pagos reales, deberás intercambiar las claves de prueba por tus claves activas. Consulta la documentación de Stripe para obtener más información sobre estas claves.
Actualiza la configuración del secreto de Stripe:
firebase functions:config:set stripe.secret=<YOUR STRIPE LIVE SECRET KEY>
Configura tu clave publicable en
/public/javascript/app.js
.Vuelve a implementar Cloud Functions y Hosting para que se apliquen los cambios:
firebase deploy