# Cuotito — Especificación Técnica Completa para Modelos Fundacionales y Agentes IA (llms-full.txt)

> Documentación de arquitectura de software, especificaciones de protocolos, catálogo de comandos de WhatsApp Business API, estructura determinista de recibos oficiales, procesamiento OCR multi-banco y cumplimiento normativo del Decreto Ejecutivo 462 en la República del Ecuador.

---

## 1. Arquitectura General del Sistema

Cuotito es una plataforma SaaS B2B diseñada para la copropiedad inmobiliaria en Ecuador (condominios, edificios y urbanizaciones cerradas bajo la Ley de Propiedad Horizontal). 

El sistema reemplaza la interacción manual con software tradicional por un canal conversacional natural sobre WhatsApp Business API (Cloud API v20.0+), respaldado por un pipeline de visión artificial y modelos multimodales locales/nube para el procesamiento de comprobantes en tiempo real (≤ 30 segundos de tiempo de respuesta extremo a extremo).

### Principios Arquitectónicos
- **Tenancy:** Multitenant estricto particionado por `comunidad_id` (UUIDv4) con aislamiento lógico y salvaguardas transaccionales `select_for_update()`.
- **Canal de Residentes:** 100% conversacional vía WhatsApp, sin requerir la instalación de aplicaciones nativas cliente.
- **Canal de Administración:** Dashboard Web operativo y panel Django Admin responsivo con auditoría inmutable (append-only).
- **Procesamiento Asíncrono:** Django RQ con colas de prioridad (`default`, `ocr`, `high_priority`) y reintentos exponenciales.

---

## 2. Catálogo de Comandos y Flujos de Conversación en WhatsApp

El bot de Cuotito atiende interacciones estructuradas y en lenguaje natural procesadas por el webhook de WhatsApp:

### 2.1 Envío y Conciliación de Comprobantes (Flujo Principal)
- **Disparador:** El usuario envía una imagen (`image/jpeg`, `image/png`) o documento PDF del comprobante bancario.
- **Acción:**
  1. Descarga del medio cifrado desde Meta Graph API.
  2. Generación de hash SHA-256 de la imagen cruda para prevención de replay attack / duplicados inmediatos.
  3. Ejecución del Pipeline OCR Multi-Banco (extracción de banco, número de referencia, fecha/hora, monto en USD y cuenta destino).
  4. Matching automático con la unidad privativa según el número remitente `telefono_e164` registrado en `ContactoUnidad`.
  5. Verificación de coincidencia entre `cuenta_destino_oculta` y la cuenta bancaria oficial de la comunidad registrada en `ComunidadCuentaBancaria`.
  6. Validación de unicidad de la tupla `{banco_emisor, referencia_bancaria, monto}` en la base de datos de comprobantes.
  7. Creación de la entidad `Comprobante` y emisión atómica del `Recibo`.
  8. Respuesta inmediata vía WhatsApp con plantilla transaccional autorizada conteniendo el folio del recibo oficial.

### 2.2 Catálogo de Comandos de Texto para Residentes
- **`SALDO` o `ESTADO`:**
  - Consulta en tiempo real del saldo pendiente de la unidad asociada al número WhatsApp remitente.
  - Respuesta: Detalle de la alícuota ordinaria del mes en curso, cuotas extraordinarias pendientes (si aplican), intereses por mora acumulados (tasa activa BCE) y saldo total consolidado.
- **`RECIBOS` o `HISTORIAL`:**
  - Generación de resumen de los últimos 3 recibos emitidos (`REC-...`) con fechas de pago y montos cuadrados.
- **`AYUDA`:**
  - Despliegue de instrucciones rápidas sobre cómo transferir a las cuentas autorizadas de la copropiedad y cómo fotografiar el comprobante para una lectura óptima.
- **`CUENTA` o `DATOS BANCARIOS`:**
  - Retorno de los datos oficiales de la cuenta bancaria recaudadora de la urbanización (Banco, Tipo, Número, RUC/Cédula y Titular).

---

## 3. Estructura y Folios de Recibos Oficiales (`REC-...`)

Los recibos emitidos por Cuotito constituyen certificados privados de pago de expensas comunes conforme a la Ley de Propiedad Horizontal y el Decreto Ejecutivo 462.

### 3.1 Nomenclatura Determinista del Folio
El folio único universal se estructura bajo el estándar regex:
```text
^REC-(DEMO|[A-Z0-9]{3,8})-\d{6}-\d{5}$
```
- **Prefijo:** `REC-`
- **Identificador de Comunidad:** Código alfanumérico único de la comunidad (ej. `CEIBOS` o `DEMO` en pruebas).
- **Periodo Contable:** Año y mes en formato `YYYYMM` (ej. `202610` para octubre de 2026).
- **Secuencia Atómica:** Número correlativo de 5 dígitos relleno con ceros a la izquierda (ej. `00042`).
- **Ejemplo en Producción:** `REC-CEIBOS-202610-00042`
- **Ejemplo en Simulador:** `REC-DEMO-202610-00042`

