Skip to content

cfe-rates-microservice

Qué es

El microservicio que administra las tarifas eléctricas de CFE: las almacena, calcula estimaciones de facturación por centro de carga a partir de archivos de demanda, exporta resultados a Excel e intercambia información con el bot que extrae las tarifas del portal de CFE.

Tipo de sistema

CampoValor
TipoSistema web + API
Lenguaje y frameworkPHP 8.5 · Laravel 13
AutenticaciónLaravel Breeze / Sanctum
Base de datosMySQL propia, más bases externas por propietario
ColasAWS SQS (tres colas)
EjecuciónServidor, con worker de cola
DespliegueDeployer + GitHub Actions

Estado documental

  • Estado: Borrador
  • Última actualización: 2026-08-02
  • Owner: Pendiente
  • SME requerido: desarrollo
  • Fuente resumida: código, configuración de colas y documentación del repositorio.

Qué hace

  • Almacena tarifas de CFE indexadas por año, mes, división, tipo y concepto.
  • Procesa archivos CSV de tarifas: calcula la tarifa compuesta por división y tipo y publica trabajos de almacenamiento.
  • Calcula tarifas para archivos de demanda cargados (horaria o de 5 minutos) y devuelve estimaciones de facturación.
  • Exporta los resultados a Excel.
  • Solicita tarifas al bot externo y consume sus respuestas.
  • Lee datos de centros de carga y consumo desde bases externas por propietario.
  • Sirve pantallas autenticadas y una API versionada.

Arquitectura

Estructura por dominios en src/:

NamespaceResponsabilidad
AppCapa Laravel: controladores, trabajos, comandos, proveedores, middleware.
DomainLógica de negocio: tarifas, cálculos, centros de carga, exportaciones.
SupportInfraestructura, incluida la pasarela hacia SQS.

Rutas web para la interfaz y rutas de API montadas bajo una versión.

Las tres colas

Es el punto que más confunde al diagnosticar. El servicio envía y recibe por colas distintas:

ColaDirecciónContenido
SolicitudesSalidaPeticiones de consulta de tarifas dirigidas al bot, una por región.
AlmacenamientoAmbasTrabajos de guardado de tarifas: el servicio los publica y sus propios workers los consumen.
RespuestasEntradaTarifas que devuelve el bot tras consultar el portal de CFE.
text
cfe-rates-microservice ──solicitudes──► cfe-rates-scraper
           ▲                                    │
           └────────────respuestas◄─────────────┘

cfe-rates-microservice ──almacenamiento──► sus propios workers

Cada dirección tiene su propio worker. Si el worker de respuestas está caído, el bot puede estar funcionando perfectamente y aun así las tarifas nunca aparecen.

Relación con otros sistemas

SistemaRelación
cfe-rates-scraperEl bot que consulta el portal de CFE.
sy-energyConsume las tarifas de CFE por centro de carga.
Bases externas por propietarioOrigen de datos de centros de carga y consumo.

Riesgos y gaps

  • No está documentado el contrato de la API versionada.
  • No está documentado el esquema de accesos por participante.
  • El código del bot vive fuera de este repositorio; el diagnóstico de punta a punta requiere ambos.
  • No está documentado el comportamiento cuando una respuesta del bot llega tarde o duplicada.

Próxima revisión

Al documentar el contrato de la API.