https://github.com/danielcastillomera/dashboard-enterprise
Sistema de gestión empresarial pensado para negocios de comercio y retail en Ecuador. Permite llevar el control completo de ventas, compras, inventario, clientes y pedidos desde un solo lugar, con un diseño moderno y fácil de usar. Incluye un módulo de facturación electrónica que genera comprobantes en formato XML.
https://github.com/danielcastillomera/dashboard-enterprise
dashboard erp facturacion-electronica inventory-management multi-tenant nextjs postgresql prisma react retail saas sri-ecuador supabase tailwindcss typescript
Last synced: 3 months ago
JSON representation
Sistema de gestión empresarial pensado para negocios de comercio y retail en Ecuador. Permite llevar el control completo de ventas, compras, inventario, clientes y pedidos desde un solo lugar, con un diseño moderno y fácil de usar. Incluye un módulo de facturación electrónica que genera comprobantes en formato XML.
- Host: GitHub
- URL: https://github.com/danielcastillomera/dashboard-enterprise
- Owner: danielcastillomera
- License: other
- Created: 2026-02-21T02:28:47.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-03-17T04:29:09.000Z (4 months ago)
- Last Synced: 2026-03-17T17:35:17.309Z (4 months ago)
- Topics: dashboard, erp, facturacion-electronica, inventory-management, multi-tenant, nextjs, postgresql, prisma, react, retail, saas, sri-ecuador, supabase, tailwindcss, typescript
- Language: TypeScript
- Homepage: https://dashboard-enterprise-kappa.vercel.app
- Size: 1.25 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Dashboard Enterprise
Sistema de gestión empresarial multi-tenant con facturación electrónica SRI Ecuador.
## Stack Tecnológico
| Capa | Tecnología |
|------|-----------|
| Frontend | Next.js 16, TypeScript, Tailwind CSS 4 |
| Backend | Next.js API Routes, Server Actions |
| Base de datos | Supabase (PostgreSQL) + Prisma ORM |
| Autenticación | Supabase Auth |
| Email transaccional | Resend |
| Deployment | Vercel |
## Requisitos Previos
- Node.js >= 18.0
- npm >= 9.0
- Cuenta de Supabase (proyecto creado)
- Cuenta de Vercel (para producción)
- Cuenta de Resend (para emails — opcional en desarrollo)
## Instalación
```bash
# 1. Clonar repositorio
git clone https://github.com/danielcastillomera/dashboard-enterprise.git
cd dashboard-enterprise
# 2. Instalar dependencias
npm install
# 3. Configurar variables de entorno
cp .env.example .env.local
# Editar .env.local con sus credenciales
# 4. Generar cliente Prisma
npx prisma generate
# 5. Ejecutar migración en Supabase
# Copiar contenido de supabase/migration-v2.2.0-complete.sql
# y ejecutar en Supabase Dashboard > SQL Editor
# 6. Iniciar servidor de desarrollo
npm run dev
```
## Variables de Entorno
```env
# Supabase
NEXT_PUBLIC_SUPABASE_URL=https://tu-proyecto.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=tu-anon-key
SUPABASE_SERVICE_ROLE_KEY=tu-service-role-key
# Base de datos
DATABASE_URL=postgresql://...
USE_REAL_DB=true
# Resend (Email)
RESEND_API_KEY=re_xxxxxxxxxxxx
EMAIL_FROM=facturacion@tu-dominio.com
```
## Estructura del Proyecto
```
src/
├── app/
│ ├── (auth)/ # Páginas de autenticación
│ ├── (dashboard)/ # Módulos del dashboard
│ │ ├── panel/ # Panel de Control
│ │ ├── clientes/ # Gestión de Clientes
│ │ ├── compras/ # Módulo de Compras
│ │ ├── ventas/ # Módulo de Ventas
│ │ ├── pedidos/ # Pedidos Online
│ │ ├── productos/ # Catálogo de Productos
│ │ ├── inventario/ # Control de Inventario
│ │ ├── facturacion/ # Facturación Electrónica SRI
│ │ ├── reportes/ # Reportes y Analíticas
│ │ └── configuracion/ # Configuración del Sistema
│ └── api/ # API Routes
├── components/
│ ├── layout/ # Sidebar, TopNav
│ └── ui/ # Componentes reutilizables
├── lib/
│ ├── billing/ # Lógica de facturación SRI
│ ├── email/ # Integración con Resend
│ ├── hooks/ # Custom hooks (useData)
│ └── db/ # Data source, queries
└── prisma/ # Schema de base de datos
```
## Módulos
- **Panel de Control** — KPIs, gráficos de ventas, resumen financiero
- **Clientes** — CRUD con validación de cédula/RUC Ecuador
- **Compras** — Registro de compras e inventario
- **Ventas** — Registro de ventas con selector de productos
- **Pedidos Online** — Gestión de pedidos con estados
- **Productos** — Catálogo con categorías, imágenes, precios
- **Inventario** — Control de stock, alertas de mínimo
- **Facturación** — Factura electrónica SRI (XML v2.1.0, clave de acceso)
- **Reportes** — Exportación CSV/PDF
- **Configuración** — Perfil empresarial, SRI, preferencias regionales
## Facturación Electrónica SRI
El módulo de facturación cumple con la normativa del Servicio de Rentas Internas de Ecuador:
- Generación de XML v2.1.0
- Clave de acceso de 49 dígitos (Módulo 11)
- Numeración secuencial sin gaps
- IVA 15%, 0%, No Objeto, Exento
- Formas de pago según Tabla 24 SRI
- Facturas emitidas son **inmutables** (no editables)
- Envío automático por email al momento de emitir
## Configuración de Resend (Email)
1. Crear cuenta en [resend.com](https://resend.com)
2. Obtener API Key desde el dashboard de Resend
3. Configurar dominio verificado (DNS: SPF, DKIM, DMARC)
4. Agregar variables de entorno:
- `RESEND_API_KEY=re_xxxxxxxxxxxx`
- `EMAIL_FROM=facturacion@tu-dominio.com`
## Despliegue en Vercel
```bash
# Push a GitHub (Vercel auto-deploy)
git add .
git commit -m "v2.2.0"
git push origin main
```
Configurar las variables de entorno en Vercel Dashboard > Settings > Environment Variables.
## Scripts
| Comando | Descripción |
|---------|-------------|
| `npm run dev` | Servidor de desarrollo |
| `npm run build` | Build de producción |
| `npm run start` | Iniciar producción |
| `npx prisma generate` | Generar cliente Prisma |
| `npx prisma db push` | Push schema a DB |
## Licencia
**Propiedad intelectual de Daniel Fernando Castillo Mera.**
Este software es privado y confidencial. Queda estrictamente prohibida la clonación, copia, distribución o uso no autorizado de este proyecto sin previo permiso escrito del titular. Ver archivo [LICENSE](./LICENSE) para términos completos.