Permitir al usuario subir vouchers de facturas al sistema para su procesamiento automático
Descripción
Interfaz donde el usuario puede subir archivos de facturas en formato digital. El sistema debe validar el formato del archivo, el tamaño, y crear el registro inicial en la base de datos. Soporta carga individual y multiples
Confirmación de carga exitosa con lista de archivos subidos, mensaje de error si formato o tamaño no válido
Prioridad
Alta
RF02 - Procesar Vouchers OCR
Código del Requerimiento
RF02
Nombre
Procesar Vouchers OCR
Propósito
Extraer automáticamente información de los vouchers mediante OCR e inteligencia artificial
Descripción
Proceso automático que se ejecuta después de cargar facturas. Aplica OCR (Tesseract) para digitalizar el texto, luego usar API para extraer campos específicos: RNC, nombre proveedor, NCF, fechas, montos, ITBIS, forma de pago. Calcula un confidence score por campo extraído y almacena los datos en la tabla datos_extraidos.
Entrada
Archivo voucher (PDF/imagen), factura_prex_id
Salida
Datos extraídos almacenados en BD, estado del voucher actualizado (procesado/error), confidence score por campo
Prioridad
Alta
RF03 - Validar Vouchers Cargados
Código del Requerimiento
RF03
Nombre
Validar Vouchers Cargados
Propósito
Permitir al usuario revisar y aprobar datos extraídos automáticamente
Descripción
Funcionalidad opcional dentro de la visualización de resumen. El usuario puede marcar vouchers como validados por medio de una vista en la cual a la izquierda se muestre la imagen y a la derecha los datos extraidos, poder dar validar o editar si es necesario, una vez hecho esto la factura queda validada
Entrada
Lista de voucher_ids a validar, usuario_id
Salida
Vouchers marcados como validados, registro de auditoría (validated_at, usuario)
Prioridad
Alta
RF04 - Editar Vouchers
Código del Requerimiento
RF04
Nombre
Editar Vouchers
Propósito
Corregir manualmente datos extraídos incorrectamente por el OCR/IA
Descripción
Interfaz de edición donde el usuario puede modificar cualquier campo extraído. Muestra el voucher original en una columna y el formulario editable en otra. Incluye validaciones en tiempo real (formato RNC, NCF, cálculos de totales). Guarda un registro de los cambios realizados para auditoría.
Entrada
voucher_id, campos modificados, usuario_id
Salida
Datos actualizados en BD, registro de cambios en historial de auditoría
Prioridad
Alta
RF05 - Visualizar Resumen Vouchers
Código del Requerimiento
RF05
Nombre
Visualizar Resumen Vouchers
Propósito
Mostrar un resumen consolidado de todas las facturas procesadas
Descripción
Dashboard que presenta estadísticas generales: total de vouchers cargados, procesados, validados, pendientes. Muestra métricas por empresa cliente, por mes, totales de montos facturados, ITBIS. Incluye gráficos de evolución temporal y distribución por proveedor, ademas de una tabla utilizando Handsontable o tablas normales.
Entrada
Filtros opcionales: empresa_cliente_id, mes, estado
Salida
Dashboard con cards de métricas, tablas resumen, gráficos
Prioridad
Media
RF06 - Ver Vouchers Cargados
Código del Requerimiento
RF06
Nombre
Ver Vouchers Cargados
Propósito
Listar todos los vouchers procesados con opción de filtrado y búsqueda
Descripción
Tabla con listado de vouchers mostrando: thumbnail, fecha, proveedor, NCF, monto, estado (pendiente/procesado/validado/rechazado), acciones. Incluye filtros por fecha, estado, empresa cliente, proveedor. Paginación para grandes volúmenes. Desde aquí se puede acceder a editar voucher.
Mostrar un registro histórico de las sesiones de carga de facturas
Descripción
Lista cronológica de todos los eventos de carga: fecha/hora, usuario que cargó, cantidad de archivos, empresa cliente, estado del procesamiento (completado/en proceso/con errores). Permite identificar cuándo se cargaron lotes de facturas.
Entrada
Filtros opcionales: rango de fechas, usuario, empresa_cliente
Salida
Lista de sesiones de carga con detalles
Prioridad
Baja
RF08 - Ver Historial de Cambios por Voucher
Atributo
Detalle
Código
RF08
Nombre
Ver Historial de Cambios por Voucher
Propósito
Auditar todas las modificaciones realizadas a un voucher específico.
Descripción
Log de auditoría que muestra todos los cambios realizados a un voucher: qué campo se modificó, valor anterior, valor nuevo, usuario que realizó el cambio, fecha/hora. Permite trazabilidad completa para auditoría fiscal.
Entrada
voucher_id
Salida
Lista cronológica de cambios con detalle campo por campo.
Prioridad
Media
RF09 - Enviar datos a ORDEN
Atributo
Detalle
Código
RF09
Nombre
Enviar datos a ORDEN
Propósito
Exportar vouchers validados al sistema ORDEN para generación de reportes 606.
Descripción
Funcionalidad que prepara y envía los datos de gastos validados al sistema ORDEN mediante API REST. Valida API Key, genera el payload JSON requerido y registra la exportación en logs.
Entrada
empresa_cliente_id, mes/ciclo, orden_api_key
Salida
Confirmación de exportación exitosa, cantidad de registros enviados, log de exportación.
Prioridad
Alta
RF10 - Exportar datos a Excel
Atributo
Detalle
Código
RF10
Nombre
Exportar datos a Excel
Propósito
Generar archivo Excel con datos de vouchers en formato 606.
Descripción
Genera un archivo .xlsx con todos los vouchers validados del mes, formateado según la estructura del formulario 606 de DGII (RNC, NCF, montos, ITBIS, retenciones).
Entrada
empresa_cliente_id, mes/ciclo
Salida
Archivo Excel (.xlsx) para descarga.
Prioridad
Media
RF11 - Visualizar vouchers por empresa
Atributo
Detalle
Código
RF11
Nombre
Visualizar vouchers por empresa
Propósito
Filtrar y visualizar vouchers de una empresa cliente específica.
Descripción
Vista que muestra todos los vouchers asociados a una empresa. Funciona como filtro principal para segregar la información cuando el usuario maneja múltiples carteras.
Entrada
empresa_cliente_id
Salida
Lista filtrada de vouchers de la empresa seleccionada.
Prioridad
Alta
RF12 - Visualizar vouchers por ciclo
Atributo
Detalle
Código
RF12
Nombre
Visualizar vouchers por ciclo
Propósito
Agrupar y visualizar vouchers de un período fiscal específico.
Descripción
Filtro que permite seleccionar el mes/año del ciclo fiscal para agrupar los vouchers correspondientes. Esencial para la preparación de reportes mensuales.
Entrada
empresa_cliente_id, mes, año
Salida
Lista de vouchers del ciclo seleccionado.
Prioridad
Alta
Requerimientos No Funcionales
RNF01 - Precisión OCR/IA
Código
RNF01
Categoría
Calidad/Precisión
Descripción
El sistema debe alcanzar una precisión mínima del 80% en la extracción automática de datos de vouchers. Se mide como porcentaje de campos extraídos correctamente sin necesidad de corrección manual.
Métrica
Precisión ≥ 80% en dataset de prueba
Prioridad
Alta
RNF02 - Disponibilidad
Código
RNF03
Categoría
Disponibilidad
Descripción
El sistema debe mantener una disponibilidad del 99% durante horario laboral (8am-6pm días laborables), considerando que el procesamiento fiscal tiene deadlines estrictos (días 1-10 de cada mes).
Métrica
Uptime ≥ 99% en horario 8am-6pm
Prioridad
Alta
RNF04 - Seguridad de Datos
Código
RNF04
Categoría
Seguridad
Descripción
Los datos fiscales son sensibles y deben protegerse mediante: (1) Autenticación de usuarios, (2) Aislamiento de datos por empresa_cliente_id, (3) Conexiones HTTPS, (4) API Keys para integración ORDEN, (5) Logs de auditoría de todos los cambios.
Métrica
100% de operaciones autenticadas, 0 fugas de datos entre empresas
Prioridad
Crítica
RNF05 - Escalabilidad
Código
RNF05
Categoría
Escalabilidad
Descripción
El sistema debe soportar el crecimiento proyectado: inicio con 1 firma contable (Berit) procesando ~2800 facturas/mes, escalable hasta 10 firmas procesando ~30,000 facturas/mes sin degradación significativa de performance.
Métrica
Soporte hasta 30,000 facturas/mes con tiempo de respuesta < 3s en consultas
Prioridad
Media
RNF06 - Compatibilidad de Formatos
Código
RNF06
Categoría
Compatibilidad
Descripción
El sistema debe aceptar los formatos de archivo más comunes para vouchers: PDF, JPG, JPEG, PNG. Tamaño máximo de archivo: 10MB por voucher.
Métrica
Soporte para PDF, JPG, JPEG, PNG hasta 10MB
Prioridad
Alta
RNF07 - Usabilidad
Código
RNF07
Categoría
Usabilidad
Descripción
La interfaz debe ser intuitiva para usuarios con conocimientos básicos de contabilidad pero no necesariamente técnicos. Debe incluir tooltips, validaciones inline con mensajes claros, y feedback visual del estado de procesamiento.
Métrica
Usuario nuevo completa flujo completo en < 15 minutos con capacitación mínima
Prioridad
Media
RNF08 - Backup y Recuperación
Código
RNF08
Categoría
Confiabilidad
Descripción
Respaldos automáticos diarios de la base de datos y respaldos semanales de archivos de vouchers. Capacidad de restauración en caso de pérdida de datos con RPO (Recovery Point Objective) de 24 horas.
Métrica
Backup diario BD, semanal archivos, RPO ≤ 24h
Prioridad
Alta
RNF09 - Integración API ORDEN
Código
RNF09
Categoría
Interoperabilidad
Descripción
La integración con ORDEN debe ser mediante API REST con autenticación por API Key. El payload debe seguir el formato JSON especificado por ORDEN. Debe manejar reintentos automáticos en caso de fallo de conexión (máximo 3 reintentos).
Métrica
Exportación exitosa ≥ 95%, reintentos automáticos en caso de fallo
Prioridad
Alta
RNF10 - Cumplimiento Fiscal
Código
RNF10
Categoría
Compliance
Descripción
Los datos extraídos y exportados deben cumplir con las especificaciones de la DGII para el formulario 606: formatos de NCF, validación de RNC (11 dígitos), cálculos de ITBIS correctos, estructura de datos según normativa vigente.
Métrica
100% de archivos exportados válidos según formato DGII