Requisitos Previos
Antes de comenzar, asegúrate de tener instalado:- PHP 8.2 o superior
- Composer
- Node.js 18+ y npm
- MySQL 8.0+
- Git
Instalación Rápida
Ejecutar setup automatizado
El proyecto incluye un script composer que automatiza toda la configuración inicial:Este comando ejecuta automáticamente:
composer install- Instala dependencias PHP- Copia
.env.examplea.env(si no existe) php artisan key:generate- Genera la clave de aplicaciónphp artisan migrate --force- Ejecuta migraciones de base de datosnpm install- Instala dependencias JavaScriptnpm run build- Compila assets frontend
Antes de ejecutar
composer setup, asegúrate de configurar la conexión a la base de datos en el archivo .envEjecutar migraciones y seeders
Si ya ejecutaste Los seeders incluyen:
composer setup, las migraciones ya están aplicadas. Si necesitas ejecutarlas manualmente:- DenominacionesBilletesSeeder: Denominaciones de billetes peruanos (S/200, S/100, S/50, etc.)
- UtilidadesSeeder: Datos de prueba para reportes de utilidades
Iniciar entorno de desarrollo
Para desarrollo, usa el comando que inicia todos los servicios necesarios:Este comando inicia simultáneamente:
- Servidor Laravel (
php artisan serve) en http://localhost:8000 - Worker de cola (
php artisan queue:listen) para operaciones asíncronas SUNAT - Laravel Pail (
php artisan pail) para logs en tiempo real - Vite HMR (
npm run dev) para recarga en caliente del frontend
El worker de cola es obligatorio para las operaciones SUNAT asíncronas como Resumen Diario, Comunicación de Baja y Guías de Remisión (GRE).
Primer Acceso
Crear usuario administrador
Por defecto, el sistema no crea un usuario admin. Debes crearlo manualmente usando tinker o crear un seeder personalizado.
Configurar empresa
Desde el panel de administración:
- Navega a Configuración → Empresas
- Configura los datos de tu empresa:
- RUC
- Razón Social
- Dirección completa con Ubigeo
- Credenciales SOL SUNAT (para producción)
- Modo:
betapara pruebas,productionpara operaciones reales
Subir certificado digital
Sube tu certificado digital (.pem) en:Para pruebas en beta, puedes usar:Ver más detalles en Certificados SUNAT
Configuración Básica SUNAT
Credenciales GRE (Guías de Remisión Electrónica)
Edita el archivo.env:
.env
Las guías de remisión usan la API REST GRE que requiere credenciales OAuth2 separadas de las credenciales SOL.
Modo Beta vs Producción
Para pruebas (modo beta), el sistema usa automáticamente:config/sunat.php y no necesitas cambiarlos para pruebas.
Comandos de Desarrollo
Build de Producción
Verificación de Instalación
Verificar servicios
Asegúrate que todos los servicios estén corriendo:✅ Servidor Laravel en http://localhost:8000
✅ Queue worker procesando jobs
✅ Vite HMR en http://localhost:5173
✅ Base de datos conectada
✅ Queue worker procesando jobs
✅ Vite HMR en http://localhost:5173
✅ Base de datos conectada
Próximos Pasos
Arquitectura
Comprende la arquitectura Laravel + React del sistema
Configuración
Configuración detallada de la aplicación
Base de Datos
Estructura de la base de datos y migraciones
Certificados SUNAT
Configurar certificados digitales y credenciales
Problemas Comunes
Error: No se encontró certificado PEM
Error: No se encontró certificado PEM
Asegúrate de tener el certificado en:O específico de tu empresa:
La cola no procesa jobs
La cola no procesa jobs
Verifica que el queue worker esté corriendo:O usa
composer dev que lo inicia automáticamente.Error al crear empresa con id_empresa diferente a 1
Error al crear empresa con id_empresa diferente a 1
Este sistema es monempresa. Solo funciona con
id_empresa = 1. El selector de empresas está deshabilitado.Vite HMR no recarga cambios
Vite HMR no recarga cambios
Asegúrate que el servidor Vite esté corriendo:Y que el archivo
.env tenga: