Saltar al contenido principal

Creación de facturas QR suizas en n8n: Dos flujos de trabajo completos (con y sin un PDF existente)

· 28 min de lectura
SEO and Content Writer

Cada factura suiza debe llevar un Billete QR suizo (también llamado comprobante de pago QR suizo) para que los bancos y el software de contabilidad puedan escanear y procesar el pago automáticamente. n8n y PDF4me hacen que esa generación sea completamente automática. Esta guía explica cómo hacerlo. dos flujos de trabajo listos para producciónUna opción superpone el código QR sobre un PDF ya existente en Dropbox, y la otra genera un documento de factura QR independiente a partir de los datos de pago, sin necesidad de un PDF de fondo. Ambas se configuran en menos de 10 minutos.

Dos flujos de trabajo que se abordan en esta guía.
Workflow A (4 nodes)
Trigger → Download PDF → Create SwissQR (Binary Data) → Upload. Output: 602 kB. Best when you already have a PDF invoice in Dropbox.
Workflow B (3 nodes)
Trigger → Create SwissQR (None) → Upload. Output: 132 kB. Best when you only have payment data and need a standalone QR slip.
La versión corta

Flujo de trabajo A: Disparadores. Descarga de Dropbox recupera Prueba de deuda AG.pdf (344 kB). PDF4me Create SwissQR Bill funciona con Tipo de datos de entrada: Datos binariosImporte 1000 CHF, IBAN CH0200700110003765824, Acreedor: Test AG. Salida es swissqr_bill.pdf con un tamaño de 602 kB. Dropbox Upload guarda el resultado.

Flujo de trabajo B: Disparadores. PDF4me Create SwissQR Bill funciona con Tipo de datos de entrada: Ninguno, los mismos campos de pago más una dirección de acreedor estructurada completa. La salida es n8n_swissqr02.pdf con un tamaño de 132 kB. Dropbox Upload guarda el resultado.

El único ajuste que lo determina todo

El Tipo de datos de entrada El campo en el nodo PDF4me es la única diferencia estructural entre los dos flujos de trabajo. Configúrelo en Datos binarios cuando tenga un PDF existente (Flujo de trabajo A). Configúrelo en Ninguno Cuando se desea un comprobante QR independiente a partir únicamente de los datos de pago (Flujo de trabajo B). Todos los demás parámetros, importe, IBAN, moneda, nombre del acreedor, son idénticos en ambos casos.

Lo que estás construyendo

Cada factura suiza emitida tras la migración en 2020 del antiguo formato de comprobante de pago debe incluir una factura QR suiza: una sección de pago estandarizada con un código QR que codifica el IBAN, el importe, la moneda, el acreedor y, opcionalmente, los datos del deudor en formato ISO 20022. Los bancos y el software de contabilidad la escanean sin necesidad de introducir los datos manualmente. Los dos flujos de trabajo de n8n que se describen en esta guía automatizan este paso de generación, de modo que la factura QR se produce y se guarda en Dropbox sin necesidad de intervención manual.


De un vistazo

Flujo de trabajo A: 4 pasos

1Trigger
2Download PDF from Dropbox
3Create SwissQR (Binary Data)
4Upload result to Dropbox
Descripción general del flujo de trabajo n8n: Al hacer clic en el activador Ejecutar flujo de trabajo, Dropbox descarga un archivo (descargar: archivo), PDF4me crea una factura SwissQR (factura / Crear factura Swiss QR) y Dropbox carga un archivo (cargar: archivo). Los cuatro nodos están conectados en secuencia, con un elemento pasando entre cada uno.

Flujo de trabajo A: cuatro nodos, Disparador para descargar para crear factura SwissQR (datos binarios) para cargar.

Flujo de trabajo B: 3 pasos

1Trigger
2Create SwissQR (None)
3Upload result to Dropbox
Descripción general del flujo de trabajo B de n8n: Al hacer clic en el activador Ejecutar flujo de trabajo, se activan el nodo PDF4me Create SwissQR bill1 etiquetado como Crear Swiss QR sin datos de entrada (PDF) (factura / Crear factura Swiss QR), y el nodo Dropbox Upload a file1 (cargar: archivo). Tres nodos conectados en secuencia con un elemento pasando entre cada uno.

Flujo de trabajo B: tres nodos, Disparador para crear factura SwissQR (Tipo de datos de entrada Ninguno) para cargar. No se requiere paso de descarga.


¿Por qué dos flujos de trabajo separados?

Conserve su documento existente.

