Estructura Datos PREX

empresas_cliente

Almacena la información de las empresas que son clientes finales de las firmas contables. Cada firma contable puede gestionar múltiples empresas cliente, procesando sus facturas de forma independiente. Esta tabla permite la segregación de datos fiscales por empresa.

CampoDescripciónTipo
idIdentificador únicoPK
nombreRazón social de la empresaVARCHAR
rncRegistro Nacional de ContribuyentesVARCHAR(11)
usuario_idUsuario propietario/administradorFK → usuario

Relaciones: Relacionada con usuario (administrador) y vouchers_gastos (facturas procesadas).


usuario

Gestiona los usuarios del sistema con sus credenciales y permisos de acceso. Cada usuario puede estar asociado a una empresa cliente específica.

Relaciones: Vinculado con empresas_cliente (administración) y vouchers_gastos (auditoría de quién procesó cada voucher).


vouchers_gastos

Tabla central que almacena la información completa de cada factura procesada. Contiene todos los campos necesarios para generar el formulario 606 de DGII, incluyendo datos del comprobante fiscal, montos facturados, valores de servicios y bienes, ITBIS (facturado, retenido, proporcionalidad, al costo, percibido), retenciones de ISR, impuestos selectivos, propina legal, y metadatos de control como validación manual, fechas de procesamiento, y referencias al ciclo fiscal.

Relaciones principales:

  • proveedor_id → proveedores
  • tipo_gasto_id → tipos_gastos
  • forma_pago_id → formas_pago
  • ciclo_id → ciclo
  • empresas_cliente_id → empresas_cliente
  • usuario_id → usuario
  • procesamiento_id → procesamientos

vouchers_productos

Tabla de detalle que desglosa los productos o servicios incluidos en cada voucher cuando se requiere este nivel de granularidad.

CampoDescripciónTipo
producto_idReferencia al producto/servicioFK → productos
expense_voucher_idVoucher al que perteneceFK → vouchers_gastos
precioPrecio unitario del productoDECIMAL
nombre_ocrNombre extraído por OCRVARCHAR
usuario_idUsuario que registró el detalleFK → usuario

Propósito: Permitir análisis detallado por producto cuando el voucher contiene múltiples ítems.


productos

Catálogo de productos y servicios que pueden ser identificados en los vouchers para normalización y análisis agregado.


proveedores

Registro de todos los proveedores con los que las empresas cliente realizan transacciones.

CampoDescripciónTipo
nombreRazón social del proveedorVARCHAR
tipo_documento_idTipo de identificaciónFK → tipos_documentos
numero_documentoNúmero RNC/Cédula/PasaporteVARCHAR
tipo_proveedorClasificación del proveedorFK → tipos_proveedores

Propósito: Facilitar el matching automático durante la extracción de datos y gestionar la base de proveedores.


tipos_documentos

Catálogo de tipos de documentos de identificación válidos (RNC, Cédula, Pasaporte) para validación y clasificación.


tipos_proveedores

Clasificación de proveedores según su naturaleza o categoría de negocio para análisis y reportes.


tipos_gastos

Catálogo de tipos de gastos según la clasificación fiscal de DGII (01: Gastos de personal, 02: Gastos por trabajos y servicios, 09: Costo de venta, etc.).


formas_pago

Catálogo de las formas de pago aceptadas según la clasificación de DGII (Efectivo, Tarjeta, Transferencia, Cheque, etc.).


ciclo

Define los períodos fiscales mensuales para los cuales se procesan y agrupan los vouchers.

CampoDescripciónTipo
mesMes del período fiscal (1-12)INTEGER
anyoAño del período fiscalINTEGER

Propósito: Organizar y agrupar facturas por mes de reporte fiscal.


procesamientos

Registra cada ejecución del proceso de OCR e inteligencia artificial sobre los vouchers.

CampoDescripciónTipo
identifierIdentificador único del procesoVARCHAR
generated_atFecha y hora de ejecuciónTIMESTAMP

Propósito: Auditoría y trazabilidad del procesamiento automático, permitiendo identificar lotes de facturas procesadas juntas y analizar la precisión del sistema a lo largo del tiempo.