docs: cierre de documentacion de producto (guia de configuracion por cliente ampliada con todos los modulos, indice, guia comercial y de demo, y documento de limitaciones y pendientes priorizados); correcciones de datos desactualizados (71 permisos, packs de provisioning)

This commit is contained in:
2026-10-11 21:31:39 +00:00
parent e749a31d10
commit 16ad780d72
6 changed files with 753 additions and 68 deletions

View File

@@ -0,0 +1,178 @@
# Venta y demo
Guía comercial corta para presentar y vender el producto. Los detalles técnicos
y de configuración están en el resto de `docs/producto/`.
## Qué es
Un **software de gestión para clínicas y negocios de bienestar**: agenda,
expediente del paciente, punto de venta, inventario, cobros y reportes, con
WhatsApp integrado. Es un producto **multi-giro configurable** y **white-label**:
la marca, el idioma del negocio (terminología) y los módulos activos se ajustan
por cliente sin tocar código, y cada cliente corre en su **propia instancia**
con sus propios datos y dominio.
## A qué giros aplica
El giro se elige con un *pack* de terminología; cambiar de giro es configuración,
no desarrollo.
| Giro | Terminología (ejemplo) | Notas |
|---|---|---|
| Clínica médica | Paciente, Cita, Médico, Expediente | Pack por defecto. |
| Spa / wellness | Cliente, Reserva, Terapeuta, Sesión, Sala | Agendas por recurso (salas). |
| Estética | Cliente, Cita, Especialista, Ficha, Cabina | Combinable con membresías. |
| Dental | Paciente, Cita, Odontólogo, Consulta, Consultorio | Cualquier término se puede editar a mano. |
## Diferenciadores
- **Multi-giro configurable**: un solo producto para clínica, spa, estética o
dental; terminología, categorías y sucursales se ajustan por cliente.
- **Agenda con recursos**: cabinas, salas, consultorios y equipos con validación
de solape, bloqueos por recurso y vista/filtro por recurso.
- **Expediente con firma y fotos**: consentimientos y formularios digitales
firmados por el paciente desde su celular, con galería antes/después.
- **Membresías**: planes recurrentes con sesiones incluidas, cobro, congelamiento
y avisos de renovación (distinto de los paquetes de sesiones prepagados).
- **Comisiones por reglas**: porcentaje, monto fijo o escalonado por metas; base
vendido/cobrado; metas con bonos; liquidaciones con recibo.
- **Compras y proveedores**: órdenes de compra, recepción total/parcial, costo
promedio, lotes/caducidades, cuentas por pagar y margen por artículo.
- **WhatsApp integrado**: bandeja, leads y asistente con IA (ver limitaciones:
el asistente está en reparación).
- **Reservas en línea**: portal público de auto-agendado para el paciente, con
enlace propio para consultar o cancelar.
- **PWA**: se instala en tablet o celular como una app, con arranque offline.
- **Multi-instancia**: cada cliente con su dominio, secretos y base de datos
aislados, sobre el mismo código.
- **Licenciamiento por plan**: qué módulos y cuántos usuarios/sucursales/citas
incluye cada cliente, con modo aviso o bloqueo.
## Cómo hacer una demo
El escenario ideal es una **instancia demo desechable** con datos de ejemplo,
porque los datos se marcan y se pueden borrar sin afectar a nadie.
### 1. Preparar la instancia demo
```bash
cd /root/skeen-proyecto/infra/provision
# Simular primero (no escribe nada)
./provision_clinica.py \
--slug demo-cliente --nombre "Demo Cliente" \
--dominio demo.consultoria-as.com --puerto 8071 --db demo_cliente_odoo \
--pack clinica --demo --dry-run
# Ejecutar de verdad
./provision_clinica.py \
--slug demo-cliente --nombre "Demo Cliente" \
--dominio demo.consultoria-as.com --puerto 8071 --db demo_cliente_odoo \
--pack clinica --demo
```
- `--pack` elige el giro del demo: `clinica`, `spa`, `estetica`, `dental` o
`custom` (default `clinica`).
- Las credenciales quedan en
`/root/backups/demo-cliente-credenciales-<fecha>.txt` (chmod 600): dominio,
acceso LAN y la contraseña del admin del frontend (forzará cambio al primer
login).
- Para publicar el dominio hay que agregar el *ingress* en el dashboard de
Cloudflare (Zero Trust → Networks → Tunnels), igual que cualquier instancia
nueva; mientras tanto se usa el acceso LAN.
### 2. Qué datos trae el demo (`--demo`)
Coherentes con el pack elegido y marcados para poder limpiarlos:
- ~10 servicios con precio y duración (`DEMO-` en el código).
- 15 pacientes de ejemplo.
- 3 empleados (`doctor`, `doctor`, `cosmetologa`) con comisión configurada.
- 20 citas repartidas en la semana actual (estados pendiente/confirmada).
- 3 paquetes, con una compra de paquete a un paciente.
- Saldo de monedero para 5 pacientes.
Los ids se guardan en el parámetro `skeen.demo.ids`. Para borrar el demo y
entregar la instancia limpia:
```bash
/root/odoo-venv/bin/python /root/skeen-proyecto/infra/provision/demo_limpiar.py \
--conf /root/demo-cliente-odoo.conf --db demo_cliente_odoo
```
(o volver a provisionar con `--demo-limpia`).
> La instancia de pruebas `clinica.consultoria-as.com` es la segunda instancia
> **white-label** y no trae datos `DEMO-`: si la usas para demo, ten en cuenta que
> sus datos son reales de esa clínica. Revisa que sea alcanzable desde fuera (el
> hostname debe estar en el túnel de Cloudflare).
### 3. Guion sugerido (15–20 min)
1. **Login y marca**: muestra el nombre, el logo y los colores del cliente
(todo configurable).
2. **Dashboard**: vistazo general del día.
3. **Agenda**: arrastra una cita, muéstrala por médico y por recurso (cabina/sala),
abre un bloqueo de agenda.
4. **Paciente y expediente**: alta rápida, historial, formulario de consentimiento
con firma y foto antes/después.
5. **Punto de venta**: cobra un servicio, aplica descuento, muestra el ticket y el
desglose de impuestos.
6. **Membresías**: cobra un periodo y consume una sesión desde el POS.
7. **Recursos / Compras / Comisiones**: según el interés del cliente (ocupación
por cabina, orden de compra con recepción, liquidación de comisiones con
recibo).
8. **Reservas en línea**: abre `/reservar` en el celular y agenda como paciente.
9. **Notificaciones**: muestra el modo prueba y el historial.
10. **PWA**: instala el panel en el celular (o muestra el aviso de instalación).
11. **Configuración → Licencia**: explica el plan y los límites.
## Modelo de licenciamiento y precios sugeridos
Cada instancia lleva una **licencia firmada** con un plan y sus límites. Planes:
| Plan | Incluye | Para quién |
|---|---|---|
| Básico | Agenda, pacientes, POS, inventario, reportes | Consultorio pequeño. |
| Profesional | Básico + WhatsApp, notificaciones, reservas en línea, recursos | Clínica/spa en operación. |
| Enterprise | Todos los módulos (membresías, compras, comisiones, formularios…) | Negocio multi-sucursal. |
| Custom | Lo que se acuerde | Casos especiales. |
Además se pueden fijar topes de usuarios, sucursales, citas por mes y
almacenamiento. El detalle técnico está en [`licencias.md`](licencias.md).
> **Precios sugeridos (ejemplo, no oficiales).** Son puntos de partida para
> cotizar en MXN mensuales; ajústalos a tu mercado y a los límites de cada
> cliente. La puesta en marcha (provisioning, marca, migración de catálogo y
> capacitación) suele cobrarse aparte.
>
> | Plan | Sugerido / mes |
> |---|---|
> | Básico | $1,500 – $2,000 |
> | Profesional | $2,500 – $3,500 |
> | Enterprise | $4,000 – $6,000 |
> | Custom | A medida |
>
> Extras a cotizar aparte: WhatsApp con número propio, migración de histórico,
> capacitación y soporte ampliado.
## Qué no incluye todavía
Sé honesto en las demos; el detalle y el plan de corrección está en
[`limitaciones-y-pendientes.md`](limitaciones-y-pendientes.md). En resumen:
- **El asistente de IA de WhatsApp (Sofía/Hermes) está en reparación**: su
herramienta para consultar y agendar estaba rota. La bandeja y los leads de
WhatsApp sí funcionan; no prometas el bot autónomo hasta que se cierre el
arreglo.
- **La firma de licencias es simétrica (HMAC)**: en un despliegue real la clave
del vendedor no debería vivir en las instancias de cliente; se recomienda
migrar a firma asimétrica.
- **La i18n cubre las pantallas principales**; quedan sin traducir varias
pantallas secundarias y los textos de impresión. El idioma es por navegador.
- **Los precios reales del inventario histórico siguen en $0** (~170 artículos):
hay que capturarlos con el cliente antes de usar reportes de margen.
- **Hay huecos en el histórico migrado**: folios de venta y citas sin médico que
no se pudieron importar o resolver.
- **Sin facturación fiscal / CFDI**: los impuestos son configurables, pero no hay
motor de facturación electrónica.