Gere convites personalizados e combine-os em um único PDF no Power Automate: um fluxo de trabalho de 7 etapas do Dropbox

A parte mais difícil do envio de correspondências em massa não é escrever a carta, é costurando as cópias personalizadas juntas Assim, os departamentos de finanças, RH ou operações recebem um único PDF limpo em vez de cinquenta anexos. Este passo a passo constrói o padrão exato em Power Automate com PDF4me Gerar Documentos (Múltiplos), Mesclar vários arquivos PDF, Dropboxe uma única ação "Aplicar a cada loop". Sete ações de fluxo. Um modelo DOCX. Uma matriz JSON de destinatários. Do outro lado, sai um PDF consolidado, uma página por destinatário, nomeado e carregado automaticamente de volta para o Dropbox.
Duas etapas do Dropbox estruturam o fluxo. A opção "Gerar Documentos (Múltiplos)" do PDF4me cria um PDF personalizado para cada destinatário. Um loop "Aplicar a cada" envolve todos os documentos. arquivo de fluxo em base64ParaBinário(...) e o armazena em uma variável de matriz. A função "Mesclar vários arquivos PDF" do PDF4me une a matriz em um único PDF consolidado. Dropbox Criar arquivo escreve de volta. O fluxo é executado em menos de um minuto em um lote com dois destinatários e escala linearmente. Nenhuma expressão personalizada além da que já está definida. base64ParaBinário chamar.
Perguntas e respostas baseadas no "porquê".
Por que gerar documentos (múltiplos) em vez de (único)? A variante Single recebe um registro e gera um PDF. Para produzir N PDFs, você precisaria chamá-la N vezes, cada uma adicionando um evento de faturamento e uma requisição de ida e volta à rede. A variante Multiple recebe todo o array JSON em uma única chamada e retorna os N PDFs juntos. corpo/documentos de saídaUma chamada, um evento de faturamento, lote completo.
Por que usar uma variável de matriz com a opção "Aplicar a cada elemento"? A opção Gerar Documentos (Múltiplos) emite cada PDF como uma string base64 em arquivo de fluxoA função `Mesclar vários arquivos PDF` requer uma coleção de arquivos binários. O loop `Aplicar a cada` faz a ponte entre as duas etapas: converte cada string base64 em um arquivo binário. base64ParaBinário(...) e atribua-a a uma variável de matriz chamada mesclar arquivosApós o loop, o array é a coleção que a ação de mesclagem espera.
Por que usar o formato DOCX como modelo em vez de PDF? Tokens de mesclagem DOCX (<<[Nome]>>, <<[HC_WoM_Date]>>Os campos de formulário (formulários) ficam no corpo do texto, onde o mecanismo do PDF4me os lê diretamente. Os modelos de PDF exigem um esquema de campos de formulário pré-definido, o que é um exagero para uma carta. O formato DOCX também é o mesmo para o qual o Word, o Office 365 e o Google Docs já exportam, permitindo que os autores editem o modelo sem sair de sua ferramenta de escrita.
Por que mesclar tudo em um único PDF? A revisão de conformidade, a impressão em lote, os registros de auditoria de assinaturas e o arquivamento posterior preferem um único PDF consolidado em vez de vários anexos. Se precisar recuperar os arquivos individuais, basta enviá-los. Dividir PDF por número de páginas = 1 Ação realizada antes da etapa 7, e você terá o melhor dos dois mundos sem precisar reconstruir o restante do fluxo.
O que você receberá
Entrada: Um modelo DOCX com <<[merge_token]>> espaços reservados em /blog data/merge blog template/template.docx, além de uma matriz JSON de destinatários colada na ação Gerar Documentos (Múltiplos). Saída: Um único PDF chamado Merged_files.pdf carregado para /blog data/merge blog template/output, com uma página personalizada por destinatário na mesma ordem do array JSON. O modelo permanece intacto em sua pasta de origem, portanto, novas execuções são idempotentes.
Do que você precisa
- Power Automate. Abra o Power AutomateQualquer plano com conectores premium (PDF4me Connect é premium).
- Chave da API do PDF4me. Obtenha sua chave de APIConecte-o na primeira vez que adicionar uma ação do PDF4me.
- DropboxOrigem do modelo, destino do PDF mesclado. SharePoint, OneDrive e Google Drive funcionam da mesma forma com seus respectivos conectores.
- Um modelo DOCX com tokens de mesclagemUse a sintaxe de colchetes angulares duplos (
<<[Nome do Campo]>>O passo a passo usamodelo.docx, você pode Baixe o modelo exato usado neste passo a passo. e arraste para o Dropbox para espelhar todas as capturas de tela. - Uma matriz JSON de destinatáriosUm objeto por destinatário, com chaves que correspondem exatamente aos tokens do modelo. Baixe o exemplo JSON..
Primeiro, baixe os arquivos de exemplo. Derrubar Modelo.docx em /dados do blog/mesclar modelo de blog/ Salve o arquivo JSON no seu Dropbox e mantenha-o em um bloco de notas. Cada valor da captura de tela abaixo corresponderá ao que você vê no seu próprio fluxo.
O Fluxo em Resumo
- Acionar um fluxo manualmente (acionar).
- Dropbox: Obtenha o conteúdo do arquivo usando o caminho.. Lê
template.docxdo Dropbox. - PDF4me: Gerar Documentos (Múltiplos)Modelo mais matriz JSON de destinatários de entrada, matriz de PDFs personalizados de saída.
- Inicializar variável chamado
mergefiles(Variedade). - Aplicar a cada sobre
body/outputDocuments, com Adicionar à variável de matriz usandobase64ToBinary(...)dentro. - PDF4me: Mescle vários arquivos PDF em um único arquivo PDF.Matriz de binários de entrada, um PDF de saída.
- Dropbox: Criar arquivo. Escreve
Merged_files.pdfVoltar ao Dropbox.
Visão geral completa do fluxo

Sete ações. Cada cartão exibe uma marca de seleção verde quando configurado. O PDF4me aparece duas vezes no meio: uma para gerar e outra para mesclar.
Etapa 0: O Modelo DOCX
Antes de qualquer fluxo ser executado, o modelo precisa dos tokens de mesclagem corretos. Cada um <<[FieldName]>> O marcador de posição é substituído uma vez por destinatário. A ortografia e o uso de maiúsculas e minúsculas devem corresponder exatamente às chaves JSON.
Pré-visualização do modelo

O formato DOCX utiliza a sintaxe de colchetes angulares duplos. Sem caracteres especiais, sem XML, apenas marcadores literais que o mecanismo do PDF4me lê diretamente.
Etapa 1: Acionar um fluxo manualmente
Fluxo até o momento: Apenas acione.
- Em Power Automate clique Criar, escolher fluxo de nuvem instantâneo.
- Escolha Acionar um fluxo manualmente como gatilho.
- Dê um nome ao fluxo (por exemplo,
Bulk Invitation Mailout) e clique Criar. - Deixe os campos de gatilho em branco por enquanto. Gatilhos de produção reais (solicitação HTTP, atualização de lista do SharePoint, agendamento) serão inseridos aqui assim que o restante do fluxo estiver funcionando.
Etapa 2: Dropbox: Obter conteúdo do arquivo usando o caminho
Fluxo até o momento: Gatilho Plus Obter conteúdo do arquivo.
Lê o modelo DOCX no fluxo como bytes brutos para que a função Gerar Documentos possa consumi-lo diretamente.
- Clique + Novo passo, procurar Dropbox, escolha Obter o conteúdo do arquivo usando o caminho.
- Conectar Dropbox, caso ainda não o tenha feito.
- Configurar:
- Caminho do arquivo:
/blog data/merge blog template/template.docx - Inferir tipo de conteúdo:
Yes
- Caminho do arquivo:
- Salvar o fluxo e execute um teste rápido. A ação retorna um
File Contenttoken contendo o binário do modelo.
Obter configuração de conteúdo do arquivo

A opção "Inferir tipo de conteúdo: Sim" é o que permite que as ações subsequentes do PDF4me aceitem o arquivo como um DOCX real, e não como um fluxo genérico.
Etapa 3: PDF4me: Gerar documentos (múltiplos)
Fluxo até o momento: Acionar mais Obter conteúdo do arquivo mais Gerar documentos (múltiplos).
É aqui que um arquivo DOCX mais um array JSON se transformam em N PDFs personalizados em uma única chamada de ação.
- Clique + Novo passo, procurar PDF4me, escolha Gerar documentos (múltiplos).
- Conectar Conecte-se ao PDF4me com sua chave de API (somente na primeira vez).
- Configurar a metade superior da ação:
- Tipo de arquivo de modelo:
Docx - Nome do arquivo de modelo:
Test.docx(apenas o rótulo, não o caminho) - Dados do arquivo de modelo: escolha o Conteúdo do arquivo token da etapa 2
- Tipo de dados do documento:
Json
- Tipo de arquivo de modelo:
Etapa 3a: Início da ação

- Cole o array JSON em Texto dos dados do documentoO passo a passo utiliza dois destinatários (John Doe, X AB). Cada objeto possui as mesmas 19 chaves, e cada chave corresponde a um
<<[Token]>>no modelo DOCX.
Etapa 3b: A carga útil JSON

[
{
"DebtorNumber": "100001",
"Salutation": "Mr",
"Title": "Dr.",
"FirstName": "John",
"LastName": "Doe",
"CareOfAddress": "c/o Accounting Department",
"Address": "123 Main Street",
"POBox": "PO Box 123",
"PostalCode": "10001",
"City": "New York",
"Country": "United States",
"HC_Name": "ABC Business Association",
"SalutationText": "Dear Dr. Doe",
"HC_Phone": "+1-212-555-0100",
"HC_WoM_RegistrationDeadline": "2026-05-22",
"HC_Street": "500 Park Avenue",
"HC_PostalCodeCity": "10022 New York",
"HC_WoM_Date": "2026-05-29",
"HC_WoM_Time": "10:00"
},
{
"DebtorNumber": "100001",
"Salutation": "Mr",
"Title": "Dr.",
"FirstName": "X",
"LastName": "AB",
"CareOfAddress": "c/o Accounting Department",
"Address": "123 Main Street",
"POBox": "PO Box 123",
"PostalCode": "10001",
"City": "New York",
"Country": "United States",
"HC_Name": "ABC Business Association",
"SalutationText": "Dear Dr. Doe",
"HC_Phone": "+1-212-555-0100",
"HC_WoM_RegistrationDeadline": "2026-05-22",
"HC_Street": "500 Park Avenue",
"HC_PostalCodeCity": "10022 New York",
"HC_WoM_Date": "2026-05-29",
"HC_WoM_Time": "10:00"
}
]
- Configurar a metade inferior:
- Metadados de campoDeixe em branco (opcional, para formatação de moeda, data ou número)
- Tipo de saída:
PDF - Mantenha o modelo de PDF editável.:
No
Etapa 3c: Tipo de saída

- Salvar e testarA ação retorna
body/outputDocuments, uma matriz de objetos, um por destinatário. Cada objeto carrega umstreamFilePropriedade contendo o PDF personalizado como uma string base64.
Dica. Chaves JSON ausentes são exibidas como strings vazias no PDF de saída, e não como erros. Isso é tolerante a dados incompletos, mas também significa que erros de digitação passam despercebidos. Compare sua lista de tokens com as chaves JSON antes de publicar, pois ambas diferenciam maiúsculas de minúsculas.
Etapa 4: Inicializar arquivos de mesclagem de variáveis
Fluxo até o momento: Gatilho + Obter conteúdo do arquivo + Gerar documentos (múltiplos) + Inicializar variável.
A ação de mesclagem requer uma coleção de arquivos binários. Crie um array vazio para armazená-los.
- Clique + Novo passo, escolha Inicializar variável.
- Configurar:
- Nome:
mergefiles - Tipo:
Array - ValorDeixe em branco
- Nome:
Inicializar configuração de variáveis

A inicialização da variável sempre ocorre antes da primeira aplicação a cada variável que a necessita. O Power Automate impõe isso em tempo de design.
Etapa 5: Aplicar a cada variável e adicionar à matriz
Fluxo até o momento: Gatilho + Obter conteúdo do arquivo + Gerar documentos (múltiplos) + Inicializar variável + Aplicar a cada.
Percorra os PDFs e converta cada um em um buffer binário.
Etapa 5a: Aplicar a cada um (escolha a fonte)
- Clique + Novo passo, escolha Aplicar a cada.
- Configurar:
- Selecione uma saída das etapas anteriores.: escolha
body/outputDocumentsda ação Gerar Documentos (Múltiplos)
- Selecione uma saída das etapas anteriores.: escolha

Etapa 5b: Adicionar à variável de matriz (dentro do loop)
- Dentro do clique em Aplicar a cada contêiner Adicionar uma ação, escolha Adicionar à variável de matriz.
- Configurar:
- Nome:
mergefiles - Valor (expressão, clique)
fx):base64ToBinary(items('Apply_to_each')?['streamFile'])
- Nome:

Essa é a frase que une tudo. Gerar Documentos (Múltiplos) emite strings base64 em arquivo de fluxoA fusão de vários arquivos PDF requer buffers binários. base64ParaBinário(...) é a ponte. Sem ela, a ação de mesclagem apresenta o erro "conteúdo inválido".
Etapa 6: PDF4me: Mesclar vários arquivos PDF em um único arquivo PDF
Fluxo até o momento: Gatilho + Obter conteúdo do arquivo + Gerar documentos (múltiplos) + Inicializar variável + Aplicar a cada + Mesclar vários PDFs.
Agora, todo o conjunto de dados é inserido e um único PDF é gerado.
- Abaixo, clique em Aplicar a cada loop. + Novo passo, procurar PDF4me, escolha Mesclar vários arquivos PDF em um único arquivo PDF..
- Configurar:
- Corpo/Conteúdo do documento: escolha o
mergefilestoken variável - Nome do arquivo de saída:
Test.pdf
- Corpo/Conteúdo do documento: escolha o
Configuração da ação de mesclagem

- A ação concatena os PDFs em ordem do array, que é a ordem do JSON. Se o seu consumidor subsequente espera uma ordenação específica (alfabética, por número do devedor, por região), ordene o JSON antes da etapa 3 e o restante do fluxo preservará essa ordem.
Dica. Precisa de um nome de arquivo de saída diferente a cada execução? Crie-o dinamicamente com concat('Convites_', utcNow('yyyy-MM-dd'), '.pdf') no campo Nome do Arquivo de Saída. O PDF mesclado é gerado com um carimbo de data e hora, e as novas execuções não se sobrescrevem.
Etapa 7: Dropbox: Criar arquivo
Fluxo até o momento: Gatilho + Obter conteúdo do arquivo + Gerar documentos (múltiplos) + Inicializar variável + Aplicar a cada + Mesclar vários PDFs + Criar arquivo.
Envie o PDF mesclado de volta para o Dropbox.
- Clique + Novo passo, escolha Dropbox, Criar arquivo.
- Configurar:
- Caminho da pasta:
/blog data/merge blog template/output - Nome do arquivo:
Merged_files.pdf - Conteúdo do arquivo: escolha o Conteúdo do arquivo Token da etapa 6 (Mesclar vários PDFs)
- Caminho da pasta:
- Salvar o fluxo.
Criar arquivo de configuração

Execute o fluxo e verifique.
- Clique Teste No canto superior direito, escolha Manualmente, clique Teste, então Fluxo de execução.
- O painel de execução do fluxo fica verde a cada ação. A geração de documentos (múltiplos) geralmente leva um segundo por registro em um modelo de página única. A mesclagem de vários PDFs adiciona mais um ou dois segundos para dois destinatários.
- Abra o Dropbox em
/blog data/merge blog template/output/O arquivoMerged_files.pdfexiste.
A saída, lado a lado


O que você construiu exatamente? Um sistema automatizado de envio de e-mails em massa que transforma uma única carta em formato DOCX e uma lista JSON de destinatários em um único PDF consolidado, pronto para impressão, assinatura, arquivamento ou anexação. O mesmo padrão funciona para dois ou dois mil destinatários sem alterar nenhum valor de campo. O mesmo padrão funciona no Make (Iterator mais o módulo PDF4me Merge) e no Zapier (Looping by Zapier mais a ação PDF4me Merge).
Variações comuns que você pode adicionar sem reconstruir
Arquivos mesclados.pdf e o e-mail é enviado diretamente para os departamentos de finanças, operações ou impressão, sem a necessidade de passar pelo Dropbox.PDF/A-2bA cópia do Dropbox fica então pronta para arquivamento e em conformidade com a norma ISO 19005.Solução de problemas
O Valor A expressão em Adicionar à matriz não está envolvida em base64ParaBinário(...)Sem a conversão, a ação de mesclagem recebe strings base64 em vez de buffers binários. Reabra "Adicionar à matriz", mude para o editor de expressões e cole. base64ToBinary(items('Apply_to_each')?['streamFile']) literalmente.
Uma chave JSON não corresponde a um token de modelo. A opção "Gerar Documentos (Múltiplos)" substitui as chaves ausentes por strings vazias, o que é tolerante, mas permite que erros de digitação passem despercebidos silenciosamente. Compare sua lista de tokens DOCX com as chaves JSON; ambas diferenciam maiúsculas de minúsculas.
O loop "Aplicar a cada" está iterando a fonte errada. Abra o loop e confirme. Selecione uma saída das etapas anteriores. aponta para corpo/documentos de saída (a matriz), não uma única propriedade de um registro.
A ordem das páginas corresponde à ordem do JSON. Ordene a matriz JSON antes de gerar os documentos (múltiplos) usando um... Selecione ou Compor ação para que os destinatários cheguem na ordem desejada.
Próximos passos
O mesmo padrão de sete etapas (gatilho, busca de modelo, geração de lote, loop para matriz, mesclagem e salvamento) funciona para qualquer envio de e-mail personalizado em massa no Power Automate. Envie um e os próximos custarão quase nada.