O que é e por que usar
Gerar PDFs com QR codes embutidos é uma necessidade frequente em operações que envolvem rastreamento, validação de documentos ou distribuição de conteúdo digital. Em vez de criar manualmente cada PDF e adicionar QR codes um a um, você pode automatizar esse processo com o n8n, economizando horas de trabalho repetitivo.
O QR code em um PDF pode conter desde um link para um site, até dados de autenticação, identificação de pedidos, ou informações de contato. Quando combinado com automação, você pode gerar centenas de PDFs personalizados em minutos, cada um com seu próprio QR code único, sem intervenção manual.
Esse tipo de automação é particularmente útil em cenários como emissão de certificados, criação de crachás para eventos, geração de faturas com link de pagamento, ou produção de materiais de marketing com URLs de rastreamento individuais.
Pré-requisitos
- Conta no n8n (self-hosted ou n8n.cloud)
- Chave de API do QR Code Generator ou acesso a serviço de QR code gratuito (ex: qrserver.com)
- Ferramenta para gerar PDFs (recomendamos PdfMonkey ou Jinja com conversão via API)
- Conhecimento básico de JSON e estrutura de dados
- Planilha ou fonte de dados com as informações que serão inseridas nos PDFs (ex: Google Sheets, Airtable, ou banco de dados)
Exemplo Prático: Geração automática de certificados de participação
Cenário concreto: Imagine que você organizou um webinar com 200 participantes e precisa emitir certificados de participação personalizados. Cada certificado deve conter o nome do participante, a data do evento e um QR code que direciona para uma página de verificação do certificado.
O que será automatizado: O workflow do n8n irá ler uma planilha do Google Sheets com os dados dos participantes, gerar um QR code único para cada um (contendo um link de verificação), e criar um PDF personalizado com todas essas informações. Ao final, os PDFs serão salvos em uma pasta do Google Drive e um email será enviado para cada participante com seu certificado anexado.

Resultado esperado: 200 PDFs gerados em aproximadamente 5 minutos, cada um com nome correto, data do evento e QR code funcional. Sem trabalho manual, sem erros de digitação, sem repetição de tarefas.
Configuração Passo a Passo
Passo 1: Preparar a fonte de dados
Crie uma planilha no Google Sheets com as seguintes colunas:
- nome – Nome completo do participante
- email – Email para envio do certificado
- data_evento – Data do evento (formato: YYYY-MM-DD)
- id_verificacao – Identificador único para o QR code (ex: CERT-001, CERT-002)
Passo 2: Configurar o nó de entrada (Trigger)
Adicione um nó Google Sheets com o modo de operação “Get Many Rows”. Configure:
- Authentication: Google OAuth2
- Document ID: ID da sua planilha
- Sheet Name: Nome da aba (ex: “Participantes”)
- Options: Marque “Return All” para pegar todos os registros
Passo 3: Gerar QR codes únicos
Adicione um nó HTTP Request para gerar os QR codes. Configure:
- Method: GET
- URL:
https://api.qrserver.com/v1/create-qr-code/ - Parameters:
- data:
https://seusite.com/verificar/{{ $json.id_verificacao }} - size:
200x200 - format:
png
- data:
- Options: Marque “Response Format” como “File” para receber a imagem binária
Nota: Se você tiver uma chave de API de um serviço pago, pode usar endpoints mais robustos. O qrserver.com é gratuito e funciona bem para até 1000 requisições por dia.
Passo 4: Processar a imagem do QR code
Adicione um nó Set para estruturar os dados que serão enviados ao gerador de PDF:

