123 lines
2.6 KiB
Markdown
123 lines
2.6 KiB
Markdown
# Contexto del Proyecto: SaaS Layer
|
|
|
|
## Identificación
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| **Nombre** | SaaS Layer |
|
|
| **Tipo** | Infraestructura |
|
|
| **Nivel** | 2B.1 (Core de Suite) |
|
|
| **Suite** | erp-suite |
|
|
| **Ruta Base** | `projects/erp-suite/apps/saas/` |
|
|
| **Estado** | En Planificación |
|
|
|
|
## Descripción
|
|
|
|
Capa de servicios compartidos para gestión de multi-tenancy, billing, suscripciones y portal de clientes.
|
|
|
|
## Responsabilidades
|
|
|
|
1. **Billing** - Cobros, suscripciones, facturación
|
|
2. **Portal** - Self-service para clientes
|
|
3. **Admin** - Gestión de tenants
|
|
4. **Onboarding** - Registro de nuevos clientes
|
|
|
|
## Stack Tecnológico
|
|
|
|
```yaml
|
|
backend:
|
|
runtime: Node.js 20+
|
|
framework: NestJS
|
|
language: TypeScript 5.3+
|
|
|
|
frontend:
|
|
framework: React 18
|
|
bundler: Vite
|
|
styling: Tailwind CSS
|
|
|
|
database:
|
|
engine: PostgreSQL 15+
|
|
schema: saas
|
|
|
|
integrations:
|
|
payments: Stripe, Conekta
|
|
invoicing: PAC CFDI (México)
|
|
notifications: Email, WhatsApp
|
|
```
|
|
|
|
## Variables del Proyecto
|
|
|
|
```yaml
|
|
PROJECT_NAME: saas-layer
|
|
PROJECT_CODE: SAAS
|
|
SUITE: erp-suite
|
|
|
|
# Paths
|
|
BILLING_ROOT: apps/saas/billing
|
|
PORTAL_ROOT: apps/saas/portal
|
|
ADMIN_ROOT: apps/saas/admin
|
|
ONBOARDING_ROOT: apps/saas/onboarding
|
|
|
|
# Database
|
|
DB_SCHEMA: saas
|
|
MAX_TABLES: 15
|
|
```
|
|
|
|
## Módulos
|
|
|
|
| Módulo | Descripción | Prioridad |
|
|
|--------|-------------|-----------|
|
|
| billing | Suscripciones y cobros | P0 |
|
|
| portal | Portal de clientes | P1 |
|
|
| admin | Panel de administración | P1 |
|
|
| onboarding | Registro de clientes | P0 |
|
|
|
|
## Planes de Suscripción
|
|
|
|
| ID | Plan | Precio | Target |
|
|
|----|------|--------|--------|
|
|
| pos-micro | POS Micro | 100 MXN/mes | Mercado informal |
|
|
| erp-basic | ERP Básico | 300 MXN/mes | PyMEs |
|
|
| erp-pro | ERP Pro | 500 MXN/mes | PyMEs+ |
|
|
| vertical-x | Vertical | 1,000+ MXN/mes | Industrias específicas |
|
|
|
|
## Dependencias
|
|
|
|
### Productos que dependen de SaaS Layer
|
|
|
|
- `products/pos-micro` - Billing, onboarding
|
|
- `products/erp-basico` - Billing, portal, onboarding
|
|
- `verticales/*` - Billing, portal, admin
|
|
|
|
### Servicios externos
|
|
|
|
- Stripe - Pagos internacionales
|
|
- Conekta - Pagos México
|
|
- PAC CFDI - Facturación electrónica
|
|
- SendGrid - Email transaccional
|
|
- WhatsApp Business API - Notificaciones
|
|
|
|
## Roadmap
|
|
|
|
### Sprint 1: Billing MVP
|
|
- [ ] Modelo de datos
|
|
- [ ] Integración Stripe básica
|
|
- [ ] Webhook de pagos
|
|
- [ ] API de suscripciones
|
|
|
|
### Sprint 2: Onboarding
|
|
- [ ] Flujo de registro
|
|
- [ ] Selección de plan
|
|
- [ ] Configuración inicial
|
|
- [ ] Activación automática
|
|
|
|
### Sprint 3: Portal
|
|
- [ ] Dashboard cliente
|
|
- [ ] Ver facturas
|
|
- [ ] Cambiar plan
|
|
- [ ] Soporte básico
|
|
|
|
---
|
|
|
|
*Última actualización: 2025-12-08*
|