PDF4me Plantilla de Word
Qué abarca esta guía
Esta guía le explica cómo generar una factura única. PDF en n8n utilizando el paquete plantilla.docx y datos.json paquete de muestra. La plantilla de Word utiliza PDF4me <<[fieldName]>> etiquetas de combinación (sintaxis del motor de informes LINQ). Usted carga el .docx como datos binarios, pegar o cargar coincidencia JSON/XML/CSVy recibir uno terminado PDF por carrera.
Antes de comenzar
plantilla.docx es un diseño de factura. Los valores dinámicos utilizan <<[Número de inventario]>>, <<[companyName1]>>, <<[productName]>>y etiquetas similares. Los nombres de los campos distinguen entre mayúsculas y minúsculas y deben coincidir exactamente con las claves de sus datos.datos.json (recomendado), test.xml, o prueba.csvLos tres tienen los mismos valores de factura. Elija el Tipo de datos del documento en el nodo para que coincida con el formato de archivo que proporcione.Paquete de archivos de muestra
Descarga los cuatro archivos a continuación. Están diseñados para funcionar conjuntamente: una plantilla más tres formatos de datos equivalentes.
<<[campo]>> etiquetas¿Qué contienen los archivos de muestra?
Diseño de plantilla (template.docx)
La plantilla de ejemplo es de una sola página. factura con etiquetas fijas y campos de combinación dinámicos:
| Sección de documentos | Etiqueta estática (fija en la plantilla) | Etiqueta de combinación (rellenada a partir de datos) |
|---|---|---|
| Encabezamiento | FACTURA | (estático) |
| Metadatos de la factura | Factura # | <<[InvNr]>> |
| Metadatos de la factura | Importe de la factura | <<[invAmt]>> |
| Metadatos de la factura | Fecha de la factura | <<[invDate]>> |
| Metadatos de la factura | DESPUÉS # | <<[invPO]>> |
| Metadatos de la factura | Período de facturación | <<[from]>> a <<[to]>> |
| Facturado a | FACTURADO A | <<[companyName1]>>, <<[companyName2]>>, <<[addressline1]>>, <<[addressline2]>>, <<[country]>> |
| Fila de artículo de línea | Descripción / Precio / % IVA / IMPORTE (USD) | <<[productName]>>, <<[price]>>, <<[vat]>>, <<[amount]>> |
Plantillas de Word de PDF4me <<[fieldName]>> (corchetes angulares dobles con corchetes cuadrados). Esto es diferente de HTML sintaxis de bigote ({{fieldName}}). Ver el Guía de sintaxis de plantillas de Word para bucles, condiciones y cadenas de formato.
Mapeo de campos en todos los archivos de datos
Cada valor dinámico en la plantilla se asigna a una clave en data.json, un XML elemento en test.xml, o un CSV columna en test.csv:
| Template tag | JSON key (data.json) | XML element (test.xml) | Sample value |
|---|---|---|---|
<<[companyName1]>> | companyName1 | CompanyName1 | Muster AG |
<<[companyName2]>> | companyName2 | CompanyName2 | Hans Muster |
<<[addressline1]>> | addressline1 | AddressLine1 | example street |
<<[addressline2]>> | addressline2 | AddressLine2 | 8000 Zürich |
<<[country]>> | country | Country | Switzerland |
<<[productName]>> | productName | ProductName | PDF4me |
<<[price]>> | price | Price | 1000 |
<<[vat]>> | vat | VAT | 8.00 |
<<[amount]>> | amount | Amount | 1000 |
<<[InvNr]>> | InvNr | InvoiceNumber | 202311InV |
<<[invAmt]>> | invAmt | InvoiceAmount | 1000 |
<<[invDate]>> | invDate | InvoiceDate | 2023-11-24 |
<<[invPO]>> | invPO | PurchaseOrder | 1234567 |
<<[from]>> | from | FromDate | 2023-10-24 |
<<[to]>> | to | ToDate | 2023-10-24 |
El flujo de trabajo de un vistazo
La forma más rápida de probar el paquete de muestras en n8n:
Manual Trigger → Read Binary File (template.docx) → PDF4me Generate Document (Single) → (optional) Write Binary File
| Paso | n8n nodo | Objetivo |
|---|---|---|
| 1 | Disparador manual | Inicie el flujo de trabajo bajo demanda. |
| 2 | Leer archivo binario | Cargas template.docx en propiedad binaria data |
| 3 | PDF4me → Generar documento (único) | Combina plantilla + datos, genera uno PDF |
| 4 | Escribir archivo binario (opcional) | Guarda generated_document_output.pdf al disco |
/generate-document-single-full-word.png)
Configuración de destino: Plantilla de Word desde binario + JSON pegado en Texto de los datos del documento + PDF producción
Paso 1: Descargue y coloque los archivos de muestra.
- Descargar
template.docxydata.jsondel Paquete de archivos de muestra arriba. - Guarda ambos archivos en algún lugar n8n pueden leerlos, por ejemplo
C:\pdf4me-samples\En una instancia autohospedada, o súbalas a Google Drive/Dropbox si prefiere usar activadores en la nube más adelante. - Opcionalmente, descárguelo.
test.xmlotest.csvSi quieres probar XML o CSV tipos de datos en lugar de JSON.
Paso 2: Crear el n8n Flujo de trabajo
- En n8n, crear un nuevo flujo de trabajo.
- Agregar un Disparador manual nodo (o cualquier disparador que prefiera para producción).
- Agregar un Leer archivo binario nodo después del disparador.
- Agregar PDF4me → Generar documento (único) Después de leer el archivo binario.
- Conecta los nodos en secuencia.
Paso 3: Cargar la plantilla de Word (Read Binary File)
Configurar el Leer archivo binario nodo:
| Campo | Valor |
|---|---|
| Ruta del archivo | Ruta completa a su descarga template.docx |
| Nombre de la propiedad | data (predeterminado; esto se convierte en la propiedad binaria el PDF4me lecturas de nodos) |
Ejecute este nodo una vez y confirme que el elemento de salida muestra un campo binario llamado data con nombre de archivo template.docx.
Paso 4: Configurar PDF4me Generar documento (único)
Abrir el PDF4me Node.js y configure estos campos. Los valores que se muestran a continuación coinciden exactamente con el paquete de muestra.
Configuración principal
| Campo | Valor | Notas |
|---|---|---|
| Credencial para conectarse con | Su PDF4me credencial | Conseguir API llave |
| Recurso | Generate | |
| Generar operaciones | Generar documento (único) | |
| Tipo de archivo de plantilla | Plantilla de Word PDF4me | Partidos .docx con <<[field]>> etiquetas |
| Tipo de salida | Usar Word si necesita un documento fusionado editable .docx en cambio |
Entrada de plantilla (desde Leer archivo binario)
| Campo | Valor |
|---|---|
| Tipo de entrada de archivo de plantilla | Datos binarios |
| Propiedad binaria de plantilla | data |
| Nombre del archivo de plantilla | template.docx |
Datos del documento (pegar JSON desde data.json)
| Campo | Valor |
|---|---|
| Tipo de entrada de datos del documento | Texto |
| Tipo de datos del documento | JSON |
| Texto de los datos del documento | Pegue el contenido completo de data.json (ver el bloque a continuación) |
{
"companyName1": "Muster AG",
"companyName2": "Hans Muster",
"addressline1": "example street",
"addressline2": "8000 Zürich",
"country": "Switzerland",
"productName": "PDF4me",
"price": 1000,
"vat": 8.0,
"amount": 1000,
"InvNr": "202311InV",
"invAmt": 1000,
"invDate": "2023-11-24",
"invPO": "1234567",
"from": "2023-10-24",
"to": "2023-10-24"
}
Opciones de salida
| Campo | Valor |
|---|---|
| Mantener PDF Editable | Off (default) |
| Nombre de salida de datos binarios | data (por defecto) |
Paso 5: Ejecutar y verificar el PDF
- Haga clic Ejecutar flujo de trabajo (o huir de la PDF4me nodo).
- Abrir el PDF4me Salida del nodo. Bajo Binario, abre el archivo en propiedad
data(Nombre del archivogenerated_document_output.pdf). - Confirme que la factura emitida muestre:
- Factura # →
202311InV - Facturado a → Muster AG / Hans Muster / calle Example / 8000 Zúrich / Suiza
- Elemento de línea → PDF4me, precio 1000, IVA 8.00, importe 1000
- Período de facturación →
2023-10-24a2023-10-24
- Factura # →
Si un campo aparece en blanco, compare el nombre de la etiqueta en template.docx con el JSON clave. Deben coincidir exactamente (incluyendo mayúsculas y minúsculas): InvNr no invNr).
Paso 6: Guardar el resultado (opcional)
Agregar un Escribir archivo binario nodo después PDF4me:
| Campo | Valor |
|---|---|
| Nombre del archivo | invoice-output.pdf (o utilice una expresión) |
| Nombre de la propiedad de datos | data |
| Ruta de salida | Carpeta donde n8n debería escribir el archivo |
Formatos de datos alternativos
Lo mismo template.docx funciona con los tres archivos de datos del paquete de muestra. Solo el Tipo de datos del documento y cambio de carga útil.
Opción A: JSON archivo como binario (data.json)
- Añade un segundo Leer archivo binario nodo para
data.json. - Utilice un Unir Nodo para combinar el binario de la plantilla y el binario de datos en un solo elemento (o ejecutar la carga de datos en una rama separada).
- En PDF4me: Tipo de entrada de datos del documento = Datos binarios, Tipo de datos del documento = JSON, Propiedad binaria del documento =
data, Nombre del archivo de datos del documento =data.json.
:::precaución: Colisión de nombres de propiedades binarias
Cuando tanto la plantilla como los datos utilizan la misma propiedad data En el mismo elemento, se sobrescriben entre sí. Utilice nombres de propiedades separados (por ejemplo, template y dataFile) o fusionar elementos de dos nodos de lectura de archivos binarios.
:::
Opción B: XML (test.xml)
Colocar Tipo de datos del documento a XML y pegar el contenido de test.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Invoice>
<CompanyName1>Muster AG</CompanyName1>
<CompanyName2>Hans Muster</CompanyName2>
<AddressLine1>example street</AddressLine1>
<AddressLine2>8000 Zürich</AddressLine2>
<Country>Switzerland</Country>
<ProductName>PDF4me</ProductName>
<Price>1000</Price>
<VAT>8.00</VAT>
<Amount>1000</Amount>
<InvoiceNumber>202311InV</InvoiceNumber>
<InvoiceAmount>1000</InvoiceAmount>
<InvoiceDate>2023-11-24</InvoiceDate>
<PurchaseOrder>1234567</PurchaseOrder>
<FromDate>2023-10-24</FromDate>
<ToDate>2023-10-24</ToDate>
</Invoice>
Opción C: CSV (test.csv)
Colocar Tipo de datos del documento a CSV y pegar el CSV Cuerpo (fila de encabezado + una fila de datos):
companyName1,companyName2,addressline1,addressline2,country,productName,price,vat,amount,InvNr,invAmt,invDate,invPO,from,to
"Muster AG","Hans Muster","example street","8000 Zürich","Switzerland","PDF4me",1000,8.00,1000,"202311InV",1000,"2023-11-24","1234567","2023-10-24","2023-10-24"
CSV Los encabezados de columna coinciden con el JSON claves directamente, que se asignan a la <<[fieldName]>> etiquetas en la plantilla.
Patrones de flujo de trabajo de producción
Métodos comunes para suministrar plantillas y datos en producción.Once the sample test works, replace the Manual Trigger and Read Binary File nodes with these patterns.
- El disparador de Google Drive / Dropbox / OneDrive se activa al crear un archivo nuevo.
- Descargar nodos
plantilla.docx(o utilice una ruta de plantilla fija). - Construir JSON en un Código o Colocar nodo de CRMCampos de la hoja.
- PDF4me fusiones y salidas PDF al correo electrónico o al almacenamiento.
- El webhook recibe la información del pedido/factura.
- Plantilla cargada una vez desde URL o almacenamiento binario.
- Mapear el cuerpo del webhook a Texto de los datos del documento con una expresión.
- Las claves aún deben coincidir
<<[fieldName]>>etiquetas en la plantilla.
- Anfitrión
plantilla.docxydatos.jsonen público HTTPS URLs. - Colocar Tipo de entrada de archivo de plantilla = URL, URL del archivo de plantilla = enlace de plantilla.
- Colocar Tipo de entrada de datos del documento = URL, URL del archivo de datos del documento = enlace de datos.
- No se requieren nodos de descarga previos.
Preguntas frecuentes
Guías relacionadas
- Descripción general de la generación de documentos (individuales): todos los parámetros, campos de salida y tipos de plantilla
- Sintaxis de plantillas de Word:
<<[field]>>etiquetas, bucles, condiciones, formato - Generar PDF desde plantilla de Word en Make: mismo patrón de muestra en Make