El flujo de trabajo A mantiene intacta la plantilla de factura personalizada. PDF4me añade el código QR suizo al PDF que ya tienes en Dropbox. Sin reformateo, sin rediseño, sin maquetación manual.

Generar a partir de datos únicamente

El flujo de trabajo B omite por completo el paso de descarga. Proporcione los datos de pago y PDF4me generará el comprobante de pago QR completo desde cero. No se requiere ningún PDF base.

Un escenario, dos caminos

La única diferencia estructural es la Tipo de datos de entrada Campo: Datos binarios para el flujo de trabajo A, ninguno para el flujo de trabajo B. El importe, el IBAN, la moneda y el nombre del acreedor están configurados de la misma manera en ambos.


Antes de empezar

Lista de verificación
  • n8n (en la nube o autoalojado). Cree un nuevo flujo de trabajo en blanco.
  • Clave API de PDF4meConfiguración inicial: Conectar PDF4me con n8n.
  • Dropbox Credencial OAuth2 en n8n con acceso de lectura y escritura a su carpeta de trabajo.
  • Flujo de trabajo A únicamente: Un PDF existente almacenado en Dropbox (por ejemplo, Prueba de deuda AG.pdf en /Datos del blog/SwissQR/).
  • Datos de pago: Un IBAN suizo válido (21 caracteres, comienza con CH), importe, moneda (CHF o EUR), nombre del acreedor y, para el flujo de trabajo B, la dirección completa estructurada del acreedor.

Flujo de trabajo A: Crear una factura QR suiza a partir de un PDF existente (4 nodos)

Utilice esta función cuando ya tenga una factura o documento en formato PDF. PDF4me superpone el código QR suizo sobre el archivo.

Paso 1: Descarga el PDF existente desde Dropbox.

Flujo hasta ahora: Desencadenar.

  1. Añade el Dropbox nodo.
  2. Credencial: API OAuth2 de Dropbox.
  3. Recurso: Archivo. Operación: Descargar.
  4. Ruta del archivo: ruta a tu PDF en Dropbox, por ejemplo: Prueba de deuda AG.pdf (en este ejemplo el archivo se encuentra en /Datos del blog/SwissQR/).
  5. Coloque el archivo de salida en el campo: datos.
  6. Ejecuta el paso. El panel SALIDA debería mostrar el nombre del archivo (Prueba de deuda AG.pdf), directorio, tipo MIME aplicación/pdfy un tamaño de archivo de 344 kB.
n8n Dropbox Descargar un nodo de archivo: Credenciales Dropbox OAuth2 API, Archivo de recursos, Operación Descargar, Ruta de archivo Test Debt AG.pdf, Colocar archivo de salida en datos de campo. El panel SALIDA muestra Nombre de archivo Test Debt AG.pdf, Directorio /Blog Data/SwissQR, Extensión de archivo pdf, Tipo MIME application/pdf, Tamaño del archivo 344 kB.

Descarga de Dropbox configurada con ruta de archivo Prueba de deuda AG.pdf y coloque el archivo de salida en el campo. datos. La SALIDA confirma que el archivo descargado tiene un tamaño de 344 kB.


Paso 2: Cree la factura SwissQR en el PDF descargado.

Flujo hasta ahora: Activar y luego descargar PDF.

Este es el paso fundamental. PDF4me lee el archivo binario PDF descargado y genera un nuevo PDF con el código QR suizo adjunto.

  1. Añade el PDF4me nodo.
  2. Credencial: Cuenta de PDF4ME.
  3. Recurso: Factura. Operaciones de facturación: Crear factura SwissQR.
  4. Tipo de datos de entrada: Datos binarios (porque estás alimentando el PDF desde el nodo anterior).
  5. Propiedad binaria: datos (coincide con el nombre del campo del paso de descarga).
  6. Nombre del archivo: Prueba de deuda AG.pdf (el nombre del archivo del documento fuente).
  7. Rellene los campos de pago:
    • Cantidad: 1000
    • Divisa: Franco suizo
    • IBAN: CH0200700110003765824
    • Nombre del acreedor: Prueba AG
  8. Ejecuta el paso. El panel SALIDA muestra swissqr_bill.pdf, tipo MIME aplicación/pdf, tamaño del archivo 602 kB (en comparación con los 344 kB anteriores debido a que las páginas con el código QR estaban integradas).