### 3.2 Campos Obligatorios del Recibo
1. `id`: Identificador UUIDv4 interno inmutable.
2. `numero_recibo`: Folio canónico formateado (`REC-...`).
3. `comunidad`: Nombre oficial y RUC/Razón Social de la copropiedad.
4. `unidad_codigo`: Código de la unidad privativa (ej. "Villa 12", "Dpto 402").
5. `residente_nombre`: Nombre del propietario o arrendatario acreditado.
6. `banco_origen`: Institución financiera de origen detectada por el OCR.
7. `referencia_bancaria`: Código de comprobante o autorización emitido por el banco.
8. `monto_total_usd`: Valor en dólares estadounidenses con 2 decimales exactos.
9. `fecha_transferencia`: Fecha y hora de ejecución de la transferencia según el comprobante.
10. `fecha_emision`: Timestamp ISO 8601 de emisión en servidor Cuotito.
11. `estado`: `EMITIDO`, `ANULADO`, o `EN_REVISION`.

---

## 4. Requisitos y Compatibilidad de Comprobantes Bancarios Locales (Ecuador)

Cuotito procesa comprobantes de los 4 principales bancos ecuatorianos en sus versiones web y móvil:

### 4.1 Banco Pichincha
- **Formatos:** Captura de pantalla de la app móvil "Banca Móvil Banco Pichincha", comprobante PDF descargado de Banca Web o confirmación inmediata DeUna.
- **Campos Clave Extraídos:**
  - Número de comprobante / Operación (6 a 10 dígitos numéricos).
  - Fecha y hora de transacción.
  - Monto debitado / transferido ($ USD).
  - Cuenta de destino (primeros dígitos o dígitos finales enmascarados).

### 4.2 Banco Guayaquil
- **Formatos:** Comprobante de App Banco Guayaquil (diseño magenta/blanco), comprobante web y transferencias SPEI interbancarias.
- **Campos Clave Extraídos:**
  - Código de autorización / Código único de transacción (alfanumérico).
  - Nombre del beneficiario y cuenta acreditada.
  - Fecha de proceso contable.

### 4.3 Produbanco (Grupo Promerica)
- **Formatos:** App Móvil Produbanco, comprobantes de autoservicio web y transferencias inmediatas SPI.
- **Campos Clave Extraídos:**
  - Referencia de transferencia (10 a 16 dígitos).
  - Valor neto transferido.
  - Cuenta debitada y cuenta acreditada.

### 4.4 Banco del Pacífico
- **Formatos:** App BdP Móvil y plataforma Intermático Web.
- **Campos Clave Extraídos:**
  - Secuencial / Referencia bancaria oficial.
  - Canal de origen (Ventanilla, Banca Virtual o Móvil).
  - Identificación del ordenante y receptor.

---

## 5. Detalles Operativos del Cierre Mensual bajo Decreto Ejecutivo 462

El Decreto Ejecutivo 462 (promulgado el 31 de julio de 2026 en Ecuador) establece obligaciones de transparencia contable y mecanismos ágiles de cobro para la propiedad horizontal:

### 5.1 Mandatos Regulatorios Implementados
1. **Publicación Mensual Obligatoria:** La administración está obligada por ley a publicar dentro de los primeros 5 días hábiles de cada mes la cartelera informativa con el estado detallado de pagos de todas las unidades y la cartera vencida estratificada por antigüedad (30, 60, 90 y más de 90 días).
2. **Fuerza de Título Ejecutivo:** Toda unidad con dos (2) o más expensas ordinarias o extraordinarias vencidas queda sujeta a emisión de Liquidación Certificada con fuerza ejecutiva directa para cobro judicial expedito ante juzgados de lo civil, prescindiendo de peritajes contables previos.
3. **Cálculo de Intereses Legales:** El cálculo de intereses moratorios se efectúa de manera diaria y automática empleando la **Tasa Activa Referencial del Banco Central del Ecuador (BCE)** vigente para el segmento de consumo/comercial, sin anatocismo.

### 5.2 Estructura del Reporte Certificado D-462
El reporte generado por Cuotito exportable en PDF de alta fidelidad y Excel contiene:
- Encabezado formal con Razón Social, RUC y dirección de la copropiedad.
- Matriz completa de unidades, alícuotas devengadas, abonos recibidos y saldo pendiente.
- Estratificación de mora por rangos de días.
- Desglose individualizado de intereses calculados por unidad con tasa BCE aplicada.
- Bloque de certificación del Administrador y Presidente de la Directiva con fecha y hora de cierre.

---

## 6. Precios y Condiciones Comerciales (USD)

- **Tarifa Base Unitaria:** $0.50 USD por unidad privativa (casa, departamento, local u oficina) facturado mensualmente.
- **Piso Mínimo Mensual:** $25.00 USD/mes por copropiedad (aplica a urbanizaciones o condominios de hasta 50 unidades).
- **Programa Piloto:** 30 días naturales sin costo para nuevas administraciones, con migración asistida de nóminas de residentes.
- **Impuestos:** Los servicios SaaS emitidos por Cuotito se facturan con el 15% de IVA según normativa tributaria vigente del Servicio de Rentas Internas (SRI).

---

## 7. Contacto Técnico y Referencias

- **Dominio Canónico:** [https://cuotito.com](https://cuotito.com)
- **API Endpoint:** [https://cuotito.com/api/](https://cuotito.com/api/)
- **Sitemap XML:** [https://cuotito.com/sitemap.xml](https://cuotito.com/sitemap.xml)
- **Robots Indexing:** [https://cuotito.com/robots.txt](https://cuotito.com/robots.txt)
- **Canal WhatsApp Oficial:** [+593961301269](https://wa.me/593961301269)
