Incidentes de demanda
Cuándo usar este documento
Cuando falta demanda, llega incompleta, o los importes calculados salen por debajo de lo esperado.
Audiencia
Soporte y operación.
Estado documental
- Estado: Borrador
- Última actualización: 2026-08-02
- Owner: Pendiente
- SME requerido: operación / datos
- Fuente resumida: comandos de demanda y fuentes de sincronización.
Por qué es difícil de detectar
Un hueco de demanda no genera error. El sistema calcula con lo que tiene y produce un estado de cuenta con importe menor al real.
Se descubre de tres formas, en orden de costo creciente:
- En la revisión diaria — barato.
- En el cierre mensual — corregible.
- Cuando el cliente reclama — caro.
Fuentes
Antes de diagnosticar, identificar de dónde debía venir la demanda de ese centro de carga:
| Fuente | Cómo llega | Comando |
|---|---|---|
| Servicio de sincronización | Diario a las 06:00 | service:demand-sync |
| CFE TX (alta tensión) | Cola SQS desde cfetx-microservice | sync:service cfe-tx |
| ECD de CENACE | Sincronización de ECD | Ver Incidentes de CENACE / ECD |
Síntomas
| Síntoma | Ir a |
|---|---|
| Faltan horas sueltas en un día | Huecos en la demanda horaria |
| Falta la demanda de un centro completo | Un centro de carga sin demanda |
| No existe la demanda mensual | Falta la demanda mensual |
| No llega la demanda de alta tensión | CFE TX no responde |
| Los importes salen bajos | Importes menores a lo esperado |
Huecos en la demanda horaria
Causa habitual: la sincronización diaria llegó incompleta.
Recuperación: reconstruir la demanda horaria a partir de los datos de 5 minutos, que suelen estar completos:
php artisan demand:fix-hourly <fecha-inicio> <fecha-fin> --rmu=<RMU>--rmu acepta varios RMU separados por coma. Sin --rmu procesa todos.
Validación: las 24 horas de cada día del rango tienen dato.
Un centro de carga sin demanda
Causas probables:
- Mapeo incorrecto entre RPU y centro de carga.
- El centro no está dado de alta en la fuente.
- El alta del centro de carga quedó incompleta.
Diagnóstico: intentar la sincronización acotada y leer el error:
php artisan service:demand-sync --rmu=<RMU> --start_date=<Y-m-d> --end_date=<Y-m-d>El caso más peligroso
Si el RPU está mapeado al centro de carga equivocado, la demanda existe pero está en el lugar incorrecto. Los totales del participante cuadran y aun así dos clientes reciben importes mal. No se detecta revisando faltantes: hay que verificar el mapeo.
Falta la demanda mensual
Recuperación:
php artisan demand:monthly <fecha> <RMU>Opciones:
| Opción | Uso |
|---|---|
--force=true | La crea aunque ya exista. |
--retry=true | Reprocesa una existente. |
Precondición: la demanda horaria del mes debe estar completa. Generar la mensual sobre horaria incompleta propaga el error al estado de cuenta.
CFE TX no responde
Síntoma: no llegan las mediciones de alta tensión.
Causa más probable: la base de datos externa está protegida por autorización de IP y solo responde a servidores autorizados.
Diagnóstico: revisar la cola de CFE TX y el estado de cfetx-microservice.
Recuperación: si la conexión es rechazada, la resolución no está en este sistema: requiere que el proveedor externo autorice la IP. Escalar.
Importes menores a lo esperado
Diagnóstico, en orden:
- ¿Está completa la demanda horaria del periodo?
- ¿Existe la demanda mensual?
- ¿Está completa la energía de CENACE?bash
php artisan passthrough:check-cenace-energy <inicio> <fin> - ¿El contrato activo es el correcto para el periodo?
Recuperación: completar la fuente, recalcular y regenerar el estado de cuenta. Corregir la demanda sin regenerar el documento no cambia el importe facturado.
Validación posterior
| Qué | Cómo se ve bien |
|---|---|
| Demanda horaria | 24 valores por día, para cada centro de carga del periodo. |
| Demanda mensual | Existe para cada centro de carga y periodo. |
| Estado de cuenta | Regenerado después de la corrección. |
| Colas | Sin trabajos fallidos de demanda. |
Escalamiento
- La demanda de un centro de carga no llega durante varios días.
- Se detecta un mapeo de RPU incorrecto que afectó periodos ya facturados.
- CFE TX rechaza la conexión de forma sostenida.
Evidencia mínima
- Periodo y centro de carga.
- Instancia del participante.
- Fuente esperada de la demanda.
- Cantidad de registros presentes contra los esperados.
- Acción tomada y resultado.
Riesgos y gaps
- No existe una verificación única de completitud de demanda por periodo.
- No hay alerta cuando la sincronización diaria llega incompleta.
- No está documentado cuántas horas faltantes son tolerables antes de bloquear un cierre.
- No hay trazabilidad de cambios en el mapeo de RPU.
Próxima revisión
Al documentar demand-sync-service y cfetx-microservice.