n8n PDF4me Crear nodo de factura SwissQR con ENTRADA que muestra Descargar una salida de archivo: Nombre del archivo Test Debt AG.pdf 344 kB. Parámetros: Credencial Cuenta PDF4ME 3, Recurso Factura, Operaciones de factura Crear factura SwissQR, Tipo de datos de entrada Datos binarios, Propiedad binaria datos, Nombre del archivo Test Debt AG.pdf, Importe 1000, Moneda Franco suizo, IBAN CH0200700110003765824, Nombre del acreedor Test AG. SALIDA: datos, Nombre del archivo swissqr_bill.pdf, Extensión de archivo pdf, Tipo MIME application/pdf, Tamaño del archivo 602 kB.

Crear factura SwissQR con tipo de datos de entrada Datos binarios. La ENTRADA es el PDF de 344 kB de Dropbox. La SALIDA es swissqr_bill.pdf con 602 kB. El aumento de tamaño confirma que el código QR estaba incrustado.


Paso 3: Sube el resultado a Dropbox.

Flujo hasta ahora: Activar, luego descargar PDF y luego crear factura SwissQR.

  1. Añade otro Dropbox nodo.
  2. Credencial: API OAuth2 de Dropbox.
  3. Recurso: Archivo. Operación: Subir.
  4. Ruta del archivo: ruta de destino en Dropbox, por ejemplo. /Datos del blog/SwissQR/swissqr_bill.pdf.
  5. Archivo binario: En.
  6. Campo binario de entrada: datos (el billete SwissQR generado en el paso anterior).
  7. Ejecutar. Dropbox devuelve los metadatos de la carga, confirmando el nombre y la ruta del archivo.

El flujo de trabajo A se ha completado. Su PDF existente ahora incluye un código QR suizo y se ha guardado en Dropbox.


Flujo de trabajo B: Crear una factura QR suiza independiente (3 nodos)

Utilice esta función cuando no disponga de un PDF de fondo. PDF4me genera el comprobante de pago QR completo a partir de los datos de pago que introduzca directamente en el nodo.

Paso 1: Crear factura SwissQR sin PDF de fondo

Flujo hasta ahora: Desencadenar.

Dado que no hay un archivo PDF de entrada, debe completar la dirección completa del acreedor para que PDF4me pueda generar el formato completo de la factura QR suiza.

  1. Añade el PDF4me nodo.
  2. Credencial: Cuenta de PDF4ME.
  3. Recurso: Factura. Operaciones de facturación: Crear factura SwissQR.
  4. Tipo de datos de entrada: Ninguno (esto le indica a PDF4me que genere un comprobante QR independiente sin PDF de fondo).
  5. Rellene los campos de pago:
    • Cantidad: 1000
    • Divisa: Franco suizo
    • IBAN: CH0200700110003765824
    • Nombre del acreedor: Prueba AG
    • Tipo de dirección del acreedor: Estructurado
    • Nombre o dirección del acreedor: Test Strasse
    • Número de edificio del acreedor: 1
    • Código postal del acreedor: 8000
    • Ciudad acreedora: Zúrich
  6. Ejecuta el paso. El panel SALIDA muestra swissqr_bill.pdf con un tamaño de 132 kB. Significativamente más pequeño que el Flujo de trabajo A (602 kB) porque no hay un PDF de fondo, solo el propio código QR.
n8n PDF4me Crear nodo de factura SwissQR con tipo de datos de entrada Ninguno: Credencial Cuenta PDF4ME 3, Recurso Factura, Operaciones de factura Crear factura SwissQR, Tipo de datos de entrada Ninguno, Importe 1000, Moneda Franco suizo, IBAN CH0200700110003765824, Nombre del acreedor Test AG, Tipo de dirección del acreedor Estructurada, Nombre de la calle del acreedor Test Strasse, Número de edificio del acreedor 1, Código postal del acreedor 8000, Ciudad del acreedor Zúrich. SALIDA: datos, Nombre del archivo swissqr_bill.pdf, Extensión del archivo pdf, Tipo MIME application/pdf, Tamaño del archivo 132 kB.

Cree una factura SwissQR con tipo de datos de entrada Ninguno. Se requiere la dirección completa del acreedor, ya que PDF4me genera el diseño desde cero. El resultado es de 132 kB.


Paso 2: Sube la factura QR independiente a Dropbox.

Flujo hasta ahora: Activar y luego crear factura SwissQR.

  1. Añade el Dropbox nodo.
  2. Credencial: API OAuth2 de Dropbox.
  3. Recurso: Archivo. Operación: Subir.
  4. Ruta del archivo: /n8n_swissqr02.pdf (o cualquier ruta en tu Dropbox).
  5. Archivo binario: En.
  6. Campo binario de entrada: datos.
  7. Ejecutar. El panel SALIDA confirma la carga: nombre: n8n_swissqr02.pdf, ruta_de_visualización: /n8n_swissqr02.pdf, tamaño: 132191, y is_downloadable: true.
