Membresías con Laravel Stripe y Filament 3

Información del proyecto descargable

Este proyecto incluye un aplicación web con Laravel Framework basada en membresías. Además, incluye una administración completa con Filament 3 para gestionar usuarios, membresías y características de las membresías.

Cursos recomendados para entender este proyecto

  • Curso de Laravel 11: En este curso desarrollamos una pequeña tienda sin pagos, aquí la utilizamos, pero le añadimos el sistema de pagos con Stripe.

  • WSL 2 en Windows con Laravel Sail: Si te encuentras trabajando en Windows y no sabes nada acerca de Laravel Sail, no te lo puedes perder.

  • Ruta de Filament 3: Todo lo desarrollado en este proyecto sale de esa ruta, no tiene desperdicio.

  • Laravel Cashier: En este curso aprenderás a configurar de forma completa tu cuenta de Stripe, el portal, los Webhooks, y todo lo que necesites relacionado con el proceso de pagos.

Formas de utilizar este proyecto

  • Como estudio, si te interesa aprender a desarrollar una aplicación web basada en membresías con Stripe, aquí tienes un ejemplo completo para que puedas ver como llevar a cabo este desarrollo.

  • Como punto de partida, si te gusta la idea, y quieres llevarla al siguiente nivel, tienes un punto de partida perfecto. Si en este punto necesitas mis servicios, puedes contactar conmigo a través del formulario de contacto y decirme qué necesitas.

Funcionalidades del Panel de Administración:

  • Gestión de Usuarios: Crea y administra usuarios desde el panel de administración.

  • Gestión de Membresías: Podrás crear tus membresías en la administración de Filament y crear el producto en tu cuenta de Stripe con un click.

  • Gestión de Características de Membresías: Crea, vincula y desvincula características a tus membresías para que tus clientes las puedan visualizar.

Funcionalidades de la web

  • Portal de Stripe: Conecta a tus clientes con Stripe a través de su portal, si tienes dudas, revisa este curso, cubrimos este proceso de forma completa. El proyecto aplica la configuración para añadir métodos de pago en formato tarjeta.

  • Membresías: Tus clientes podrán contratar membresías, una vez lo hagan, podrán acceder a los recursos que les quieras brindar, todo está preparado para que empieces a añadir contenido para tus clientes.

  • Webhooks: Integramos los Webhooks de Stripe de forma segura haciendo uso de la firma para realizar todos los procesos en background, Laravel cubre los Webhooks del sistema de suscripciones sin que debamos hacer nada.

Dependencias utilizadas

Archivo .env

Crea el archivo .env a partir del archivo .env.example y ajusta tus variables de entorno.

Recuerda que el host de la conexión con MySQL es el servicio de docker-compose, así que las credenciales de base de datos deberían ser algo similar a lo siguiente:

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=sail
DB_PASSWORD=password

En entornos de producción, ajusta la siguiente variable del .env para decir qué dominios utilizados en los correos electrónicos podrán acceder al panel admin, más información.

[email protected]

Cambia yourdomain.com por el dominio que deba tener acceso al panel.

Añade tus credenciales de Stripe para contectar tu tienda con Stripe:

STRIPE_KEY=
STRIPE_SECRET=
CASHIER_CURRENCY=eur
CASHIER_CURRENCY_LOCALE=es_ES
STRIPE_WEBHOOK_SECRET=

Lanzar proyecto con Sail

docker run --rm \
    -u "$(id -u):$(id -g)" \
    -v $(pwd):/var/www/html \
    -w /var/www/html \
    laravelsail/php83-composer:latest \
    composer install --ignore-platform-reqs

sail build
sail up -d
sail artisan key:generate
sail artisan migrate:fresh --seed
sail npm install && sail npm run dev

Comparte tu entorno Laravel Sail con Stripe para que se pueda comunicar en tiempo de desarrollo:

sail share

Define tu Webhook con la URL que el comando sail share te haya proporcionado, te recomiendo la URL sin HTTPS y con el puerto 8080:

sail artisan cashier:webhook --url="{url}/stripe/webhook"

Eso creará el Webhook en tu cuenta de Stripe con todos los eventos que debes utilizar para tu sistema de suscripciones, no debes hacer nada más, a no ser que desees personalizar alguna cosa.

Ya puedes visitar el panel /admin y empezar a gestionar tu futuro gran negocio.

¡Gracias por tu interés en nuestro proyecto! 😊

Cursosdesarrolloweb Cursosdesarrolloweb

Cursosdesarrolloweb es una plataforma educativa con cursos y tutoriales en texto y vídeo.

Términos y condiciones Política de privacidad Formulario de contacto

Copyright 2024 © Todos los derechos reservados.

Contacto