# MÓDULO DE CONCILIACIÓN BANCARIA - GUÍA DE INSTALACIÓN
## 📦 Contenido del Módulo
Este módulo completo de Conciliación Bancaria incluye:
### Archivos PHP
- `funciones_conciliacion.php` - Clase con toda la lógica de negocio
- `conciliacion_bancaria.php` - Interfaz principal del módulo
- `api_conciliacion.php` - API AJAX para operaciones dinámicas
- `reportes_conciliacion.php` - Módulo de reportes y análisis
- `instalar_conciliacion.php` - Asistente de instalación
### Archivos de Documentación
- `CONCILIACION_BANCARIA_MANUAL.md` - Manual completo del usuario
- `README.md` - Este archivo
### Archivos de Base de Datos
- `crear_tablas_conciliacion.sql` - Script SQL completo (opcional)
### Archivos de Ejemplo
- `ejemplo_extracto_bancario.csv` - Muestra de formato de importación
## 🚀 Instalación Rápida
### Paso 1: Copiar Archivos
```
Copiar todos los archivos .php a: C:\xampp\htdocs\erp\
```
### Paso 2: Ejecutar Instalador
```
Abrir en navegador: http://localhost/erp/instalar_conciliacion.php
```
El instalador:
- ✓ Creará 4 tablas en la base de datos
- ✓ Creará 3 vistas SQL
- ✓ Agregará índices de optimización
- ✓ Configurará relaciones de integridad
### Paso 3: Acceder al Módulo
```
http://localhost/erp/conciliacion_bancaria.php
```
## 📋 Requisitos Previos
- PHP 7.4 o superior
- MySQL 5.7 o superior
- Base de datos ERP existente con:
- Tabla `bancos`
- Tabla `cuentas_bancarias`
- Tabla `movimientos_bancos`
- Usuarios logueados en el sistema
## 🗄️ Estructura de Tablas Creadas
### conciliacion_bancaria
Tabla principal que contiene:
- ID de conciliación (PK)
- Fecha inicio y fin del período
- Saldo del extracto bancario
- Saldo calculado del sistema
- Diferencias encontradas
- Estado (PENDIENTE o FINALIZADA)
### pda_maestro
Registro maestro de partidas:
- ID de partida (PK)
- Referencia a conciliación
- Referencia a movimiento
- Marca de registro
### pda_detalle
Detalle de cada partida:
- Montos del extracto y sistema
- Diferencias calculadas
- Estado del ítem (CONCILIADO, PENDIENTE, RECHAZADO)
### extractos_bancarios
Almacenamiento de extractos:
- Movimientos cargados
- Fechas y tipos
- Montos y saldos
- Trazabilidad de carga
## 🔧 Configuración Adicional
### Integrar en el Menú Principal
Editar `menu.php` y agregar:
```php
```
### Crear Permisos de Rol (Opcional)
En tabla de permisos:
```sql
INSERT INTO permisos VALUES
(NULL, 'CONSULTAR_CONCILIACION', 'Ver conciliaciones bancarias'),
(NULL, 'CREAR_CONCILIACION', 'Crear nuevas conciliaciones'),
(NULL, 'EDITAR_CONCILIACION', 'Editar conciliaciones'),
(NULL, 'FINALIZAR_CONCILIACION', 'Finalizar conciliaciones'),
(NULL, 'VER_REPORTES_CONCILIACION', 'Ver reportes de conciliación');
```
## 🎯 Primeros Pasos
### 1. Crear Conciliación
```
Modulo → Nueva Conciliación
├─ Seleccionar Cuenta Bancaria
├─ Ingresar Fecha Inicio
├─ Ingresar Fecha Fin
└─ Ingresar Saldo del Extracto
```
### 2. Agregar Movimientos
```
Seleccionar Movimientos Disponibles
├─ Hacer clic en "+" para cada movimiento
├─ Confirmar Montos
└─ Sistema identifica automáticamente diferencias
```
### 3. Resolver Diferencias
```
Revisar Sección "Diferencias No Conciliadas"
├─ Analizar cada diferencia
├─ Ajustar en sistema si es necesario
└─ Marcar como resuelto
```
### 4. Finalizar
```
Hacer clic en "Finalizar Conciliación"
├─ Sistema calcula totales
├─ Genera reporte final
└─ Marca movimientos como conciliados
```
## 📊 Reportes Disponibles
### Resumen General
- Total de conciliaciones
- Conciliaciones perfectas
- Conciliaciones con diferencias
- Estadísticas generales
### Diferencias
- Listado de todas las diferencias
- Detalles de movimientos
- Montos extracto vs sistema
- Estado de resolución
### Movimientos Conciliados
- Detalle de movimientos por período
- Trazabilidad completa
- Fechas y referencias
- Historial de conciliación
### Análisis de Varianza
- Porcentaje de diferencias
- Tendencias de errores
- Análisis estadístico
- Identificación de patrones
## 🔐 Seguridad
El módulo implementa:
- ✓ Validación de sesión
- ✓ Protección contra SQL Injection
- ✓ Validación de entrada
- ✓ Control de acceso
- ✓ Logs de auditoría
- ✓ Cascadas de integridad
## 🐛 Solución de Problemas
### Error: "Tabla no existe"
```
→ Ejecutar instalar_conciliacion.php nuevamente
```
### Error: "Conexión denegada"
```
→ Verificar credenciales en conexion.php
→ Verificar que MySQL esté corriendo
```
### Movimientos no aparecen
```
→ Verificar que movimientos_bancos tenga registros
→ Verificar que id_cuenta sea correcto
→ Revisar rango de fechas
```
### Diferencia no se resuelve
```
→ Revisar montos ingresados
→ Verificar que sean exactamente iguales
→ Revisar comisiones o cambios de moneda
```
## 📈 Optimización y Mantenimiento
### Backup de Datos
```sql
-- Exportar conciliaciones
SELECT * FROM conciliacion_bancaria
INTO OUTFILE '/tmp/backup_conciliaciones.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
```
### Limpiar Datos Antiguos
```sql
-- Eliminar conciliaciones de hace más de 1 año
DELETE FROM conciliacion_bancaria
WHERE DATE_SUB(NOW(), INTERVAL 1 YEAR) > fecha_creacion;
```
### Verificar Integridad
```sql
-- Verificar huérfanos
SELECT * FROM pda_detalle
WHERE id_conciliacion NOT IN (
SELECT id_conciliacion FROM conciliacion_bancaria
);
```
## 📞 Soporte y Contacto
Para reportar problemas o sugerencias:
- Revisar CONCILIACION_BANCARIA_MANUAL.md
- Consultar logs del servidor
- Verificar integridad de datos
## 📝 Historial de Versiones
### v1.0 (Diciembre 2025)
- ✓ Creación inicial del módulo
- ✓ Interfaz principal
- ✓ API AJAX
- ✓ Reportes
- ✓ Documentación completa
## 📄 Licencia
Este módulo es parte del Sistema ERP y sigue la misma licencia del proyecto principal.
---
**Última Actualización:** Diciembre 2025
**Versión:** 1.0
**Estado:** Listo para producción ✓