n8n Dropbox Cargar un archivo1 nodo: ENTRADA desde Crear factura SwissQR1 mostrando datos, Nombre del archivo swissqr_bill.pdf, Extensión del archivo pdf, Tipo MIME application/pdf, Tamaño del archivo 132 kB. Parámetros: Credencial Dropbox OAuth2 API, Archivo de recurso, Operación Cargar, Ruta del archivo /n8n_swissqr02.pdf, Archivo binario habilitado, Campo binario de entrada datos. SALIDA: nombre n8n_swissqr02.pdf, ruta_inferior /n8n_swissqr02.pdf, ruta_de_visualización /n8n_swissqr02.pdf, tamaño 132191, es_descargable verdadero, cliente_modificado 2026-05-19T09:08:03Z.

La carga confirma: nombre n8n_swissqr02.pdf, camino /n8n_swissqr02.pdf, tamaño 132191 bytes, is_downloadable: true.

El flujo de trabajo B está completo. El PDF independiente de la factura QR suiza se encuentra en Dropbox y está listo para enviarse por correo electrónico o adjuntarse a cualquier documento saliente.


¿Qué flujo de trabajo debería elegir?

Flujo de trabajo A (con PDF existente)Flujo de trabajo B (independiente)
Nodes4 (trigger + download + QR + upload)3 (trigger + QR + upload)
Input Data TypeBinary DataNone
Requires existing PDFYes (in Dropbox or another source)No
Output size (example)602 kB132 kB
Full creditor address requiredNo (name only shown in example)Yes (Structured address required for layout)
Best forAdding QR slip to finished invoices or lettersSending a separate payment slip alongside any document

Referencia rápida: parámetros clave

NodoConfiguración de teclasValor de ejemplo
Dropbox Download (A only)File Path + Put Output File in FieldTest Debt AG.pdf; data
PDF4me Create SwissQR Bill (A)Input Data Type + Binary Property + File NameBinary Data; data; Test Debt AG.pdf
PDF4me Create SwissQR Bill (A and B)Amount + Currency + IBAN + Creditor Name1000; Swiss Franc; CH0200700110003765824; Test AG
PDF4me Create SwissQR Bill (B only)Input Data TypeNone
PDF4me Create SwissQR Bill (B only)Creditor Address Type + Street + Number + Postal Code + CityStructured; Test Strasse; 1; 8000; Zurich
Dropbox Upload (A)File Path + Binary File + Input Binary Field/Blog Data/SwissQR/swissqr_bill.pdf; On; data
Dropbox Upload (B)File Path + Binary File + Input Binary Field/n8n_swissqr02.pdf; On; data

Casos de uso

Lote de facturas mensuales: Extraiga una lista de PDF de facturas de Dropbox, recorra las mismas con un n8n Dividido en lotes En cada nodo, ejecute el flujo de trabajo A y guarde los resultados en una carpeta aparte. Una sola ejecución cubre todo el mes.

Comprobantes de pago dinámicos a partir de una base de datos: Se activa mediante un webhook cuando se crea una solicitud de pago. Se obtienen los datos del importe, el IBAN y el acreedor de un nodo de Postgres o Airtable. Se utiliza el flujo de trabajo B para generar el comprobante QR y enviarlo automáticamente por correo electrónico a través de Gmail o Outlook.

Alquiler y facturas de servicios públicos: Genera mensualmente recibos QR independientes (Flujo de trabajo B) para el alquiler, los servicios públicos o las cuotas de membresía. Guárdalos en Dropbox y adjúntalos a los correos electrónicos enviados desde n8n. No se necesita un PDF de fondo.

Autogestionado y en las instalaciones: Ejecuta n8n en tu propia infraestructura. Los datos de pago nunca salen de tu red, salvo la llamada a la API de PDF4me. Combínalo con recursos compartidos de archivos locales o NAS en lugar de Dropbox.


Preguntas frecuentes

¿Cuándo debo usar el flujo de trabajo A en lugar del flujo de trabajo B?

Usar Flujo de trabajo A Cuando ya tienes un documento PDF terminado (una factura, una carta, cualquier archivo) al que quieres añadir un código QR suizo, PDF4me añade el código QR a tu archivo existente. Flujo de trabajo B Cuando solo dispone de los datos de pago (IBAN, importe, datos del acreedor) y desea un comprobante de pago QR en formato PDF independiente, el flujo de trabajo B genera el documento completo desde cero sin necesidad de un PDF de fondo.

