# Contexto del Proyecto: ERP Básico SaaS

## Identificación

| Campo | Valor |
|-------|-------|
| **Nombre** | ERP Básico SaaS |
| **Tipo** | Producto SaaS |
| **Nivel** | 2B.2 (Producto dentro de Suite) |
| **Suite Padre** | erp-suite |
| **Ruta Base** | `projects/erp-suite/apps/products/erp-basico/` |
| **Estado** | En Planificación |

## Descripción

ERP completo pero austero para PyMEs. Hereda directamente de erp-core con configuración simplificada y precios accesibles.

## Target de Mercado

- PyMEs con 5-50 empleados
- Comercios con operaciones compra-venta
- Pequeñas manufacturas
- Distribuidores
- Empresas en proceso de digitalización

## Propuesta de Valor

1. **ERP completo** - No solo POS, gestión integral
2. **Precio accesible** - 300-500 MXN/mes vs 2,000+ de SAP/Odoo
3. **Sin complejidad** - Configuración mínima
4. **Modular** - Paga solo lo que usas
5. **Mexicanizado** - CFDI, bancos mexicanos

## Stack Tecnológico

```yaml
backend:
  runtime: Node.js 20+
  framework: NestJS (heredado de core)
  language: TypeScript 5.3+
  orm: TypeORM
  validation: class-validator

frontend:
  framework: React 18
  bundler: Vite
  styling: Tailwind CSS
  state: Zustand
  forms: React Hook Form

database:
  engine: PostgreSQL 15+
  multi_tenant: true (RLS)
  schemas: 8
  tables: ~40

cache:
  engine: Redis
  usage: Sessions, rate-limiting
```

## Variables del Proyecto

```yaml
# Identificadores
PROJECT_NAME: erp-basico
PROJECT_CODE: ERPB
SUITE: erp-suite

# Database
DB_NAME: erp_suite_db  # Compartida
SCHEMAS:
  - auth
  - core
  - catalog
  - inventory
  - sales
  - purchases
  - partners
  - reports

# Paths
BACKEND_ROOT: apps/products/erp-basico/backend
FRONTEND_ROOT: apps/products/erp-basico/frontend
DATABASE_ROOT: apps/products/erp-basico/database

# Business
BASE_PRICE_MXN: 300
MAX_USERS_BASE: 5
MAX_PRODUCTS: 10000
```

## Herencia del Core

### Módulos Heredados (100%)

| Módulo Core | Uso en ERP Básico |
|-------------|-------------------|
| MGN-001 Auth | Completo |
| MGN-002 Users | Completo |
| MGN-003 Roles | Simplificado (3 roles) |
| MGN-004 Tenants | Completo |
| MGN-005 Catalogs | 80% (sin variantes) |
| MGN-008 Notifications | Simplificado |

### Módulos Adaptados

| Módulo Core | Adaptación |
|-------------|------------|
| MGN-007 Audit | Solo logs críticos |
| MGN-009 Reports | Subset de reportes |
| Inventory | Sin lotes/series |
| Sales | Sin workflows aprobación |
| Purchases | Sin aprobaciones multi-nivel |

### Módulos NO Incluidos

| Módulo Core | Razón |
|-------------|-------|
| MGN-010 Financial | Opcional (+150 MXN) |
| Projects | Complejidad innecesaria |
| Manufacturing | Fuera de scope |
| Advanced HR | Opcional (+100 MXN) |

## Módulos del Producto

### Obligatorios (Plan Base)

| Módulo | Tablas | Endpoints | Componentes |
|--------|--------|-----------|-------------|
| auth | 5 | 8 | 4 |
| users | 2 | 6 | 3 |
| companies | 3 | 5 | 2 |
| catalogs | 5 | 12 | 6 |
| inventory | 4 | 10 | 5 |
| sales | 4 | 12 | 6 |
| purchases | 3 | 8 | 4 |
| partners | 3 | 8 | 4 |
| reports | 2 | 6 | 3 |

### Opcionales (Feature Flags)

| Módulo | Precio | Tablas Extra |
|--------|--------|--------------|
| accounting | +150 MXN | 8 |
| hr | +100 MXN | 6 |
| cfdi | +100 MXN | 3 |

## Feature Flags

```typescript
interface TenantFeatures {
  // Plan base
  base_erp: true;
  max_users: 5;
  max_products: 10000;

  // Opcionales
  accounting: boolean;      // +150 MXN
  hr: boolean;              // +100 MXN
  cfdi: boolean;            // +100 MXN
  extra_users: number;      // +50 MXN c/u
  multi_warehouse: boolean; // +100 MXN
  whatsapp_bot: boolean;    // Por consumo
  advanced_reports: boolean;// +50 MXN
}
```

## Diferenciación

### vs POS Micro

| Aspecto | POS Micro | ERP Básico |
|---------|-----------|------------|
| Complejidad | Mínima | Media |
| Módulos | 4 | 10+ |
| Usuarios | 1 | 5+ |
| Compras | No | Sí |
| Multi-almacén | No | Opcional |
| Contabilidad | No | Opcional |
| Precio | 100 MXN | 300+ MXN |

### vs ERP Enterprise (Verticales)

| Aspecto | ERP Básico | Verticales |
|---------|------------|------------|
| Industria | General | Especializado |
| Complejidad | Media | Alta |
| Customización | Baja | Alta |
| Workflows | Simples | Complejos |
| Precio | 300-500 MXN | 1,000+ MXN |

## Métricas de Éxito

| Métrica | Target |
|---------|--------|
| Tiempo de onboarding | < 30 minutos |
| Usuarios activos diarios | > 60% |
| NPS | > 40 |
| Churn mensual | < 3% |
| Tickets soporte/usuario | < 0.5/mes |

## Roadmap

### MVP (v1.0)
- [ ] Herencia completa de auth/users/tenants
- [ ] Catálogos (productos, categorías, unidades)
- [ ] Inventario básico (stock, movimientos)
- [ ] Ventas (cotización → pedido → factura)
- [ ] Compras básicas
- [ ] Dashboard inicial
- [ ] Billing/suscripciones

### v1.1
- [ ] Módulo contabilidad (opcional)
- [ ] CFDI México (opcional)
- [ ] Reportes financieros

### v1.2
- [ ] RRHH básico (opcional)
- [ ] Multi-almacén (opcional)
- [ ] Integraciones bancarias México

### v2.0
- [ ] App móvil
- [ ] Integraciones marketplace
- [ ] IA para predicciones

## Documentos Relacionados

- `../README.md` - Descripción general
- `../../erp-core/` - Core heredado
- `../../erp-core/docs/` - Documentación detallada de módulos
- `../../../orchestration/` - Orquestación suite level

---

*Última actualización: 2025-12-08*
