| .. | ||
| billing/database/ddl | ||
| orchestration | ||
| README.md | ||
SaaS Layer - ERP Suite
Descripción
Capa de servicios SaaS que gestiona multi-tenancy, billing, suscripciones y portal de clientes para todos los productos del ERP Suite.
Componentes
saas/
├── billing/ # Facturación y cobros
├── portal/ # Portal de clientes
├── admin/ # Administración multi-tenant
├── onboarding/ # Registro y configuración inicial
├── docs/ # Documentación
└── orchestration/ # Sistema NEXUS
Billing
Gestión de suscripciones y cobros.
Funcionalidades
- Planes de suscripción (POS Micro, ERP Básico, Verticales)
- Cobro recurrente (mensual/anual)
- Integración con Stripe/Conekta
- Facturación automática (CFDI México)
- Gestión de módulos opcionales
Planes
| Plan | Precio Base | Productos |
|---|---|---|
| POS Micro | 100 MXN/mes | pos-micro |
| ERP Básico | 300 MXN/mes | erp-basico |
| ERP Pro | 500 MXN/mes | erp-basico + módulos |
| Vertical | 1,000+ MXN/mes | erp-core + vertical |
Módulos Opcionales
| Módulo | Precio | Disponible en |
|---|---|---|
| Contabilidad | +150 MXN/mes | ERP Básico, Verticales |
| RRHH | +100 MXN/mes | ERP Básico, Verticales |
| CFDI | +100 MXN/mes | Todos |
| WhatsApp Bot | Por consumo | Todos |
| Usuario extra | +50 MXN/mes | Todos |
Portal
Portal self-service para clientes.
Funcionalidades
- Dashboard de cuenta
- Gestión de suscripción
- Historial de facturas
- Cambio de plan
- Soporte/tickets
- Configuración de módulos
Admin
Panel de administración para operadores.
Funcionalidades
- Gestión de tenants
- Métricas de uso
- Facturación manual
- Soporte nivel 1
- Configuración global
- Feature flags por tenant
Onboarding
Flujo de registro y configuración inicial.
Flujo
- Registro - Email o WhatsApp
- Selección de plan - POS Micro, ERP Básico, etc.
- Datos de empresa - RFC, dirección, giro
- Configuración inicial - Productos, usuarios
- Pago - Tarjeta o transferencia
- Activación - Acceso inmediato
Stack Tecnológico
backend:
runtime: Node.js 20+
framework: NestJS
language: TypeScript
payments: Stripe + Conekta
invoicing: PAC CFDI
frontend:
framework: React 18
bundler: Vite
styling: Tailwind CSS
database:
engine: PostgreSQL 15+
schema: saas
tables: ~15
Base de Datos
Schema: saas
-- Gestión de tenants y suscripciones
saas.tenants -- Empresas/clientes
saas.subscriptions -- Suscripciones activas
saas.plans -- Catálogo de planes
saas.plan_features -- Features por plan
saas.invoices -- Facturas emitidas
saas.payments -- Pagos recibidos
saas.payment_methods -- Métodos de pago guardados
saas.usage_tracking -- Tracking de consumo
saas.support_tickets -- Tickets de soporte
saas.onboarding_sessions -- Sesiones de registro
Integración con Productos
┌─────────────────────────────────────────────────────────────┐
│ SAAS LAYER │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ billing │ │ portal │ │ admin │ │onboarding│ │
│ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ │
│ │ │ │ │ │
│ └───────────┴───────────┴───────────┘ │
│ │ │
│ API Gateway │
│ │ │
└─────────────────────────┼───────────────────────────────────┘
│
┌───────────────┼───────────────┐
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ POS Micro│ │ERP Básico│ │Verticales│
└──────────┘ └──────────┘ └──────────┘
Variables de Entorno
# Payments
STRIPE_SECRET_KEY=sk_xxx
STRIPE_WEBHOOK_SECRET=whsec_xxx
CONEKTA_API_KEY=key_xxx
# CFDI
PAC_RFC=XXX
PAC_API_KEY=xxx
PAC_ENVIRONMENT=sandbox|production
# Database
DATABASE_URL=postgresql://...
SAAS_SCHEMA=saas
# General
ONBOARDING_URL=https://registro.erp-suite.com
PORTAL_URL=https://portal.erp-suite.com
Roadmap
MVP (v1.0)
- Modelo de datos billing
- Integración Stripe básica
- Portal mínimo (ver facturas)
- Onboarding POS Micro
- Admin básico
v1.1
- Integración Conekta
- CFDI automático
- Onboarding ERP Básico
- Métricas de uso
v1.2
- Portal completo
- Cambio de plan self-service
- Soporte integrado
- Referidos
SaaS Layer v1.0 ERP Suite