¿Qué formato IBAN requiere la factura QR suiza?

El IBAN debe ser válido IBAN suizo: exactamente 21 caracteres, comenzando con CH, seguido de dos dígitos de control y el número de cuenta bancaria de 17 dígitos. Ejemplo: CH0200700110003765824. El estándar QR suizo también admite QR-IBAN (que comienza con CH y utilizando el rango 3000 a 3199 para el identificador bancario). Un IBAN no válido o que no sea suizo provoca un error de validación de la API de PDF4me antes de que se genere cualquier PDF.

¿Por qué el flujo de trabajo B requiere la dirección completa del acreedor, pero el flujo de trabajo A no?

Cuando utilice el tipo de datos de entrada Datos binarios (Flujo de trabajo A), PDF4me agrega el comprobante QR a un PDF existente y el diseño tiene contexto visual del documento fuente. La dirección del acreedor es opcional porque la sección del comprobante QR se agrega, no se genera desde cero. Cuando utiliza el tipo de datos de entrada Ninguno (Flujo de trabajo B), PDF4me genera el diseño completo del documento desde cero. El estándar suizo QR exige que una factura QR independiente incluya la dirección completa del acreedor (calle, número de edificio, código postal, ciudad) en los datos del código QR para que los sistemas de pago puedan procesarla sin necesidad de ningún otro documento.

¿Puedo usar datos de pago dinámicos de una base de datos o formulario en lugar de valores codificados?

Sí. En n8n, cualquier campo del nodo PDF4me admite expresiones. Asigne los campos Importe, IBAN, Nombre del acreedor y Ciudad desde un nodo anterior, como una consulta de PostgreSQL, un registro de Airtable, una fila de Google Sheets, un envío de formulario mediante el activador de formulario de n8n o una carga útil de webhook. Cada ejecución genera una factura QR única para el artículo actual sin necesidad de editar manualmente el flujo de trabajo. Este es el método recomendado para la automatización de la facturación en producción.

El nodo PDF4me devuelve un error. ¿Qué debo comprobar primero?

Comprueba tres cosas en orden. Primero, confirme que su clave API está activa en dev.pdf4me.com y tu cuenta tiene créditos. SegundoPara el flujo de trabajo B, verifique que los cuatro campos de dirección del acreedor (Calle, Número de edificio, Código postal, Ciudad) estén completos cuando el tipo de dirección del acreedor sea Estructurado. Si falta alguno, se producirá un error de validación. TerceroPara el flujo de trabajo A, confirme que el paso de descarga de Dropbox se completó correctamente y que el nombre de la propiedad binaria en el nodo PDF4me coincide con el nombre del campo establecido en el nodo Descarga (ambos deben ser datos).


Solución de problemas

Campo binario no encontrado al cargar.

El nodo Carga de Dropbox busca un campo llamado datos Por defecto, si el nodo Crear factura SwissQR utiliza un nombre de campo binario de salida diferente, actualice el campo binario de entrada en el nodo Cargar para que coincida. Mantenga el mismo nombre de campo en todos los nodos para evitar este problema.

Error de validación de la factura QR suiza (IBAN o dirección no válidos)

El IBAN debe ser un IBAN suizo válido que comience con CH (21 caracteres). Para el flujo de trabajo B, los cuatro campos de dirección del acreedor (Calle, Número de edificio, Código postal, Ciudad) deben completarse cuando el tipo de dirección del acreedor sea Estructurado. Si falta alguno de ellos, se producirá un error de validación.

Archivo de Dropbox no encontrado (Flujo de trabajo A)

Verifique la ruta del archivo en el nodo de descarga. Las rutas de Dropbox distinguen entre mayúsculas y minúsculas en algunas cuentas. Abra su Dropbox y copie la ruta exacta, incluyendo los nombres de las carpetas y la extensión del archivo. Si el archivo está dentro de una subcarpeta, la ruta debe incluir la jerarquía completa de carpetas, por ejemplo: /Datos del blog/SwissQR/Test Debt AG.pdf.

Errores de clave API o de crédito de PDF4me

Ver Solución de problemas de PDF4me para obtener instrucciones sobre cómo verificar su clave API, comprobar los créditos restantes y volver a conectar la credencial en n8n.


¿Qué probar a continuación?

Opcional: cambie el gatillo. Reemplace el gatillo manual por uno Cronograma para las ejecuciones de facturación mensuales, un Webhook para activarse al crearse una solicitud de pago, o Dropbox en el archivo creado para procesar automáticamente los nuevos archivos PDF a medida que llegan.