Skip to content

CFDI ​

Objetivo ​

Documentar cómo sy-energy emite los comprobantes fiscales digitales y qué sucede con ellos después de emitirlos.

Responsabilidad del módulo ​

Tomar los documentos pendientes de facturar, timbrarlos con el proveedor externo, almacenarlos y cargarlos al portal SIM de CENACE.

Audiencia ​

Facturación, operación y desarrollo interno.

Estado documental ​

  • Estado: Borrador
  • Última actualización: 2026-08-02
  • Owner: Pendiente
  • SME requerido: facturación / integraciones
  • Fuente resumida: comandos de facturación, integración de timbrado y catálogo fiscal de CENACE del repositorio.

Ciclo de vida de un CFDI ​

text
documento pendiente
        │  ecd:create_invoices
        ▼
    timbrado (Factura.com)
        │  ecd:upload_invoices_to_s3
        ▼
   almacenado en S3
        │  ecd:upload_invoices
        ▼
   cargado al portal SIM
        │  ecd:invoices_status
        ▼
   estatus confirmado

Cada paso corre automáticamente en la cadena diaria, en horarios distintos. Si una etapa se retrasa, la siguiente corre igual y procesa menos documentos de los esperados.

Comandos ​

ComandoUso
ecd:create_invoices {--chunk=} {--total=} ⚠️Crea todas las facturas pendientes. --total limita cuántas.
ecd:create_invoice {--id=} {--csv} {--csv-path=} ⚠️Crea una factura. Con --csv solo exporta los documentos pendientes, sin emitir.
ecd:upload_invoices_to_s3 {date?} {--ids=}Sube las facturas del día a S3.
ecd:upload_invoices {date?} {--chunk=} {--ids=}Encola la carga al portal SIM.
ecd:invoices_status {--from=} {--to=}Consulta el estatus en el SIM. Fechas en formato d/m/Y.
relate:cfdis {filename} {--step_2=}Relaciona el UUID de un CFDI con su archivo usando el FUF.
sync:cenace-cfdi {--file=} {--date=}Sincroniza los CFDI que emite CENACE.

Revisa antes de emitir

ecd:create_invoice --csv exporta los documentos pendientes con los datos con los que se facturarían, sin timbrar nada. Es la verificación previa recomendada antes de un cierre mensual.

Proveedor de timbrado ​

El timbrado se hace vía Factura.com, con URL de API, llave de API, llave secreta y versión de CFDI configuradas por variable de ambiente.

Dependencia única

No hay proveedor alterno configurado. Si Factura.com no está disponible durante un cierre mensual, la facturación se detiene por completo.

Comprobantes emitidos a CENACE ​

Los comprobantes dirigidos a CENACE usan reglas fiscales fijas, codificadas en el sistema y no configurables desde la interfaz: uso del CFDI, forma y método de pago, moneda, condiciones de pago, claves de producto y servicio, claves de unidad, tasa de impuesto y redondeo.

El sistema también distingue los folios según correspondan a transmisión o a distribución.

Cambiar cualquiera de estas reglas requiere cambio de código, no configuración.

Relación con otros módulos ​

MóduloRelación
ECD / CENACEOrigen de los documentos pendientes de facturar.
BillingDetermina los importes que se facturan.
Bots del SIMRealizan la carga al portal y devuelven el estatus.

Errores comunes ​

SíntomaCausa probableAcción
No se crearon facturasNo hay documentos pendientes, o falló la conexión con el proveedor.Revisar con ecd:create_invoice --csv y el log de proceso.
Se crearon pero no llegaron a S3Falla del bucket o de credenciales de AWS.Reejecutar ecd:upload_invoices_to_s3.
Están en S3 pero no en el SIMEl bot no procesó la carga.Revisar la cola de carga y el estado del bot.
El estatus no se actualizaNotificación pendiente en el SIM, o credenciales del participante vencidas.bot:queue --slug=cenace-notifications y reintentar.
Se timbró de más—No hay reversión automatizada. Escalar a desarrollo.

Evidencia esperada ​

  • Registro de creación de facturas en el log del día.
  • Archivos presentes en el bucket de facturas.
  • Estatus confirmado en el SIM para las facturas del periodo.

Riesgos y gaps ​

  • No hay procedimiento documentado de cancelación o corrección de un CFDI emitido por error.
  • Proveedor de timbrado único, sin contingencia documentada.
  • No está documentado el manejo de los complementos de pago.
  • Las reglas fiscales están codificadas: un cambio normativo exige despliegue.

Próxima revisión ​

Al documentar el procedimiento de cancelación de comprobantes.