📄 Automatiza la conversión de archivos DOCX a PDF desde Telegram con n8n

Tabla de contenidos
Introducción
En el mundo digital actual, automatizar tareas repetitivas no solo ahorra tiempo, sino que también mejora la eficiencia y reduce errores. Una tarea habitual es la conversión de documentos DOCX a PDF, especialmente cuando se gestionan informes, formularios o trabajos enviados por diversos usuarios.
Este tutorial te enseña a crear un workflow en n8n que se integra con Telegram para recibir automáticamente archivos DOCX a través de un bot, convertirlos a PDF usando LibreOffice en modo headless y devolver el archivo convertido al usuario. Una solución ideal para centros educativos, soporte técnico, o cualquier entorno donde se requiera la transformación rápida y efectiva de documentos.
✅ Requisitos necesarios
Antes de comenzar, asegúrate de contar con lo siguiente:
- Bot de Telegram: Crea y configura tu bot a través de @BotFather.
- Instalación local de n8n: Debes tener n8n instalado localmente en tu servidor o máquina.
📌 Importante: El acceso a n8n debe realizarse mediante HTTPS, ya que Telegram lo exige para la configuración de webhooks.
👉 Si necesitas ayuda con esto, puedes consultar el tutorial completo sobre cómo instalar n8n en local con HTTPS disponible en nuestra web. - LibreOffice: Debe estar instalado en modo headless en el mismo servidor para realizar la conversión sin interfaz gráfica.
- Acceso al sistema de archivos: Asegúrate de tener permisos de escritura y lectura en un directorio local, por ejemplo:
/home/node/files_to_convert
.
🧱 Paso a paso del workflow en n8n
1. Telegram Trigger
- Tipo: Telegram Trigger
- Nombre: Telegram Trigger
- Parámetros: Escucha el evento
message
- Función: Inicia el flujo al detectar la llegada de un archivo
.docx
.
2. Telegram (Get File Info)
- Tipo: Telegram
- Nombre: Telegram
- Resource:
file
- File ID:
{{$json.message.document.file_id}}
- Función: Recupera el identificador y detalles del archivo para su descarga.
3. Execute Command – Descargar DOCX
- Tipo: Execute Command
- Nombre: Execute Command
- Comando:
curl -o /home/node/files_to_convert/{{ $('Telegram Trigger').item.json.message.document.file_name }} https://api.telegram.org/file/bot<token_telegram>/{{ $json.result.file_path }}
- Función: Descarga el archivo manteniendo su nombre original.
4. Execute Command – Convertir a PDF
- Tipo: Execute Command
- Nombre: Execute Command1
- Comando:
libreoffice --headless --convert-to pdf /home/node/files_to_convert/{{ $('Telegram Trigger').item.json.message.document.file_name }} --outdir /home/node/files_to_convert
- Función: Convierte el archivo
.docx
a.pdf
con el mismo nombre (solo cambia la extensión).
5. Read/Write Files – Leer PDF
- Tipo: Read/Write Files
- Nombre: Read/Write Files from Disk
- File Selector:
/home/node/files_to_convert/{{ $("Telegram Trigger").item.json.message.document.file_name.replace('.docx', '.pdf') }}
- Función: Carga el archivo PDF generado desde el disco.
6. Telegram – Enviar PDF
- Tipo: Telegram
- Nombre: Telegram1
- Operation:
sendDocument
- Chat ID:
{{ $('Telegram Trigger').item.json.message.chat.id }}
- Binary Data:
true
- Función: Devuelve el archivo PDF al mismo usuario que lo envió.
🧠 Conclusión
Este workflow de n8n permite automatizar de forma completa la recepción, conversión y entrega de documentos entre Telegram y tu servidor, sin intervención humana. Al integrarlo con LibreOffice en modo headless y ejecutarlo en un entorno local seguro (con HTTPS), logras una solución potente, práctica y muy profesional.
Además, esta base se puede extender fácilmente: validación de tipos de archivo, marcas de agua, integración con sistemas en la nube o almacenamientos en red. Es un ejemplo perfecto del potencial que tiene n8n como plataforma de automatización sin código.
💡 Otros 5 workflows útiles que podrías crear con n8n
- Resumir mensajes largos de Telegram con OpenAI
Recibe textos extensos y devuelve un resumen automático gracias a la API de GPT. - Convertir notas de voz de Telegram a texto
Usa Whisper para transcribir audios enviados por los usuarios. - Subir automáticamente archivos recibidos a Google Drive o Dropbox
Ideal para archivar tareas o entregas de trabajos sin esfuerzo. - Responder a preguntas frecuentes desde Telegram
Crea un bot de atención al cliente que responde automáticamente usando nodos de búsqueda o IA. - Crear facturas en PDF a partir de un formulario web
Recoge datos desde un webhook, genera un PDF con los detalles y lo envía por correo o Telegram.