{
"nome": "{{ $json.nome }}",
"email": "{{ $json.email }}",
"data_evento": "{{ $json.data_evento }}",
"qr_code_base64": "{{ $json.data | toBase64 }}",
"id_verificacao": "{{ $json.id_verificacao }}"
}
Passo 5: Gerar o PDF
Adicione um nó HTTP Request para enviar os dados ao serviço de geração de PDF (exemplo com PdfMonkey):
- Method: POST
- URL:
https://api.pdfmonkey.io/api/v1/documents - Headers:
- Authorization: Bearer SUA_CHAVE_API
- Content-Type: application/json
- Body (JSON):
{
"document": {
"document_template_id": "ID_DO_SEU_TEMPLATE",
"payload": {
"nome": "{{ $json.nome }}",
"data_evento": "{{ $json.data_evento }}",
"qr_code": "{{ $json.qr_code_base64 }}",
"id_verificacao": "{{ $json.id_verificacao }}"
}
}
}
Passo 6: Salvar o PDF e enviar por email
Adicione um nó Google Drive para salvar o PDF gerado:
- Operation: Upload
- Name:
certificado_{{ $json.id_verificacao }}.pdf - Parent Folder: ID da pasta no Google Drive
- Binary Data: Selecione o campo binário retornado pelo serviço de PDF
Em seguida, adicione um nó Email (SMTP ou Gmail) para enviar o certificado:
- To:
{{ $json.email }} - Subject: Seu certificado de participação
- Body: Olá {{ $json.nome }}, segue seu certificado do evento realizado em {{ $json.data_evento }}.
- Attachments: Selecione o PDF salvo no Google Drive (ou use o binário diretamente)
Passo 7: Loop e finalização
Conecte todos os nós em sequência. O nó inicial do Google Sheets já irá iterar sobre cada linha, então não é necessário adicionar um nó de loop separado. Ao final, você pode adicionar um nó NoOp apenas para indicar o fim do fluxo.
Dicas e Variações
- Use templates HTML para PDFs mais bonitos: Em vez de serviços pagos, você pode usar o nó HTML para criar um template com CSS e convertê-lo para PDF usando o nó HTML to PDF (biblioteca puppeteer). O QR code pode ser inserido como uma tag
<img>com o base64. - Adicione validação de QR code: Crie uma página simples que recebe o ID de verificação via URL e consulta um banco de dados para confirmar se o certificado é válido. Isso agrega valor ao seu sistema.
- Use Webhook para acionamento sob demanda: Em vez de processar uma planilha inteira, configure um webhook que recebe dados de um formulário (ex: Typeform) e gera o PDF individualmente.
- Compacte múltiplos PDFs em um ZIP: Se precisar enviar lotes de certificados para um coordenador, adicione um nó que agrupa todos os PDFs em um arquivo ZIP antes do envio.
- Monitore com logs: Adicione um nó Slack ou Telegram para enviar notificações a cada PDF gerado ou em caso de erro.
Erros Comuns e Como Evitá-los
- QR code muito pequeno ou ilegível: Use tamanho mínimo de 200×200 pixels. QR codes menores podem não ser escaneáveis por todos os leitores.
- Timeout na geração de múltiplos PDFs: Serviços gratuitos como qrserver.com podem ter limite de requisições. Insira um nó Wait de 500ms entre cada requisição para evitar bloqueio.
- Formato de data inconsistente: Padronize a data no template do PDF. Use
dateTimedo n8n para converter para o formato desejado (ex:{{ $json.data_evento | dateTime("DD/MM/YYYY") }}). - QR code quebrado no PDF: Certifique-se de que a imagem do QR code está sendo passada como base64 sem quebras de linha. Use o filtro
toBase64do n8n para garantir. - Email marcado como spam: Configure corretamente o SPF, DKIM e DMARC do seu domínio. Para testes, use o nó Gmail que já tem boa reputação.
Próximos Passos
- Implemente o workflow hoje mesmo: Crie uma planilha de teste com 3 participantes e execute o fluxo para validar cada etapa.
- Personalize o template do PDF: Se estiver usando PdfMonkey ou HTML to PDF, crie um design profissional com logo, cores da marca e layout limpo.
- Adicione um sistema de verificação online: Crie uma página web simples que aceita o ID do QR code e exibe os dados do certificado. Pode ser uma planilha pública do Google Sheets ou um banco de dados.
- Expanda para outros casos de uso: O mesmo workflow pode ser adaptado para gerar faturas, crachás, convites, relatórios personalizados ou qualquer documento que precise de identificação única.
- Compartilhe seu workflow: Exporte o JSON do seu workflow e compartilhe com a comunidade n8n no GitHub ou no fórum oficial. Isso ajuda outros usuários e você pode receber feedback para melhorar.
Lembre-se: a automação de PDFs com QR code não é apenas sobre economia de tempo, mas sobre consistência e escalabilidade. Um workflow bem configurado hoje pode gerar milhares de documentos amanhã sem qualquer ajuste adicional.
Gostou do conteúdo? Inscreva-se para receber as novidades:


Comments are closed